JavaScript

Node.js 12 veröffentlicht: Major Release mit Major Changes

Node.js 12.0.0: Neuer experimenteller Support für ES6 Modules
Keine Kommentare

Node 12 ist da! Die neue Major-Version bringt eine neue Implementierung von ES Modules mit, die noch experimentell ist. Das bleibt aber nicht mehr lange so. Was hat sich noch geändert?

Node.js 12 ist da. Das heißt, dass die neusten Features nun nicht mehr für v11 ausgeliefert werden, sondern für das neue Major Release. Das merkt man der neuen Version an: Module, Sicherheit, Worker Threads und vieles mehr haben Updates erhalten. Node 12 soll im Oktober zur neuen Long-Term-Support-Version von Node werden. Und bis dahin hat man noch Großes damit vor.

Der Support für ES Modules in Node wurde noch einmal komplett neu geschrieben und implementiert. Die mit Node 8.9 ausgelieferte Lösung hat es nie über den experimentellen Status hinaus geschafft und auch die neue Variante ist erst einmal als experimentell markiert. Das Node-Team hofft jedoch, dass sich das ändert, bevor Node 12 in den LTS-Status übergeht.

Node.js 12: Neues für ES Modules

Im Rahmen der neuen Implementierung der ES Modules ist unter anderem ein Import für .js-Dateien verfügbar, der laut Blogpost des Node Module Teams besonders stark nachgefragt worden sei. In Node 12 ist es nun möglich, .js-Dateien über das Type-Feld in package.json zu importieren und für einen Input über — eval oder STDIN ein entsprechendes Flag zu setzen. Noch in Arbeit ist die Unterstützung für ES-Module-Code in Packages. Hier ist es derzeit nicht möglich, Packages zu erstellen, die sowohl über require(‘pkg’) als auch import ‘pkg’ genutzt werden können. Weitere Pläne für den Support von ES Modules in Node 12 können der Roadmap entnommen werden.

Neu in Node 12 ist außerdem der Support für TLS 1.3. Entfernt wurde der Support für TLS 1.0 und 1.1. Während Nutzer aktiv auf die Nutzung von v1.3 verzichten können, sei es laut Node-Team jedoch ratsam, sie zu verwenden. Anders als die meisten als Minor-Version benannten Updates hat sich bei TLS 1.3 einiges getan, wie dem entsprechenden Blogpost zu entnehmen ist.

Updates für V8, News für Worker Threads und mehr

Auch die genutzte V8-Version wurde mit Node 12 aktualisiert und auf den neusten Stand gebracht. Node arbeitet mit V8 v7.4 und bringt somit alle Neuerungen mit, die bis zu diesem Punkt ausgeliefert wurden. Darunter ist mit der Beschleunigung von await ein Feature, das auf Reddit zu Diskussionen führte: Wie kann eine diese Funktion beschleunigt werden? Im Kern geht es laut den Release Notes von V8 darum, dass await-Funktionen nun keinen Wrapper mehr um Promises erstellen, sondern diese unverändert ausgeben. Eine genauere Erklärung liefert das V8-Blog.

Für die Worker Threads, die in Node 11 eingeführt wurde, gibt es ebenfalls Neuigkeiten. Man nähere sich dem Ende des experimentellen Status an; noch ist es aber nicht so weit. Mit Node 12 entfalle aber die Notwendigkeit zur Verwendung eines spezifischen Flags mit den Worker Threads.

Als Major Release bringt Node 12 natürlich noch zahlreiche weitere Neuerungen mit. Einen Überblick gibt Nicolle Griggs in den offiziellen Release Notes in den Node.js-News. Einen genaueren Einblick gibt die Vorstellung der neuen Version von Bethany Griggs and Michael Dawson im Blog der Node.js-Foundation. Dort kann auch eine eigene Einführung in die neue Implementierung der ES Modules gefunden werden.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -