• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad
    • Tiendas afiliadas
      • AliExpress
      • Amazon
      • Banggood
      • GeekBuying
      • Lenovo

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • Python
  • Pandas
  • NumPy
  • Matlab
  • Julia
  • JavaScript
  • Excel

Actualizar las dependencias de Node a la última versión de forma automática

noviembre 17, 2021 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 4 minutos

Resultado de ejecutar el comando ncu en el proyecto jslane a fecha de publicación

Al trabajar en un proyecto con Node generalmente se instala la última versión de los paquetes necesarios. A medida que pasa el tiempo van saliendo nuevas versiones de estos con nuevas funcionalidades, soluciones de errores y parches de seguridad. Pero, si no hacemos nada, las versiones del archivo package.json no se actualizan. Algo que, en el peor de los casos, puede exponer los desarrollos debido a fallos de seguridad conocidos que pueden ser explotados. Para solucionar este problema y actualizar las dependencias de Node a la última versión se puede recurrir al paquete npm-check-updates.

Instalación de npm-check-updates

El paquete npm-check-updates permite actualizar las dependencias de cualquier proyecto, por lo que es aconsejable instalarlo como una dependencia global, nunca como una dependencia de un proyecto. Para lo que, como es habitual, se usará el comando npm con la opción -g

npm install npm-check-updates -g

Comando que en el caso de Linux y macOS ha de venir precedido de sudo. Una vez hecho esto ya tendremos el paquete instalado y podremos acceder al mismo mediante el comando ncu.

Comprobando y actualizando las dependencias de un proyecto Node

Tras la instalación del paquete en nuestro sistema podemos ir a cualquier proyecto y ejecutar el comando ncu. Por ejemplo, podemos descargar el proyecto jslane (código que se puede descargar desde GitHub) para ver los paquetes que requieren actualización.

Publicidad


Resultado de ejecutar el comando ncu en el proyecto jslane a fecha de publicación
Resultado de ejecutar el comando ncu en el proyecto jslane a fecha de publicación (respecto a la versión de GutHub se ha actualizado la versión de chai para disponer de un ejemplo de cada tipo).

En este ejemplo, con la versión del proyecto a fecha de publicación, existen cinco paquetes que pueden ser actualizados. Indicando la versión actual y la última disponible. Empleando además un código de colores diferente para los parches (verde), las versiones menores (azul) y las mayores (rojo). Algo que ayuda a decir si actualizar o no en función de que la nueva versión pueda tener cambios que no sean compatibles (las versiones mayores).

Actualizar las versiones a la última

En la sección anterior se ha obtenido el listado de paquetes, pero no se ha modificado el listado de archivos package.json. Aunque la actualización se puede hacer manualmente, esto también lo puede hacer automáticamente el comando ncu. Facilitando de este modo las tareas de mantenimiento. En el caso de que queramos actualizar todas las dependencias simplemente hay que lanzar el comando con la opción -u

ncu -u

Pero, en el caso de que solamente se deseen instalar los parches o las versiones menores esto se puede indicar con el comando --target seguido de algunas de las opciones (patch, minor, o latest) con las que se indica el tipo de actualización. Por ejemplo, si queremos actualizar los paquetes a la última versión menor de la versión actual debemos escribir el comando

ncu -u --target minor
Actualización de los paquetes a la última versión menor de la versión instalada con ncu
Actualización de los paquetes a la última versión menor de la versión instalada con ncu

Finalmente, si se desea un mayor control sobre los paquetes a actualizar, es mejor usar el modo interactivo en el que preguntará uno a uno que paquetes se van a actualizar. Modo al que se accede mediante la opción -i.

Publicidad


ncu -i

Una vez hecho esto se actualizará la lista de dependencias en el archivo package.json, pero no los paquetes. Lo que se tiene que hacer mediante npm con el comando install

npm install

Actualizar los paquetes globales

También es posible actualizar el listado de paquetes globales. Lo que se puede hacer usando el parámetro -g en el comando ncu.

ncu -g

En el caso de que existan paquetes globales que requieran actualización ncu creará un comando con el que realizar la tarea. Solamente hay que copiar este y ejecutarlo en la terminal (precediendo este de sudo tanto en Linux como macOS).

Conclusiones

En esta entrada hemos visto un paquete de Node gracias al cual es posible actualizar las dependencias de Node a la última versión de forma automática. Algo que nos puede evitar problemas debido a fallos de seguridad conocidos de paquetes que pueden ser utilizados para atacar nuestros proyectos.

Publicidad


¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicaciones relacionadas

  • compass
    Creación de un proyecto TypeScript en Node (2º parte…
  • compass
    Creación de una librería TypeScript
  • computer
    Creación de una API REST con Express y TypeScript
  • compass
    Compilar con Webpack (4º parte - Creación de una…
  • JavaScript
    Pruebas unitarias en JavaScript (Creación de una…
  • laptop
    Creación de archivos Zip en Node

Publicado en: JavaScript Etiquetado como: Node

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

I accept the Terms and Conditions and the Privacy Policy

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Publicidad





Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Facebook
  • GitHub
  • Instagram
  • Pinterest
  • RSS
  • Twitter
  • Tumblr
  • YouTube

Publicidad

Entradas recientes

Tutorial básico de Traceroute

diciembre 8, 2023 Por Daniel Rodríguez

Usar el depurador de Visual Studio Code con Jest

diciembre 6, 2023 Por Daniel Rodríguez

Análisis de datos con GPT en Pandas

diciembre 4, 2023 Por Daniel Rodríguez

Publicidad

Es tendencia

  • Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas publicado el mayo 10, 2019 | en Python
  • Seleccionar filas y columnas en Pandas con iloc y loc publicado el junio 21, 2019 | en Python
  • Duplicado Eliminar registros duplicados en pandas publicado el junio 20, 2018 | en Python
  • Truco: Reproducir sonidos en Python publicado el febrero 28, 2022 | en Python
  • pandas Pandas: Contar los valores nulos en DataFrame publicado el agosto 12, 2021 | en Python

Publicidad

Lo mejor valorado

4.9 (22)

Seleccionar filas y columnas en Pandas con iloc y loc

4.7 (12)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.6 (15)

Archivos JSON con Python: lectura y escritura

4.5 (10)

Diferencias entre var y let en JavaScript

4.4 (13)

Ordenación de diccionarios en Python mediante clave o valor

Publicidad

Comentarios recientes

  • Anto en Rendimiento al iterar en JavaScript sobre un vector
  • Daniel Rodríguez en Creación de un certificado Let’s Encrypt en Windows con Win-Acme
  • Guillermo en Creación de un certificado Let’s Encrypt en Windows con Win-Acme
  • Daniel Rodríguez en ¿Cómo eliminar columnas y filas en un dataframe pandas?
  • Miguel en ¿Cómo eliminar columnas y filas en un dataframe pandas?

Publicidad

Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2023 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto