Trabajar con varias versiones de Node a la vez

Publicado el 24 noviembre 2021 por Daniel Rodríguez @analyticslane

Si trabajas con Node desde hace tiempo es posible que, tras actualizar a la última versión del entorno, te encontrarás con problemas de incompatibilidad de algunos paquetes. Lo que obliga a volver a la versión anterior hasta que este se actualice y solucionen el problema. Algo que puede ser un incordio, especialmente si queremos trabajar con la última versión de Node. Para solucionar este problema y trabajar con varias versiones de Node a la vez podemos recurrir al paquete n con el que se puede cambiar rápidamente entre versiones.

Instalación del paquete

El paquete n está pensado para cambiar el entorno, por lo que es necesario instalar este de forma global. Nunca de forma local en un proyecto. Para lo que recurriremos, como es habitual, al comando npm con el parámetro -g escribiendo en la terminal

npm install n -g

Siendo necesario incluir sudo antes del comando en Linux y macOS.

Cambiar entre versiones de Node

Una vez instalado el paquete podremos cambiar rápidamente entre versiones de Node simplemente escribiendo n en la terminal. Una vez hecho esto nos saldrá un menú con todas las versiones instaladas y seleccionada aquella que está activa. Si no es esta la que queremos simplemente seleccionaremos otra.

Seleccionar una de las versione de Node instaladas en el sistema

Si es la primera vez que se lanza el comando generalmente solo se tendrá una versión instalada, aquella con la que se estaba trabajando. Para instalar una nueva solamente se tendrá que ejecutar n seguido del nombre de la versión. Existen algunos atajos como lts para la última versión con soporte de largo plazo o latest para la última. Así para obtener la última versión con soporte de largo plazo hay que ejecutar

n lts

Aunque si necesitamos una versión en concreto se puede indicar la versión mayor y, opcionalmente, también la menor y el parche exacto que se desea. Así para obtener la version 16.10 solamente se tendrá que ejecutar

n 16.11

Eliminar una versión

Con el paso del tiempo puede que acabemos instalando en nuestro sistema decenas de versiones. Ocupando todas ellas espacio en el disco. Para eliminar las versiones que no se usan simplemente se debería escribir n seguro de rm y las versiones que no se deseen mantener. Por ejemplo, tras la instalación de la versión 16.11 se puede eliminar la 16.10 ejecutando el comando

n rm 16.10.0

Otra opción es usar el comando prune de n con el que se borraran todas las versiones menos la que esté en ese momento activa.

Conclusiones

En esta ocasión se ha visto un paquete gracias al cual podemos trabajar con varias versiones de Node a la vez. Algo que es útil cuando tenemos algún proyecto que depende de un paquete que es incompatible con las últimas versiones de Node.