Software 43918 Published by

NodeJS 20.19.3 (LTS) has been released, featuring several significant updates. Significant updates include the stable Gradient WebCryptoAPI algorithms, improved root certificates to NSS 3.108, and a timezone change to 2025b. The build incorporates updates to the ICU, Corepack, and SIMDUTF versions. The commits include making FILE_OFFSET_BITS=64 work for 32-bit systems, using glob for dependencies in out/Makefile, allowing length=0 for HKDF and PBKDF2 in SubtleCrypto.deriveBits, and updating simdutf to version 6.4.2.



Node.js — Node v20.19.3 (LTS)

Node.js:registered: is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.

Notable Changes

  • [ c535a3c483] - crypto: graduate WebCryptoAPI Ed25519 and X25519 algorithms as stable (Filip Skokan)  #56142
  • [ af1dc63815] - crypto: update root certificates to NSS 3.108 (Node.js GitHub Bot)  #57381
  • [ 01d63a4ddf] - deps: update timezone to 2025b (Node.js GitHub Bot)  #57857
  • [ b6daa344eb] - doc: add dario-piotrowicz to collaborators (Dario Piotrowicz)  #58102

Commits

  • [ fc1fa7a357] - build: use FILE_OFFSET_BITS=64 esp. on 32-bit arch (RafaelGSS)  #58090
  • [ 79e0812181] - build: use glob for dependencies of out/Makefile (Richard Lau)  #55789
  • [ f56e62851a] - crypto: allow length=0 for HKDF and PBKDF2 in SubtleCrypto.deriveBits (Filip Skokan)  #55866
  • [ c535a3c483] - crypto: graduate WebCryptoAPI Ed25519 and X25519 algorithms as stable (Filip Skokan)  #56142
  • [ 39925de8b1] - crypto: allow non-multiple of 8 in SubtleCrypto.deriveBits (Filip Skokan)  #55296
  • [ af1dc63815] - crypto: update root certificates to NSS 3.108 (Node.js GitHub Bot)  #57381
  • [ d09008add3] - deps: V8: cherry-pick 1a3ecc2483b2 (Michaël Zasso)  #58342
  • [ fd56652425] - deps: V8: cherry-pick 182d9c05e78b (Andrey Kosyakov)  #58342
  • [ 447481e829] - deps: V8: cherry-pick third_party/zlib@646b7f569718 (Hans Wennborg)  #58342
  • [ eb447168df] - deps: update simdutf to 6.4.2 (Node.js GitHub Bot)  #57855
  • [ 01d63a4ddf] - deps: update timezone to 2025b (Node.js GitHub Bot)  #57857
  • [ 10fb49f2a9] - deps: update icu to 77.1 (Node.js GitHub Bot)  #57455
  • [ f1dc7d0205] - deps: update corepack to 0.32.0 (Node.js GitHub Bot)  #57265
  • [ 7a2e64bb8a] - deps: update simdutf to 6.4.0 (Node.js GitHub Bot)  #56764
  • [ e80669be0d] - doc: mention reports should align with Node.js CoC (Rafael Gonzaga)  #57607
  • [ 7b2c0bc92e] - doc: add gurgunday as triager (Gürgün Dayıoğlu)  #57594
  • [ 791e4879de] - doc: document REPL custom eval arguments (Dario Piotrowicz)  #57690
  • [ 2917f09876] - doc: improved fetch docs (Alessandro Miliucci)  #57296
  • [ d940b15843] - doc: clarify unhandledRejection events behaviors in process doc (Dario Piotrowicz)  #57654
  • [ 71c664fab7] - doc: update position type to integer | null in fs (Yukihiro Hasegawa)  #57745
  • [ 0c0fbfa9c6] - doc: add missing v0.x changelog entries (Antoine du Hamel)  #57779
  • [ e99462c9fc] - doc: correct deprecation type of assert.CallTracker (René)  #57997
  • [ c7e92696ef] - doc: add returns for https.get (Eng Zer Jun)  #58025
  • [ ccc42b69ce] - doc: fix env variable name in util.styleText (Antoine du Hamel)  #58072
  • [ b6daa344eb] - doc: add dario-piotrowicz to collaborators (Dario Piotrowicz)  #58102
  • [ e5d6a3df16] - doc: fix AsyncLocalStorage example response changes after node v18 (Naor Tedgi (Abu Emma))  #57969
  • [ f006411998] - doc: fix typo of file zlib.md (yusheng chen)  #58093
  • [ 5193735df4] - doc: add missing options.signal to readlinePromises.createInterface() (Jimmy Leung)  #55456
  • [ fd44af730f] - doc: fix misaligned options in vm.compileFunction() (Jimmy Leung)  #58145
  • [ 0fdcc0ddcd] - doc: add ambassaor message (Brian Muenzenmeyer)  #57600
  • [ 5ca9616bd3] - doc: increase z-index of header element (Dario Piotrowicz)  #57851
  • [ 81342d10f0] - doc: fix deprecation type for DEP0148 (Livia Medeiros)  #57785
  • [ 776becfe01] - doc: remove mention of --require not supporting ES modules (Huáng Jùnliàng)  #57620
  • [ 3140a8f133] - doc: add missing deprecated badges in fs.md (Yukihiro Hasegawa)  #57384
  • [ 441ce24ae3] - doc: deprecate passing invalid types in fs.existsSync (Carlos Espa)  #55892
  • [ 0556f54544] - http: correctly translate HTTP method (Paolo Insogna)  #52701
  • [ c2c6d2b035] - http: be more generational GC friendly (ywave620)  #56767
  • [ cdf3fa241c] - http2: skip writeHead if stream is closed (Shima Ryuhei)  #57686
  • [ bbd5aec785] - http2: fix graceful session close (Kushagra Pandey)  #57808
  • [ b427ae4f34] - meta: remove build-windows.yml (Aviv Keller)  #54662
  • [ 49e624f554] - os: fix netmask format check condition in getCIDR function (Wiyeong Seo)  #57324
  • [ d582954434] - src: remove unused variable in crypto_x509.cc (Michaël Zasso)  #57754
  • [ 234a505e96] - src: allow embedder customization of OOMErrorHandler (Shelley Vohr)  #57325
  • [ c0252cd380] - src: fix -Wunreachable-code-return in node_sea (Shelley Vohr)  #57664
  • [ fcd1622fc1] - src: fix kill signal 0 on Windows (Stefan Stojanovic)  #57695
  • [ 850192b06b] - test: skip broken sea on rhel8 (Marco Ippolito)  #58761
  • [ 3cf7cfb695] - test: update WPT for WebCryptoAPI to edd42c005c (Node.js GitHub Bot)  #57365
  • [ f57765bdcf] - test: mark test-without-async-context-frame flaky on windows (James M Snell)  #56753
  • [ 275ea8e7ef] - test: force GC in test-file-write-stream4 (Luigi Pinca)  #57930
  • [ da6a13c338] - test: deflake test-http2-options-max-headers-block-length (Luigi Pinca)  #57959
  • [ 56fce6691e] - test: prevent extraneous HOSTNAME substitution in test-runner-output (René)  #58076
  • [ c9c0be5596] - test: update expected error message for macOS (Antoine du Hamel)  #57742
  • [ 3cbf5f93d2] - test: fix missing edge case in test-blob-slice-with-large-size (Joyee Cheung)  #58414
  • [ bffd4ec379] - test: skip in test-buffer-tostring-rangeerror on allocation failure (Joyee Cheung)  #58415
  • [ 8237346fb7] - test,crypto: update WebCryptoAPI WPT (Filip Skokan)  #54593
  • [ b90c4ab937] - tools: remove unused osx-pkg-postinstall.sh (Antoine du Hamel)  #57667
  • [ 414013dcfb] - tools: edit create-release-proposal workflow to handle pr body length (Elves Vieira)  #57841
  • [ 7c449ed6b3] - tools: fix tarball testing directory (Marco Ippolito)  #57994
  • [ d164dc2d38] - tools: update sccache version to v0.10.0 (Marco Ippolito)  #57994
  • [ debd3c2cc0] - tools: disable failing test envs in test-linux CI (Antoine du Hamel)  #58351
  • [ 152112505a] - typings: fix ImportModuleDynamicallyCallback return type (Chengzhong Wu)  #57160
  • [ 363bf744ab] - worker: flush stdout and stderr on exit (Matteo Collina)  #56428

Node.js — Node v20.19.3 (LTS)