JavaScript: Node.js 14 bringt Diagnosereports und bald Langzeit-Support
Die aktuelle Version des serverseitigen Java-Script aktualisiert v8 auf Version 8.1. Ab Oktober 2020 wird Node.js 14 zur neuen LTS-Version.
![JavaScript: Mit Node.js 14 können Entwickler Diagnose-Reports erstellen](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/8/8/2/8/2/4/Code2-1372703e0d093786.jpeg)
Die Entwickler-Community hat eine neue Version der serverseitigen JavaScript-Plattform Node.js veröffentlicht: Node.js 14 ist das aktuelle Release für die kommenden sechs Monate. Ab Oktober 2020 erhält es Long-term Support (LTS). Damit wird Node.js 14 neben Node.js 10 und 12 ein weiteres Major-Release mit LTS-Status. Node.js 10 wird noch bis April 2021 und Version 12 bis April 2022 mit Updates versorgt. Nähere Informationen zur LTS-Strategie finden sich auf GitHub.
In Node.js 14 ist der Diagnosereport nun ein stabiles Feature. Seit Node.js 12 stand er experimentell zum Testen bereit. Nutzer können bei Bedarf oder bei bestimmten Ereignissen einen Diagnosebericht erstellen. Diese enthalten Informationen, die für die Diagnose von Produktionsproblemen wie Abstürzen, verminderter Leistung, Speicherlecks, hoher CPU-Auslastung oder unerwartet auftretenden Fehlern von Nutzen sein können.
Upgrade auf v8 v8
Die JavaScript-Engine V8 wird mit Node.js 14 auf Version 8.1 aktualisiert. Damit stehen die im Dezember 2019 integrierten Entwicklungen und Verbesserungen nun für Node.js zur Verfügung. Dazu zählen Features wie Optional Chaining
und Nullish Coalescing
.
Die neue Major-Version der JavaScript-Laufzeitumgebung hält ein neues experimentelles Feature bereit: die experimentelle Async Local Storage API. Das Kernteam arbeitete an einer Schnittstelle, um den Kontext zwischen asynchronen Aufrufen über verschiedene Releases hinweg zu verwalten. Bereits in früheren Version wurde eine experimentelle Async-Hooks-API eingeführt. Zwar konnte das Entwicklerteam auf npm-Module zurückgreifen, die entsprechende APIs zur Verfügung stellen, doch die Wartung dieser Module außerhalb des Kerns stellte sich als schwierig heraus. Für das Entwicklerteam scheint es die einzig sinnvolle Option gewesen zu sein, selbst eine entsprechende Schnittstelle für ihre Zwecke zu entwickeln.
Änderungen für die Streams-APIs
Node.js 14 hält einige Änderungen in den Node.js-Streams-Implementierungen bereit, die dort mit SemVer major
gekennzeichnet sind. Ziel dieser Änderungen ist, die Konsistenz über die Stream-APIs hinweg zu verbessern, um Mehrdeutigkeiten zu vermeiden und das Verhalten in den verschiedenen Teilen des Nods.js-Kerns zu rationalisieren. Erwähnenswert ist zudem, dass die Option autoDestroy
mit dem Update standardisiert true
zurückgibt und dadurch der Stream nach dem Ende destroy
aufruft.
Neben den genannten Neuerungen implementiert die aktuelle Version der Laufzeitumgebung das Web Assembly System Interface (WASI) als experimentelles neues Feature. Darüber hinaus hat das Kern-Team die auftretende Warnung bei der Verwendung von EcmaScript-Modulen (EMS) sowie einige Deprecations entfernt. Eine Übersicht über alle neuen Features findet sich in der Ankündigung der Entwickler. (mdo)