Respuestas:
Desde la versión 1.3, pip presenta un nuevo comando:
$ pip list --outdated
requests (Current: 1.1.0 Latest: 1.2.0)
Vea esta publicación para más información.
Use este tenedor de pepita:
https://github.com/dgladkov/pip
Que hace exactamente lo que quieres usando este comando:
$ pip list --outdated
La cosa es que nunca actualizo todos los paquetes . Actualizo solo lo que necesito, porque el proyecto puede romperse .
Debido a que no había una manera fácil de actualizar paquete por paquete y actualizar el archivo require.txt, escribí este pip-Updater que también actualiza las versiones en su requirements.txt
archivo para los paquetes elegidos (o todos los paquetes).
Instalación
pip install pip-upgrader
Uso
Active su virtualenv (importante, porque también instalará las nuevas versiones de paquetes actualizados en virtualenv actual).
cd
en su directorio de proyecto, luego ejecute:
pip-upgrade
Uso avanzado
Si los requisitos se colocan en una ubicación no estándar, envíelos como argumentos:
pip-upgrade path/to/requirements.txt
Si ya sabe qué paquete desea actualizar, simplemente envíelos como argumentos:
pip-upgrade -p django -p celery -p dateutil
Si necesita actualizar a la versión anterior al lanzamiento / posterior al lanzamiento, agregue un --prerelease
argumento a su comando.
Divulgación completa: escribí este paquete.
¿Quizás las herramientas pip, disponibles en https://github.com/nvie/pip-tools , podrían ayudarlo a lograr lo que desea?
Un ejemplo de 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
...
Similar a pip list --outdated
pero actualiza un requirements.txt
archivo:
pur -r requirements.txt
PyPi: https://pypi.python.org/pypi/pur
GitHub: https://github.com/alanhamlett/pip-update-requirements