We’re excited to announce that Node.js 19 was launched as we speak! Highlights embrace the replace of the V8 JavaScript engine to 10.7, and HTTP(s)/1.1 KeepAlive enabled by default.
Node.js 19 will change Node.js 18 as our ‘Present’ launch line when Node.js 18 enters long-term assist (LTS) later this month.
As per the discharge schedule, Node.js 19 would be the ‘Present’ launch for the following 6 months, till April 2023.
You may learn extra about our launch coverage at https://github.com/nodejs/launch.
To obtain Node.js 19.0.0, go to: https://nodejs.org/en/obtain/present/. You could find the discharge publish at https://nodejs.org/en/weblog/launch/v19.0.0, which incorporates the total checklist of commits included on this launch.
An thrilling latest characteristic addition to the runtime is assist for working in ‘watch’ mode utilizing the node --watch
possibility.
Operating in ‘watch’ mode restarts the method when an imported file is modified.
$ node --watch index.js
This characteristic is obtainable in v19.0.0 and v18.11.0+.
Contributed by Moshe Atlow in #44366
Beginning with this launch, Node.js units keepAlive
to true by default. Because of this any outgoing HTTP(s) connection will routinely use HTTP 1.1 Maintain-Alive.
The default keep-alive period is 5 seconds.
Allow keep-alive will ship higher throughput as connections are reused by default.
Moreover, the agent is now in a position to parse the response Maintain-Alive
which the servers would possibly ship. This header instructs the shopper on how a lot to remain linked.
On the opposite facet, the Node.js HTTP server will now routinely disconnect idle shoppers (that are utilizing HTTP Maintain-Alive to reuse the connection) when shut()
is invoked).
Node.js HTTP(S)/1.1 requests might expertise a greater throughput/efficiency by default.
Contributed by Paolo Insogna in #43522
The WebCrypto API is now secure (apart from the next algorithms: Ed25519, Ed448, X25519, and X448)
Use globalThis.crypto
or require('node:crypto').webcrypto
to entry this module.
Contributed by Filip Skokan in #44897
Node.js has eliminated the --experimental-specifier-resolution
flag. Its performance can now be achieved through customized loaders.
Contributed by Geoffrey Sales space in #44859
Assist for DTrace/SystemTap/ETW was eliminated in v19.0.0. The principle motive is the prioritization of assets.
The complexity to maintain the assist up-to-date has proved not value it and not using a clear plan to assist these instruments.
If you’re inquisitive about serving to to convey DTrace again, a problem has been opened right here: https://github.com/nodejs/node/points/44550.
Contributed by Ben Noordhuis in #43651 and #43652
The V8 engine is up to date to model 10.7, which is a part of Chromium 107.
This model features a new characteristic to the JavaScript API: Intl.NumberFormat
.
Intl.NumberFormat
v3 API is a brand new TC39 ECMA402 stage 3 proposal extending the pre-existing Intl.NumberFormat
.
The V8 replace was a contribution by Michaël Zasso in #44741.
Node.js 19 ships with llhttp@8.1.0
Contributed by Paolo Insogna in #44967
Node.js 19 ships with npm@8.19.2
Word that the Node.js 18 launch line goes to be transitioning into long-term assist subsequent week.
Check out the brand new Node.js 19 launch! We’re all the time glad to listen to your suggestions. Testing your functions and modules with Node.js 19 helps to make sure the long run compatibility of your venture with the most recent Node.js modifications and options.
Additionally of observe is that Node.js 14 will go Finish-of-Life in April 2023, so we advise you to begin planning to improve to Node.js 16 (LTS) or Node.js 18 (quickly to be LTS).
Please, think about that Node.js 16 (LTS) will go Finish-of-Life in September 2023, which was introduced ahead from April 2024 to coincide with the tip of assist of OpenSSL 1.1.1. You may learn extra particulars about that call at https://nodejs.org/en/weblog/bulletins/nodejs16-eol/.
For the timeline of Node.js releases, try the Node.js Launch Schedule.