Node v20.8.0 (Current)

Created on November 12, 2023 at 10:51 am

Node v20.8.0 PERSON (Current)

Notable Changes

Stream performance improvements

Performance improvements to writable and readable streams, improving the creation and destruction by ±15% PERCENT and reducing the memory overhead each stream takes in Node.js

Contributed by Benjamin Gruenbaum PERSON in # 49745 MONEY and Raz Luvaton PERSON in # 49834 MONEY .

Performance improvements for readable webstream, improving readable stream async iterator consumption by ±140% PERCENT and improving readable stream pipeTo consumption by ±60%

Contributed by Raz Luvaton PERSON in # 49662 MONEY and # 49690 MONEY .

Rework of memory management in vm APIs with the importModuleDynamically option

This rework addressed a series of long-standing memory leaks and use-after-free issues in the following APIs that support importModuleDynamically :

vm.Script

vm.compileFunction

vm.SyntheticModule

vm.SourceTextModule

This should enable affected users to upgrade from older versions of Node.js CARDINAL .

Contributed by Joyee Cheung PERSON in # 48510 MONEY .

Other notable changes

[ 32d4d29d02 CARDINAL ] – deps : add v8::Object::SetInternalFieldForNodeCore() ( Joyee Cheung PERSON ) # 49874 MONEY

] – : add v8::Object::SetInternalFieldForNodeCore() ( Joyee Cheung PERSON ) # 49874 MONEY [ 0e686d096b CARDINAL ] – doc : deprecate fs. F_OK PERSON , fs. R_OK PERSON , fs. W_OK PERSON , fs. X_OK PERSON ( Livia Medeiros PERSON ) # 49683 MONEY

] – : deprecate , , , ( Livia Medeiros PERSON ) #49683 [ a5dd057540 ] – doc : deprecate util.toUSVString ( Yagiz Nizipli ORG ) # 49725 MONEY

] – : deprecate ( Yagiz Nizipli ORG ) # 49725 MONEY [ 7b6a73172f CARDINAL ] – doc : deprecate calling promisify on a function that returns a promise ( Antoine du Hamel ORG ) # 49647 MONEY

] – : deprecate calling on a function that returns a promise ( Antoine du Hamel ORG ) # 49647 CARDINAL [ 1beefd5f16 CARDINAL ] – esm : set all hooks as release candidate ( Geoffrey Booth PERSON ) # 49597 MONEY

] – : set all hooks as release candidate ( Geoffrey Booth PERSON ) # 49597 DATE [ b0ce78a75b ] – module : fix the leak in SourceTextModule PRODUCT and ContextifySript (Joyee Cheung) # 48510 MONEY

] – : fix the leak in SourceTextModule PRODUCT and ContextifySript (Joyee Cheung) # 48510 CARDINAL [ 4e578f8ab1 CARDINAL ] – module : fix leak of vm. SyntheticModule PERSON ( Joyee Cheung PERSON ) # 48510 MONEY

] – : fix leak of vm. SyntheticModule PERSON ( Joyee Cheung PERSON ) # 48510 CARDINAL [ 69e4218772 CARDINAL ] – module : use symbol in WeakMap ORG to manage host defined options ( Joyee Cheung PERSON ) # 48510 MONEY

] – : use symbol in WeakMap ORG to manage host defined options ( Joyee Cheung PERSON ) # 48510 CARDINAL [ 14ece0aa76 CARDINAL ] – ( SEMVER ORG -MINOR) src : allow embedders to override NODE_MODULE_VERSION ( Cheng Zhao PERSON ) # 49279 MONEY

] – : allow embedders to override NODE_MODULE_VERSION ( Cheng Zhao PERSON ) # 49279 MONEY [ 9fd67fbff0 ] – stream : use bitmap in writable state ( Raz Luvaton PERSON ) # 49834 MONEY

] – : use bitmap in writable state ( Raz Luvaton PERSON ) # 49834 MONEY [ 0ccd4638ac CARDINAL ] – stream : use bitmap in readable state ( Benjamin Gruenbaum PERSON ) # 49745 MONEY

] – : use bitmap in readable state ( Benjamin Gruenbaum PERSON ) # 49745 CARDINAL [ 7c5e322346 CARDINAL ] – stream : improve webstream readable async iterator performance ( Raz Luvaton PERSON ) # 49662 MONEY

] – : improve webstream readable async iterator performance ( Raz Luvaton PERSON ) # 49662 MONEY [ 80b342cc38 ] – ( SEMVER ORG -MINOR) test_runner : accept testOnly in run ( Moshe Atlow PERSON ) # 49753 MONEY

] – : accept in ( Moshe Atlow PERSON ) # 49753 MONEY [ 17a05b141d ] – ( SEMVER ORG -MINOR) test_runner: add junit reporter ( Moshe Atlow PERSON ) #49614

MONEY Commits

Windows 32 CARDINAL -bit Installer: https://nodejs.org/dist/v20.8.0/node-v20.8.0-x86.msi

Windows 64 CARDINAL -bit Installer: https://nodejs.org/dist/v20.8.0/node-v20.8.0-x64.msi

Windows ARM 64 PRODUCT -bit Installer ORG : https://nodejs.org/dist/v20.8.0/node-v20.8.0-arm64.msi

Windows 32-bit QUANTITY Binary: https://nodejs.org/dist/v20.8.0/win-x86/node.exe

Windows 64-bit Binary: https://nodejs.org/dist/v20.8.0/win-x64/node.exe

Windows ARM 64 PRODUCT -bit Binary: https://nodejs.org/dist/v20.8.0/win-arm64/node.exe

macOS 64-bit Installer: https://nodejs.org/dist/v20.8.0/node-v20.8.0.pkg

macOS Apple Silicon ORG 64-bit Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-darwin-arm64.tar.gz

macOS Intel ORG 64-bit Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-darwin-x64.tar.gz

Linux 64-bit Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-linux-x64.tar.xz

Linux PPC LE 64 CARDINAL -bit Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-linux-ppc64le.tar.xz

Linux s390x 64-bit QUANTITY Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-linux-s390x.tar.xz

AIX ORG

64 CARDINAL -bit Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-aix-ppc64.tar.gz

ARMv7 32-bit QUANTITY Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-linux-armv7l.tar.xz

ARMv8 64 CARDINAL -bit Binary: https://nodejs.org/dist/v20.8.0/node-v20.8.0-linux-arm64.tar.xz

Source Code: https://nodejs.org/dist/v20.8.0/node-v20.8.0.tar.gz

Other release files: https://nodejs.org/dist/v20.8.0/

Documentation: https://nodejs.org/docs/v20.8.0/api/ ORG

SHASUMS PERSON

Connecting to blog.lzomedia.com... Connected... Page load complete