Key highlights of this release include the introduction of two new command-line flags: `--require-module` and `--no-require-module`, which allow users to manage the behavior of `require()` calls based on their specific project setups. The crypto module has also received an upgrade, incorporating new root certificates from NSS 3.117 to bolster security against recent online threats.
The documentation has seen contributions from new collaborators Aviv Keller and Gürgün Dayıoğlu, and two previously experimental flags, `--build-snapshot` and `--build-snapshot-config`, have now been stabilized for clearer usage.
Significant changes have been made to event handling within Node.js. The `events.listenerCount()` function has been updated to support EventTargets beyond its original focus on DOM elements, thus enhancing event tracking capabilities for applications. Additionally, `http.setGlobalProxyFromEnv()` is now stable, allowing developers to set application proxies based on environment variables reliably.
The ESM flag for `require()` has been officially marked, and the module compilation cache has also been stabilized, ensuring consistent behavior for developers. The addition of subpath imports simplifies the process of importing components from within a project, especially for modules with paths beginning with `#/`.
The process module has received optimizations, particularly concerning `AsyncLocalStorage`, which will remain active during `queueMicrotask` executions unless freeing it is absolutely necessary. Furthermore, the stream module has improved performance by eliminating redundant handling of `readable.compose()` outputs, as `Readable.from` can now manage them directly.
Lastly, a new utility function, `convertProcessSignalToExitCode`, has been introduced to streamline the mapping of incoming process signals to their respective exit codes, making it easier for developers to handle signal management.
In summary, Node.js version 25.4.0 not only enhances security and developer tools but also improves performance and usability through its array of new features and optimizations. As Node.js continues to evolve, developers can expect even more robust functionality and support for their applications.
Node.js remains a free, open-source, cross-platform JavaScript runtime environment that empowers developers to create servers, web applications, command line tools, and scripts efficiently
Node.js 25.4.0 (Current) released
The latest version of Node.js, 25.4.0, has been released with several notable improvements and enhancements to various parts of the platform. The update includes new flags for command-line users to manage require() calls, as well as significant updates to modules such as crypto, events, and process. Subpath imports have also been added, allowing developers to import components from within their project itself without complexity. Additionally, several util functions have been made stable or introduced, including convertProcessSignalToExitCode and improvements to the module's compile cache.
