Diagnostic Report, first introduced as an experimental feature in Node.js 12, has been promoted to a stable feature in version 14. According to the release notes for Node.js 14, Diagnostic Report captures and preserves information for problem determination.
"With the report option enabled, diagnostic reports can be triggered on unhandled exceptions, fatal errors and user signals, in addition to triggering programmatically through API calls," the notes state.
Michael Dawson, IBM Community lead for Node.js, told ITPro Today that users should feel more comfortable using Diagnostic Report in production knowing that it is a stable API.
"While the project always tries to avoid changes in APIs or functionality that will affect users, when a feature is experimental, we reserve the right to do so as we are still working to agree/test out the API/functionality to make sure we have it right," Dawson said.
In Node.js 14, the V8 engine is being updated to version 8.1, benefiting from a number of improvements, including the ability to more easily display the translated names of languages with a new API.
Experimental Web Assembly Interface
Of particular note in Node.js 14 is the inclusion of an experimental WebAssembly (WASM) interface. Web Assembly is an emerging approach that enables application code to run in different environments without modification.
The experimental WASM interface is an enabler that allows WASM code to get some access to OS type resources like the file system and sockets, according to Dawson.
"We hope that developers will write and experiment with WASM modules which have this need," he said. "In terms of the path forward, like any feature it needs to get enough use that we are confident that the APIs are in the correct shape and that we can maintain it going forward."
Node.js 14 Release Cycle
Node.js follows a strict development cycle for its releases, with multiple branches in different stages of maturity at any given point in time. When the initial release of Node.js 14 was announced on April 21, it was considered to be the "current" release.
"Based on our LTS [Long Term Support] process, Node.js 14 is in the 'current' phase for the next six months," Dawson explained.
The LTS milestone is the point at which a release is considered to be fully production-ready. Node.js 14 is set to become an active LTS release on Oct. 20 and will be supported until April 2023.