Change8

v20.19.3

📦 node-jsView on GitHub →
8 features🐛 6 fixes3 deprecations🔧 8 symbols

Summary

This release stabilizes Ed25519/X25519 in WebCrypto, updates several core dependencies like ICU and root certificates, and introduces deprecations for invalid types in fs.existsSync.

Migration Steps

  1. Update any code using fs.existsSync to ensure only valid types (string, Buffer, URL) are passed to avoid future breakage.
  2. If using 32-bit architectures, verify file system operations involving large files (>2GB) as FILE_OFFSET_BITS=64 is now enabled.

✨ New Features

  • Graduated WebCryptoAPI Ed25519 and X25519 algorithms to stable.
  • Updated root certificates to NSS 3.108.
  • SubtleCrypto.deriveBits now allows length=0 for HKDF and PBKDF2.
  • SubtleCrypto.deriveBits now allows non-multiples of 8 for bit length.
  • Updated timezone data to 2025b.
  • Updated ICU to 77.1.
  • Updated Corepack to 0.32.0.
  • Updated simdutf to 6.4.2.

🐛 Bug Fixes

  • build: Enabled FILE_OFFSET_BITS=64 on 32-bit architectures to support large files.
  • http: Correctly translate HTTP methods.
  • http: Improved generational GC friendliness.
  • doc: Fixed AsyncLocalStorage example response changes for Node v18+.
  • doc: Fixed environment variable name in util.styleText.
  • doc: Fixed misaligned options in vm.compileFunction().

Affected Symbols

⚡ Deprecations

  • Passing invalid types to fs.existsSync is now deprecated.
  • Corrected deprecation type for assert.CallTracker.
  • Corrected deprecation type for DEP0148.