Susto con Node.js y NPM

NPM – el negocio que hay detrás del software de administración de paquetes Node.js utilizado para modificar el código JavaScript y varios marcos relacionados – el jueves tuvo una actualización del código menos de 24 horas después de que se emitió porque el software estaba jugando con permisos de archivos de Linux.

El lanzamiento de NPM 5.7.0 el miércoles provocó informes de fallos de servidores, fallos de aplicaciones y otros comportamientos indeseables para los usuarios de algunas distribuciones de Linux.

El problema no fue particularmente generalizado. Para ser afectado -NPM le dijo a The Register- que los usuarios tenían que descargar el software usando el comando npm update npm -g en lugar del comando npm install npm -g más común.

Alrededor de 4,000 personas, o el 0.6 por ciento de las instalaciones, lo hicieron durante las 21 horas aproximadamente que la actualización parcial estuvo disponible.

Luego, los afectados tuvieron que ejecutar el comando de actualización con sudo, un subconjunto significativamente más pequeño del grupo susceptible.

No obstante, una publicación de  GitHub Issues hizo sonar todo como un desastre. El desarrollador Jared Tiala dio un puntapié inicial a la discusión al señalar que el problema “parece haber roto por completo mis permisos de sistema de archivos y me obligó a tener que corregir manualmente los permisos de archivos y carpetas importantes”.

Tiala identificó el problema para ejecutar el comando sudo como usuario no root.

NPM a través de Twitter reconoció el problema y señaló: “Hemos revertido un parche que podría causar cambios de propiedad en algunos archivos del sistema”.

En su publicación de blog del jueves, el código biz explicaba: “El parche original se agregó para aumentar la consistencia y confiabilidad de los métodos que utiliza npm para evitar escribir archivos como root en lugares que no debería, pero el cambio se aplicó en lugares que deberían haber usado mkdirp regular. Esta versión revierte ese parche “.

En una entrevista telefónica con The Register, Laurie Voss, COO y cofundadora de NPM, explicó que la intención con la revisión retirada era hacer que npm manejara los permisos de una manera más segura alejándose de mkdirp. Pero, dijo, hacerlo a lo largo de todo el código resultó no ser siempre apropiado.

mkdirp es una versión de Node.js del comando mkdir de Unix, que, con el distintivo -p, crea nuevos directorios principales necesarios.

La compañía con sede en Oakland insiste en que solo aquellos que participen en su sistema de lanzamiento escalonado recibirán el código con la etiqueta de distribución “siguiente”, que tiene la intención de evitar que errores como este afecten a todos.

Se pueden esperar errores de este tipo a partir del código de prelanzamiento, pero algunos usuarios del software afirman que no sabían que el lanzamiento era inestable. Supuestamente, se enviaron notificaciones por correo electrónico acerca de la actualización sin aclarar adecuadamente que el lanzamiento no se autorizó para el consumo público.

En la letanía de quejas que ensucian el hilo de Cuestiones de GitHub, abundan las dudas sobre la consistencia del mecanismo de distribución de la NGP. También hay una buena cantidad de culpa a los afectados por no conocer nada mejor.

“NPM tiene la intención de cambiar el comportamiento de la actualización npm en modo global para que sea menos confuso para los usuarios”, dijo Voss. “Es absolutamente cierto que el comportamiento de la actualización -g es poco conocida”.

Fuente

Comparte

(Artículo visitado 4 veces, 1 visitas hoy)

Responder

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 

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

  Suscribirse  
Notificarme de