Change8

v24.5.0

📦 node-jsView on GitHub →
7 features🐛 3 fixes🔧 9 symbols

Summary

This release upgrades to OpenSSL 3.5, unflags WebAssembly ESM integration, and introduces built-in proxy support for the http and https modules.

Migration Steps

  1. If using WebAssembly modules, remove the --experimental-wasm-modules flag from startup scripts as it is now unflagged.
  2. To enable system-wide proxy support for http/https requests, set the environment variable NODE_USE_ENV_PROXY=1.
  3. To update default CA certificates at runtime, use the new tls.setDefaultCACertificates() method.

✨ New Features

  • Unflagged --experimental-wasm-modules, enabling source and instance phase imports for WebAssembly modules by default.
  • Added built-in proxy support for node:http and node:https via NODE_USE_ENV_PROXY environment variable and proxyEnv option in Agent.
  • Introduced tls.setDefaultCACertificates() to dynamically configure default CA certificates for TLS clients.
  • Added support for ${pid} placeholder in the --cpu-prof-name CLI flag.
  • Added support for max timeout in the dns module.
  • Updated net.BlockList to support file save and management.
  • Added Web Locks API support to worker threads.

🐛 Bug Fixes

  • Fixed sqlite-is-transaction benchmark.
  • Improved performance in crypto.hash() by avoiding unnecessary buffer-to-string conversions.
  • Optimized buffer module by caching Environment::GetCurrent calls.

Affected Symbols