Étant donné requirements.txt
et un environnement virtualenv, quelle est la meilleure façon de vérifier à partir d'un script si les conditions sont remplies et éventuellement fournir des détails en cas de discordance?Comment comparer le fichier d'exigences et les modules Python réellement installés?
Pip modifie son API interne avec les versions majeures, donc j'ai vu des conseils pour ne pas utiliser sa méthode parse_requirements
.
Il existe un moyen de pkg_resources.require(dependencies)
, mais comment analyser le fichier des exigences avec tout son sens, comme les liens github, etc.?
Cela devrait être quelque chose de très simple, mais ne trouve pas de pointeurs.
MISE À JOUR: une solution par programme est nécessaire.
Si ces exigences peuvent être installées avec pip, vous pouvez essayer de les installer toutes et si l'utilisateur les a déjà installées, il recevra un message "Exigence déjà satisfaite" et continuera avec l'installation suivante. Vous pouvez aussi, à l'intérieur de votre code, attraper une dépendance manquante dans une instruction try-except et, en cas d'absence, demander à l'utilisateur s'il veut l'installer. – coder