En este tutorial vamos a ver una forma muy cómoda para saber si tus aplicaciones JavaScript con dependencias NPM están al día.
Índice de contenidos
1. Entorno
Este tutorial está escrito usando el siguiente entorno:
- Hardware: Portátil Mac Book Pro 15″ (2,3 Ghz Intel Core i7, 16 GB DDR3)
- Sistema Operativo: Mac OS X El Capitan
2. Introducción
Actualmente cuando trabajas en proyectos con JavaScript te darás cuenta de la cantidad ingente de dependencias que tiene tu proyecto tanto de producción como de desarrollo, y claro, cuando una de ellas se queda sin soporte, vienen los problemas.
Casi seguro que a estas alturas tu gestor de dependencias es NPM, así que tengo buenas noticias, ya que existe una herramienta online que te informa de la versión actual de todas las dependencias NPM que tiene tu proyecto, cuál es la última versión estable de esa dependencia y si esa versión que estás utilizando ha dejado de tener soporte.
Además te ofrece un pequeño «badget», es decir, una imagen que puedes poner en cualquier sitio web y que te informa en todo momento del estado de tus dependencias.
La herramienta en cuestión no es que tenga un nombre muy descriptivo, se llama David y esta es su URL.
3. Vamos al lío
Si visitamos la página web, lo primero que nos llama la atención es que la herramienta se integra con GitHub, así que si no tienes una cuenta de Github (que ya me extrañaría) es el momento de hacerte una.
El proceso es tan sencillo como hacer click en el enlace «Sign in» con el icono de GitHub.
Nos registramos con nuestras credenciales de GitHub y aceptamos los permisos solicitados.
Una vez registrados podemos acceder a la información de las dependencias de nuestros proyectos en GitHub simplemente accediendo con una URL donde el prefijo es la propia web de David, a lo que le sigue tu usuario de GitHub y el repositorio que quieras consultar. Ejemplo: https://david-dm/raguilera82/poc-cli y si todo es correcto verás una tabla con una información parecida a esta.
Como ves te divide las dependencias entre las que son de código de producción y las que sólo se utilizan para procesos de desarrollo.
Te lista todas las dependencias y, de cada una de ellas, te informa de la versión que tienes actualmente (required), la versión siguiente más estable (stable), la última versión aunque no sea estable y un código de color (status) donde verde significa que esa dependencia está al día, amarillo que no está en la última versión pero la versión que tienes sigue teniendo soporte y rojo que significa que la versión ya no tiene soporte, y deberías actualizarla cuanto antes.
Además, para no tener que estar pendiente de consultar esta tabla, la herramienta te ofrece un «badge» que puedes utilizar en el README del proyecto o en cualquier página HTML.
Para obtenerlo, simplemente pulsa sobre el icono que se muestra en la imagen y se abrirá una ventana modal con los distintos enlaces, en función del tipo de imagen que prefieras.
4. Conclusiones
Una herramienta muy sencilla pero que nos ofrece información muy importante sobre el estado de las dependencias NPM que estamos utilizando. Ya no hay excusas del tipo «es que no me enteré que la versión X de la dependencia Y ha dejado de tener soporte y la he liado parda en producción» 😉
Cualquier duda o sugerencia en la zona de comentarios.