Encuentra paquetes pip desactualizados / actualizables


103

pip freeze me muestra los paquetes instalados, pero ¿cómo verifico contra pypi cuáles están desactualizados?

Respuestas:


159

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.



6

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.txtarchivo 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 --prereleaseargumento a su comando.

Divulgación completa: escribí este paquete.


1

¿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
...

1
Parece que este paquete se ha trasladado ahora a github.com/jgonggrijp/pip-review
Droplet

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.