Node.js 17 was launched with new features such as OpenSSL 3 support, Node.js version in stack traces, V8 JavaScript Engine Version 9.5, new promises APIs, and updated platform support.
The previous version, Node.js 16 has received LTS support and is still recommended for production deployments, while Node.js 17 is for testing and providing feedback on new functionalities and features for future releases, according to Michael Dawson, senior principal software engineer, Red Hat.
Support for OpenSSL 3, the software library for applications that secure communications over computer networks, provides a path for FIPS 140-2 compliances. Red Hat already provides FIPS support for Node.js in Red Hat Enterprise Linux distributions and containers, and community support should simplify integration of third party modules and hardware over time, according to Dawson.
Node.js 17 adds the Node.js version to unhandled exceptions which can help with diagnostics since it can remove a round trip asking a customer what version of Node.js they are using.
Also, the updated version of the V8 JavaScript engine along with better performance and new features now includes the addition of an error clause, and being able to better nest errors also helps with diagnostics. With Node.js 17, users can also await on readline.
Additional details on both Node.js 16 and 17 are available here.