Cuáles son las diferencias entre el Soporte a Largo Plazo (LTS) y las versiones estables de Node.js?


Originalmente preguntó: Cuál es la diferencia entre Nodo.js 4.rama x con LTS (Soporte a Largo Plazo) y el 5.x branch (listado como Estable)?

Pero esto es igualmente relevante para entender la diferencia entre 6.x y 7.x y, en el futuro, 8.x y 9.x

Generalmente, siempre me inclino hacia la última versión para las características y el rendimiento (como ahora hago un montón de ES6 / ES7). ¿Hay alguna información sobre cómo están listas para la producción las ramas "estables"?

Author: Binarytales, 2015-11-12

2 answers

Para entender la diferencia, debe comprender por qué existe una versión de Soporte a Largo Plazo (LTS) de Node.

Node LTS está dirigido principalmente al uso empresarial donde puede haber más resistencia a actualizaciones frecuentes, procedimientos de adquisición extensos y requisitos de prueba y calidad prolongados.

De Rod Vagg un miembro del grupo de trabajo LTS Nodo:

El punto de establecer un plan LTS para Node es construir sobre un ciclo de liberación estable existente por entrega de nuevas versiones en un horario predecible que tienen un ciclo de vida de soporte extendido claramente definido. Si bien esto puede parecer contrario a la tradición de código abierto de "publicación temprana, publicación frecuente", es un requisito esencial para los equipos de desarrollo y operaciones de aplicaciones empresariales. También afecta a las empresas ... que proporcionan apoyo profesional para Nodo.js.

Https://medium.com/@nodesource/essential-steps-long-term-support-for-node-js-8ecf7514dbd#.za353bn08

El post del nodo oficial mencionado en uno de los comentarios también hace un buen trabajo al explicar esto:

Https://nodejs.org/en/blog/community/node-v5 /

A veces se malinterpreta que las versiones con números de versión impares (v5, v7) son una "beta" de la próxima versión de LTS. Esta es una convención utilizada en otro proyecto, pero no en el nodo y es algo engañoso. De hecho, la próxima versión LTS se elige de una versión específica de la versión actual, y esta generalmente será una versión par (v6, v8). No es que las últimas versiones sean betas, es que los lanzamientos de LTS satisfacen una necesidad específica que tienen algunas organizaciones.

Para un punto de referencia mira las versiones de Soporte extendido de Firefox ( https://www.mozilla.org/en-US/firefox/organizations/faq / ) o las versiones LTS de Ubuntu ( https://wiki.ubuntu.com/LTS ). No creo que nadie sugeriría la última versión de Firefox era una versión beta y que la mayoría de los usuarios deben seguir con las versiones anteriores ERS.

Generalmente, si puede mantenerse al día con las últimas versiones estables y futuras de Nodos, debe hacerlo. Estas son versiones estables y listas para la producción con un excelente soporte de la comunidad. La funcionalidad inestable y experimental se mantiene detrás de los indicadores de compilación y tiempo de ejecución y no debe afectar a su operaciones del día a día.

Generalmente siempre me inclino hacia la última versión para las características y el rendimiento (como ahora lo hago asignar de ES6 / ES7)

Esto me sugeriría que las versiones estables y más allá se adaptarán bien a sus necesidades. Esto le dará acceso a las últimas y mejores características del lenguaje proporcionadas por el motor JavaScript subyacente (V8 o Chakra)

De nota: Una diferencia significativa entre v4 (y anteriores) y v5 es que v4 se envía con npm v2 mientras que v5 viene con npm v3. v3 de npm tiene algunos cambios potencialmente rompedores para su proyecto en cómo maneja Peerdependances. La forma en que npm v3 ahora intenta instalar dependencias propias lo más planas posible y evitar duplicados puede afectar sus proyectos, pero ha sido una gran bendición para los usuarios de Windows, por lo que también puede afectar su toma de decisiones.

 53
Author: Binarytales,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-21 14:40:22

El 4.x es la versión que está siendo soportada actualmente, similar a una versión de producción. La versión 5.0 es estable, pero es la próxima versión en flujo y debe ser tratada como es una versión beta o release candidate. Como tal, actualmente no ve 5.0 como una opción en cosas como Amazon Elastic Beanstalk.

Una vez que una línea de lanzamiento estable se convierte en LTS, no hay nuevas características o ruptura se agregarán cambios a esa versión.

Fuente

 6
Author: Victoria French,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-13 02:40:22