Actualizar todos los paquetes con pip a la última versión

Cómo actualizar con pip todos los paquetes a la última versión
Share on facebook
Share on twitter
Share on linkedin

El mantenimiento de nuestras aplicaciones es algo que no debemos dejar pasar. Mejoras, corrección de errores, nuevas funcionalidades, actualizar paquetes de terceros… Es en este último punto en el que me voy a centrar en este post. Las librerías que usamos de terceros también tienen su propio mantenimiento y hoja de ruta y, antes o después, será necesario que tengamos que actualizar la versión que utilicemos de alguna de ellas.

Si usas pip como herramienta de gestión de paquetes, sigue leyendo pues esto te interesa.

Actualizar un paquete con pip a la última versión

Para actualizar un paquete concreto con pip a la última versión, ejecuta el siguiente comando:

$> pip install -U <nombre del paquete>

Veamos un ejemplo para actualizar Flask:

$> pip install -U flask

Por defecto, pip actualizará este paquete pero también sus dependencias si fuera necesario.

Actualizar un paquete pero no sus dependencias

Si no quisiéramos actualizar las dependencias de un paquete cuando actualizamos este, tendríamos que ejecutar el mismo comando pero con el flag --no-deps:

$> pip install -U --no-deps flask

Actualizar todos los paquetes con pip

Por defecto, pip no dispone de ninguna opción para actualizar a la vez todas las dependencias de nuestra aplicación. Por seguridad no está mal. Actualizar sin control todos los paquetes de los que depende nuestro proyecto puede acabar en el caos más absoluto 😂 Es posible que nos lleve un buen rato probar todo y confirmar que la aplicación sigue funcionando correctamente.

Sin embargo, existe una forma para actualizar todas las dependencias de nuestro proyecto. Para ello, ejecuta el siguiente comando:

$> pip list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 pip install -U

Con esto se actualizarán a la última versión todos los paquetes de terceros junto con sus dependencias. Pero recuerda: ¡Un gran poder conlleva una gran responsabilidad!, jaja.

¿Me ayudas a compartir el post? 🤗🤟🏻

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn

También te puede interesar

* Te informo de que los datos de carácter personal que proporciones al comentar serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es moderar los comentarios. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en Disqus (disqus.com), mi sistema de comentarios, que está acogido al acuerdo de seguridad EU-US Privacy. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLÍTICA DE PRIVACIDAD.

Sobre j2logo

j2logo

Últimos posts

¿Quieres ser un auténtico Pythonista? 🐍

Recibe de vez en cuando trucos, scripts y tutoriales Python en español para dominar el lenguaje. No es SPAM. Date de baja cuando quieras.

* Te informo de que los datos de carácter personal que proporciones serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es el envío de trucos, scripts, mis publicaciones así como correos comerciales. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en mi plataforma de email marketing MailRelay que garantiza las medidas de seguridad encaminadas a proteger la privacidad. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLITICA DE PRIVACIDAD

Tutoriales Python en español

👉🏻 🐍 Tutoriales Python. ¿Por qué Python?