NPM: instalar una versión específica de un paquete

N

NPM, o Node Package Manager, es una poderosa herramienta que le permite administrar fácilmente las dependencias, ejecutar scripts y organizar los metadatos del proyecto. Sin embargo, su propósito principal es ayudarlo a descargar e instalar paquetes de Node desde su repositorio en su proyecto.

La descarga e instalación de un paquete se realiza mediante NPM install mando:

$ npm install express

+ [email protected]
added 50 packages from 37 contributors and audited 126 packages in 3.262s
found 0 vulnerabilities

Cuando ejecuta el install comando como este, por defecto recupera la última versión del paquete especificado, que en este caso es v4.17.1 (en el momento de escribir este artículo).

Pero, ¿y si necesitamos una versión diferente? Tal vez esta última versión rompa una característica que necesitamos, o tal vez tenga una vulnerabilidad de seguridad que el mantenedor aún no ha solucionado. En casos como este, probablemente querrá instalar una versión específica del paquete que sepa que funciona o que sepa que es “seguro”.

Para hacer esto, podemos especificar la versión usando la sintaxis npm install [package]@[version]. Continuando con nuestro ejemplo anterior, ejecutaríamos algo como esto:

$ npm install [email protected]

+ [email protected]
added 48 packages from 36 contributors and audited 121 packages in 2.986s
found 0 vulnerabilities

Como puede ver, NPM ha instalado el paquete que especificamos.

Con NPM también tenemos otras opciones para especificar la versión de un paquete. Usando un signo de intercalación (^) o una tilde (~) podemos especificar la última versión menor o parche, respectivamente. De esta manera, puede especificar una versión de paquete compatible, pero aún obtener la última.

Entonces, por ejemplo, si desea usar Express versión 4.16, pero la versión del parche no es importante, puede usar la tilde para decirle a NPM que recupere la última versión del parche:

$ npm install [email protected]~4.16.1

+ [email protected]
added 48 packages from 36 contributors and audited 121 packages in 3.02s
found 0 vulnerabilities

Dado que le pusimos el prefijo a la versión ~, NPM recuperó la última versión del parche bajo la versión menor 4.16, que resultó ser 4.16.4.

Esto es bueno para cuando no necesita una versión muy específica, pero desea mantener sus dependencias actualizadas con los últimos parches y correcciones de vulnerabilidades de seguridad.

Para obtener más información, consulte Caret vs Tilde en package.json.

About the author

Ramiro de la Vega

Bienvenido a Pharos.sh

Soy Ramiro de la Vega, Estadounidense con raíces Españolas. Empecé a programar hace casi 20 años cuando era muy jovencito.

Espero que en mi web encuentres la inspiración y ayuda que necesitas para adentrarte en el fantástico mundo de la programación y conseguir tus objetivos por difíciles que sean.

Add comment

Sobre mi

Últimos Post

Etiquetas

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con tus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, aceptas el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad