La version 10.0.0 de Node.js s’enrichit du support de la boîte à outils de chiffrement OpenSSL 1.1.0, mais les améliorations seront progressives. De plus, si Node.js 10.0.0 est livré avec le gestionnaire de paquets NPM 5.7, la série 10.x sera mise à niveau vers la version NPM 6 plus tard, ce qui laisse entrevoir des améliorations de performance, de stabilité et de sécurité.

Nouvelles fonctionnalités de Node.js 10.0.0

Mis à part le support OpenSSL 1.1.0, voici les autres fonctionnalités ajoutées à la version 10.0.0 :

- N-API (Node.js API) passe du statut de bêta à stable. Elle comporte un module API stable indépendant des changements pouvant intervenir dans le moteur JavaScript V8 sous-jacent de Node.js, ce qui facilite les mises à niveau par les personnes chargées de la maintenance des modules et des déploiements de production.

- Améliorations du langage JavaScript, y compris prototype.toString(). Celui-ci renvoie désormais des portions exactes du texte code source et offre des mesures d'atténuation des vulnérabilités de canal auxiliaire pour prévenir les fuites d'information.

- Amélioration de la gestion des erreurs, avec adoption de codes d'erreur pour faciliter la vérification constante des erreurs.

- Gains en Performance via le moteur JavaScript V8 de Google, y compris pour le générateur asynchrone et les tableaux.

- Visibilité accrue sur les problèmes de performance du code grâce à des événements de suivi.

- Une API permet au code utilisateur d'activer et de désactiver les événements de suivi à la demande au moment de l'exécution, offrant une plus grande flexibilité dans le diagnostic des problèmes pouvant survenir dans les applications.

Les versions ultérieures de la série 10.x de Node.js devraient offrir :

- HTTP/2, plus performant que le HTTP.

- Meilleur support des modules ECMAScript (ES) 6. Node.js a son propre système de modules, mais ECMAScript 6 offre un système de modules standardisé. L’objectif est de livrer une implémentation ECMAScript 6 compatible avec le navigateur qui pourra coexister avec les modules Node.js existants.

Les fonctionnalités suivantes devraient apparaître dans Node.js 11.x :

- Meilleures capacités de diagnostic. Cette capacité est de plus en plus importante alors que Node.js est de plus en plus utilisé dans les applications de production.

- Utilisation des Promises JavaScript dans le noyau Node.js, plus adapté aux développeurs qui veulent utiliser des API de type Promise.

- Prise en charge d'un plus grand nombre de processus d’automatisation avec support d’outils et de scripts supplémentaires. Node.js 11.x pourrait prendre en charge de nouveaux systèmes d'exploitation et abandonner le support d’anciens systèmes.

Autres évolutions qui ne sont pas directement liées aux séries Node.js 10 ou Node.js 11 :

- Progrès continus en matière de sélection sécurisée des modules NPM de tierces parties.

- Tests fonctionnels des modules de tierces parties pour s'assurer que les dépendances sont maintenues.

Node.js est téléchargeable sur le site Web du projet.