Node.js 19 has arrived. The latest update to the popular JavaScript runtime enables HTTP Keep-Alive by default, a change that should deliver better web throughput.
Accessible from nodejs.org, Node.js 19 was released October 18. Beginning with this release, Node.js sets keepAlive
to true by default. Thus any outgoing HTTP(S) connection automatically will use HTTP 1.1 Keep-Alive, providing better throughput as connections are reused by default. There is a default waiting window of five seconds. Additionally, Node’s HTTP Agent is able to parse the response Keep-Alive
that servers might send. This header instructs the client on how long to stay connected. The Node HTTP server now will automatically disconnect idle clients when close()
is invoked.
Node.js 19 will supplant Node.js 18 as the project’s “Current” release line when Node.js 18 enters Long-Term Support status later in October. Node.js 19 will be the Current release until April 2023.
Also in Node.js 19:
- The WebCrypto API is now stable, except for the Ed25519, Ed448, X25519, and X448 algorithms. This API provides an implementation of the standard Web Crypto JavaScript API for performing basic cryptographic operations in web applications.
- An experimental
node --watch
option, available since Node.js 18.11, restarts the process when an imported file is changed. - The V8 engine, which underpins Node.js, has been updated to version 10.7.
- Support for DTrace/SystemTap/ETW has been removed, with prioritization of resources given as the reason.
- The
--experimental-specifier-resolution
flag has been removed. This functionality now can be implemented via custom loaders.