pip freeze me montre les paquets installés, mais comment puis-je vérifier quels sont ceux qui sont obsolètes avec pypi?
Depuis la version 1.3, pip propose une nouvelle commande:
$ pip list --outdated
requests (Current: 1.1.0 Latest: 1.2.0)
Voir cet article pour plus d'informations.
Utilisez cette pipette:
https://github.com/dgladkov/pip
Ce qui fait exactement ce que vous voulez en utilisant cette commande:
$ pip list --outdated
La chose est, je ne met jamais à jour tous les paquets . Je ne mets à niveau que ce dont j'ai besoin, , car le projet peut échouer .
Comme il n’existait pas de moyen facile de mettre à jour chaque paquet et de mettre à jour le fichier requirements.txt, j’ai écrit ceci pip-upgrader qui met également à jour les versions de votre fichier requirements.txt
pour les packages choisis (ou tous les packages).
Installation
pip install pip-upgrader
Utilisation
Activez votre virtualenv (important, car il installera également les nouvelles versions des packages mis à niveau dans le virtualenv actuel).
cd
dans le répertoire de votre projet, puis exécutez:
pip-upgrade
Utilisation avancée
Si les exigences sont placées dans un emplacement non standard, envoyez-les sous forme d'arguments:
pip-upgrade path/to/requirements.txt
Si vous savez déjà quel paquet vous voulez mettre à jour, envoyez-les simplement comme arguments:
pip-upgrade -p Django -p celery -p dateutil
Si vous devez effectuer une mise à niveau vers une version préliminaire ou postérieure, ajoutez l'argument --prerelease
à votre commande.
Divulgation complète: j'ai écrit ce paquet.
Pip-tools, disponible sur https://github.com/nvie/pip-tools , pourrait vous aider à réaliser ce que vous voulez?
Un exemple tiré du fichier README:
$ pip-review --interactive
requests==0.14.0 available (you have 0.13.2)
Upgrade now? [Y]es, [N]o, [A]ll, [Q]uit y
...
redis==2.6.2 available (you have 2.4.9)
Upgrade now? [Y]es, [N]o, [A]ll, [Q]uit n
rq==0.3.2 available (you have 0.3.0)
Upgrade now? [Y]es, [N]o, [A]ll, [Q]uit y
...
Similaire à pip list --outdated
mais met à jour un fichier requirements.txt
:
pur -r requirements.txt
PyPi: https://pypi.python.org/pypi/pur
GitHub: https://github.com/alanhamlett/pip-update-requirements