-
Notifications
You must be signed in to change notification settings - Fork 29.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v16.17.0 release proposal #44098
v16.17.0 release proposal #44098
Conversation
This commit adds a new command line option named '--openssl-shared-config' intended to allow reverting to the old OpenSSL configuration behavior where Node.js would use the configuration section name (called appname in OpenSSL) 'openssl_conf' which could potentially be used my other applications.. PR-URL: #43124 Backport-PR-URL: #43892 Refs: #40366 Refs: nodejs/nodejs.org#4713 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
PR-URL: #43483 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com>
PR-URL: #43452 Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: #43236 Reviewed-By: Michaël Zasso <targos@protonmail.com>
PR-URL: #43228 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Rich Trott <rtrott@gmail.com>
V8 considers gc(true) legacy, and the new signature is much more expressive. PR-URL: #43493 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
PR-URL: #43497 Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
This was split into a separate page 2 days ago: mdn/content@d2b5012 PR-URL: #43530 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Ran through onboaring with Juan today. Add him to the rotation for security stewards. Signed-off-by: Michael Dawson <mdawson@devrus.com> PR-URL: #43512 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Darshan Sen <raisinten@gmail.com>
My availability has become smaller and smaller and I think for now the best thing to do is to move to TSC Emeritus. Perhaps I'll have more time to focus on Node.js Leadership again in the future, but for now I think it's best to officially step back a bit. So long, and thanks for all the modules o/ PR-URL: #43524 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Danielle Adams <adamzdanielle@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Should fix test flakiness that is presumably caused by the asynchronous nature of the unlink operation on Windows. It's been observed that sub-tests randomly fail with "permission denied" errors when trying to create a new file in a directory with appropriate permissions. The DeleteFile() NT API call makes a file inaccessible and marks it for deletion but doesn't actually delete it until the last open handle has been closed. Accessing such a file fails with ERROR_ACCESS_DENIED. Processes can close handles manually or wait for the operating system to close them asynchronously after process termination. I speculate it's the latter that's causing the test to turn flaky. Fixes: #43502 PR-URL: #43504 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: LiviaMedeiros <livia@cirno.name> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
On IBM i rss memory information is not available and always returns `0`. PR-URL: #43511 Refs: #43509 Refs: libuv/libuv#2732 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: #43500 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: #43454 Reviewed-By: Tobias Nießen <tniessen@tnie.de>
PR-URL: #43361 Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
PR-URL: #43544 Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
PR-URL: #43573 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com>
In the manual page, there is a statement that ciphersuites contain explicit default settings - all TLS 1.3 ciphersuites enabled. In node, we assume that an empty setting mean no ciphersuites and we disable TLS 1.3. A correct approach to disabling TLS 1.3 is to disable TLS 1.3 and by not override the default ciphersuits with an empty string. So, only override OpenSSL's TLS 1.3 ciphersuites with an explicit list of ciphers. If none are acceptable, the correct approach is to disable TLS 1.3 instead elsewhere. Fixes: #43419 PR-URL: #43427 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #43557 Fixes: nodejs/build#2968 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
PR-URL: #43472 Reviewed-By: Guy Bedford <guybedford@gmail.com>
PR-URL: #43473 Reviewed-By: Darshan Sen <raisinten@gmail.com>
PR-URL: #43543 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Cover malformed mappings scenario. PR-URL: #43285 Reviewed-By: Ben Coe <bencoe@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #43601 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
@nodejs/releasers @nodejs/lts Unless there are objections or additional suggestions to the changelog, I'm going to promote the release as-is on Tuesday. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, although there are a few oddities in the release commit message with commits that had more than one subsystem:
(SEMVER-MINOR) moduleepl**: support 'node:'-only core modules (Colin Ihrig) [#42325](https://github.com/nodejs/node/pull/42325)
(SEMVER-MINOR) nodepi**: emit uncaught-exception on unhandled tsfn callbacks (Chengzhong Wu) [#36510](https://github.com/nodejs/node/pull/36510)
(SEMVER-MINOR) perfhooks**: add PerformanceResourceTiming (RafaelGSS) [#42725](https://github.com/nodejs/node/pull/42725)
(SEMVER-MINOR) srcoc,test**: add --openssl-shared-config option (Daniel Bevenius) [#43124](https://github.com/nodejs/node/pull/43124)
The equivalent entries in the changelog look okay, FWIW.
Notable changes: Adds `util.parseArgs` helper for higher level command-line argument parsing. Contributed by Benjamin Coe, John Gee, Darcy Clarke, Joe Sepi, Kevin Gibbons, Aaron Casanova, Jessica Nahulan, and Jordan Harband. #42675 Node.js ESM Loader hooks now support multiple custom loaders, and composition is achieved via "chaining": `foo-loader` calls `bar-loader` calls `qux-loader` (a custom loader _must_ now signal a short circuit when intentionally not calling the next). See the ESM docs (https://nodejs.org/dist/latest-v16.x/docs/api/esm.html) for details. Contributed by Jacob Smith, Geoffrey Booth, and Bradley Farias. #42623 The `node:test` module, which was initially introduced in Node.js v18.0.0, is now available with all the changes done to it up to Node.js v18.7.0. To better align Node.js' experimental implementation of the Web Crypto API with other runtimes, several changes were made: * Support for CFRG curves was added, with the `'Ed25519'`, `'Ed448'`, `'X25519'`, and `'X448'` algorithms. * The proprietary `'NODE-DSA'`, `'NODE-DH'`, `'NODE-SCRYPT'`, `'NODE-ED25519'`, `'NODE-ED448'`, `'NODE-X25519'`, and `'NODE-X448'` algorithms were removed. * The proprietary `'node.keyObject'` import/export format was removed. Contributed by Filip Skokan. #42507 #43310 Updated Corepack to 0.12.1 - #43965 Updated ICU to 71.1 - #42655 Updated npm to 8.15.0 - #43917 Updated Undici to 5.8.0 - #43886 (SEMVER-MINOR) crypto: make authTagLength optional for CC20P1305 (Tobias Nießen) #42427 (SEMVER-MINOR) crypto: align webcrypto RSA key import/export with other implementations (Filip Skokan) #42816 (SEMVER-MINOR) dns: export error code constants from `dns/promises` (Feng Yu) #43176 doc: deprecate coercion to integer in process.exit (Daeyeon Jeong) #43738 (SEMVER-MINOR) doc: deprecate diagnostics_channel object subscribe method (Stephen Belanger) #42714 (SEMVER-MINOR) errors: add support for cause in aborterror (James M Snell) #41008 (SEMVER-MINOR) events: expose CustomEvent on global with CLI flag (Daeyeon Jeong) #43885 (SEMVER-MINOR) events: add `CustomEvent` (Daeyeon Jeong) #43514 (SEMVER-MINOR) events: propagate abortsignal reason in new AbortError ctor in events (James M Snell) #41008 (SEMVER-MINOR) fs: propagate abortsignal reason in new AbortSignal constructors (James M Snell) #41008 (SEMVER-MINOR) fs: make params in writing methods optional (LiviaMedeiros) #42601 (SEMVER-MINOR) fs: add `read(buffer[, options])` versions (LiviaMedeiros) #42768 (SEMVER-MINOR) http: add drop request event for http server (theanarkh) #43806 (SEMVER-MINOR) http: add diagnostics channel for http client (theanarkh) #43580 (SEMVER-MINOR) http: add perf_hooks detail for http request and client (theanarkh) #43361 (SEMVER-MINOR) http: add uniqueHeaders option to request and createServer (Paolo Insogna) #41397 (SEMVER-MINOR) http2: propagate abortsignal reason in new AbortError constructor (James M Snell) #41008 (SEMVER-MINOR) http2: compat support for array headers (OneNail) #42901 (SEMVER-MINOR) lib: propagate abortsignal reason in new AbortError constructor in blob (James M Snell) #41008 (SEMVER-MINOR) lib: add abortSignal.throwIfAborted() (James M Snell) #40951 (SEMVER-MINOR) lib: improved diagnostics_channel subscribe/unsubscribe (Stephen Belanger) #42714 (SEMVER-MINOR) module: add isBuiltIn method (hemanth.hm) #43396 (SEMVER-MINOR) module,repl: support 'node:'-only core modules (Colin Ihrig) #42325 (SEMVER-MINOR) net: add drop event for net server (theanarkh) #43582 (SEMVER-MINOR) net: add ability to reset a tcp socket (pupilTong) #43112 (SEMVER-MINOR) node-api: emit uncaught-exception on unhandled tsfn callbacks (Chengzhong Wu) #36510 (SEMVER-MINOR) perf_hooks: add PerformanceResourceTiming (RafaelGSS) #42725 (SEMVER-MINOR) report: add more heap infos in process report (theanarkh) #43116 (SEMVER-MINOR) src: add --openssl-legacy-provider option (Daniel Bevenius) #40478 (SEMVER-MINOR) src: define fs.constants.S_IWUSR & S_IRUSR for Win (Liviu Ionescu) #42757 (SEMVER-MINOR) src,doc,test: add --openssl-shared-config option (Daniel Bevenius) #43124 (SEMVER-MINOR) stream: use cause options in AbortError constructors (James M Snell) #41008 (SEMVER-MINOR) stream: add iterator helper find (Nitzan Uziely) #41849 (SEMVER-MINOR) stream: add writableAborted (Robert Nagy) #40802 (SEMVER-MINOR) timers: propagate signal.reason in awaitable timers (James M Snell) #41008 (SEMVER-MINOR) v8: add v8.startupSnapshot utils (Joyee Cheung) #43329 (SEMVER-MINOR) v8: export more fields in getHeapStatistics (theanarkh) #42784 (SEMVER-MINOR) worker: add hasRef() to MessagePort (Darshan Sen) #42849 PR-URL: #44098
cd03cc3
to
30187ba
Compare
I rewrote the commit message. It should be better now. |
It might be too late, but the most recent version of npm is now 8.17.0 if we are able to update it prior to the release, but assuming you've done all the testing and that would be a big drag I wouldn't worry about it |
also I don't believe 8.17.0 went out in a node18 release yet, which is usually nicer to wait for |
What @ruyadorno said, and I don't have enough time to add more commits before the release. |
@nodejs/documentation I don't know how to handle the conflict about
I'm going to push with the first line. If that's wrong somebody can open a PR to fix it up. |
Both are wrong IIRC: |
Notable changes: Adds `util.parseArgs` helper for higher level command-line argument parsing. Contributed by Benjamin Coe, John Gee, Darcy Clarke, Joe Sepi, Kevin Gibbons, Aaron Casanova, Jessica Nahulan, and Jordan Harband. #42675 Node.js ESM Loader hooks now support multiple custom loaders, and composition is achieved via "chaining": `foo-loader` calls `bar-loader` calls `qux-loader` (a custom loader _must_ now signal a short circuit when intentionally not calling the next). See the ESM docs (https://nodejs.org/dist/latest-v16.x/docs/api/esm.html) for details. Contributed by Jacob Smith, Geoffrey Booth, and Bradley Farias. #42623 The `node:test` module, which was initially introduced in Node.js v18.0.0, is now available with all the changes done to it up to Node.js v18.7.0. To better align Node.js' experimental implementation of the Web Crypto API with other runtimes, several changes were made: * Support for CFRG curves was added, with the `'Ed25519'`, `'Ed448'`, `'X25519'`, and `'X448'` algorithms. * The proprietary `'NODE-DSA'`, `'NODE-DH'`, `'NODE-SCRYPT'`, `'NODE-ED25519'`, `'NODE-ED448'`, `'NODE-X25519'`, and `'NODE-X448'` algorithms were removed. * The proprietary `'node.keyObject'` import/export format was removed. Contributed by Filip Skokan. #42507 #43310 Updated Corepack to 0.12.1 - #43965 Updated ICU to 71.1 - #42655 Updated npm to 8.15.0 - #43917 Updated Undici to 5.8.0 - #43886 (SEMVER-MINOR) crypto: make authTagLength optional for CC20P1305 (Tobias Nießen) #42427 (SEMVER-MINOR) crypto: align webcrypto RSA key import/export with other implementations (Filip Skokan) #42816 (SEMVER-MINOR) dns: export error code constants from `dns/promises` (Feng Yu) #43176 doc: deprecate coercion to integer in process.exit (Daeyeon Jeong) #43738 (SEMVER-MINOR) doc: deprecate diagnostics_channel object subscribe method (Stephen Belanger) #42714 (SEMVER-MINOR) errors: add support for cause in aborterror (James M Snell) #41008 (SEMVER-MINOR) events: expose CustomEvent on global with CLI flag (Daeyeon Jeong) #43885 (SEMVER-MINOR) events: add `CustomEvent` (Daeyeon Jeong) #43514 (SEMVER-MINOR) events: propagate abortsignal reason in new AbortError ctor in events (James M Snell) #41008 (SEMVER-MINOR) fs: propagate abortsignal reason in new AbortSignal constructors (James M Snell) #41008 (SEMVER-MINOR) fs: make params in writing methods optional (LiviaMedeiros) #42601 (SEMVER-MINOR) fs: add `read(buffer[, options])` versions (LiviaMedeiros) #42768 (SEMVER-MINOR) http: add drop request event for http server (theanarkh) #43806 (SEMVER-MINOR) http: add diagnostics channel for http client (theanarkh) #43580 (SEMVER-MINOR) http: add perf_hooks detail for http request and client (theanarkh) #43361 (SEMVER-MINOR) http: add uniqueHeaders option to request and createServer (Paolo Insogna) #41397 (SEMVER-MINOR) http2: propagate abortsignal reason in new AbortError constructor (James M Snell) #41008 (SEMVER-MINOR) http2: compat support for array headers (OneNail) #42901 (SEMVER-MINOR) lib: propagate abortsignal reason in new AbortError constructor in blob (James M Snell) #41008 (SEMVER-MINOR) lib: add abortSignal.throwIfAborted() (James M Snell) #40951 (SEMVER-MINOR) lib: improved diagnostics_channel subscribe/unsubscribe (Stephen Belanger) #42714 (SEMVER-MINOR) module: add isBuiltIn method (hemanth.hm) #43396 (SEMVER-MINOR) module,repl: support 'node:'-only core modules (Colin Ihrig) #42325 (SEMVER-MINOR) net: add drop event for net server (theanarkh) #43582 (SEMVER-MINOR) net: add ability to reset a tcp socket (pupilTong) #43112 (SEMVER-MINOR) node-api: emit uncaught-exception on unhandled tsfn callbacks (Chengzhong Wu) #36510 (SEMVER-MINOR) perf_hooks: add PerformanceResourceTiming (RafaelGSS) #42725 (SEMVER-MINOR) report: add more heap infos in process report (theanarkh) #43116 (SEMVER-MINOR) src: add --openssl-legacy-provider option (Daniel Bevenius) #40478 (SEMVER-MINOR) src: define fs.constants.S_IWUSR & S_IRUSR for Win (Liviu Ionescu) #42757 (SEMVER-MINOR) src,doc,test: add --openssl-shared-config option (Daniel Bevenius) #43124 (SEMVER-MINOR) stream: use cause options in AbortError constructors (James M Snell) #41008 (SEMVER-MINOR) stream: add iterator helper find (Nitzan Uziely) #41849 (SEMVER-MINOR) stream: add writableAborted (Robert Nagy) #40802 (SEMVER-MINOR) timers: propagate signal.reason in awaitable timers (James M Snell) #41008 (SEMVER-MINOR) v8: add v8.startupSnapshot utils (Joyee Cheung) #43329 (SEMVER-MINOR) v8: export more fields in getHeapStatistics (theanarkh) #42784 (SEMVER-MINOR) worker: add hasRef() to MessagePort (Darshan Sen) #42849 PR-URL: #44098
Also @nodejs/releasers @MylesBorins note that https://github.com/nodejs/node/releases/tag/v16.17.0 is truncated because GitHub imposes a size limit on the contents. |
Notable changes: Adds `util.parseArgs` helper for higher level command-line argument parsing. Contributed by Benjamin Coe, John Gee, Darcy Clarke, Joe Sepi, Kevin Gibbons, Aaron Casanova, Jessica Nahulan, and Jordan Harband. nodejs#42675 Node.js ESM Loader hooks now support multiple custom loaders, and composition is achieved via "chaining": `foo-loader` calls `bar-loader` calls `qux-loader` (a custom loader _must_ now signal a short circuit when intentionally not calling the next). See the ESM docs (https://nodejs.org/dist/latest-v16.x/docs/api/esm.html) for details. Contributed by Jacob Smith, Geoffrey Booth, and Bradley Farias. nodejs#42623 The `node:test` module, which was initially introduced in Node.js v18.0.0, is now available with all the changes done to it up to Node.js v18.7.0. To better align Node.js' experimental implementation of the Web Crypto API with other runtimes, several changes were made: * Support for CFRG curves was added, with the `'Ed25519'`, `'Ed448'`, `'X25519'`, and `'X448'` algorithms. * The proprietary `'NODE-DSA'`, `'NODE-DH'`, `'NODE-SCRYPT'`, `'NODE-ED25519'`, `'NODE-ED448'`, `'NODE-X25519'`, and `'NODE-X448'` algorithms were removed. * The proprietary `'node.keyObject'` import/export format was removed. Contributed by Filip Skokan. nodejs#42507 nodejs#43310 Updated Corepack to 0.12.1 - nodejs#43965 Updated ICU to 71.1 - nodejs#42655 Updated npm to 8.15.0 - nodejs#43917 Updated Undici to 5.8.0 - nodejs#43886 (SEMVER-MINOR) crypto: make authTagLength optional for CC20P1305 (Tobias Nießen) nodejs#42427 (SEMVER-MINOR) crypto: align webcrypto RSA key import/export with other implementations (Filip Skokan) nodejs#42816 (SEMVER-MINOR) dns: export error code constants from `dns/promises` (Feng Yu) nodejs#43176 doc: deprecate coercion to integer in process.exit (Daeyeon Jeong) nodejs#43738 (SEMVER-MINOR) doc: deprecate diagnostics_channel object subscribe method (Stephen Belanger) nodejs#42714 (SEMVER-MINOR) errors: add support for cause in aborterror (James M Snell) nodejs#41008 (SEMVER-MINOR) events: expose CustomEvent on global with CLI flag (Daeyeon Jeong) nodejs#43885 (SEMVER-MINOR) events: add `CustomEvent` (Daeyeon Jeong) nodejs#43514 (SEMVER-MINOR) events: propagate abortsignal reason in new AbortError ctor in events (James M Snell) nodejs#41008 (SEMVER-MINOR) fs: propagate abortsignal reason in new AbortSignal constructors (James M Snell) nodejs#41008 (SEMVER-MINOR) fs: make params in writing methods optional (LiviaMedeiros) nodejs#42601 (SEMVER-MINOR) fs: add `read(buffer[, options])` versions (LiviaMedeiros) nodejs#42768 (SEMVER-MINOR) http: add drop request event for http server (theanarkh) nodejs#43806 (SEMVER-MINOR) http: add diagnostics channel for http client (theanarkh) nodejs#43580 (SEMVER-MINOR) http: add perf_hooks detail for http request and client (theanarkh) nodejs#43361 (SEMVER-MINOR) http: add uniqueHeaders option to request and createServer (Paolo Insogna) nodejs#41397 (SEMVER-MINOR) http2: propagate abortsignal reason in new AbortError constructor (James M Snell) nodejs#41008 (SEMVER-MINOR) http2: compat support for array headers (OneNail) nodejs#42901 (SEMVER-MINOR) lib: propagate abortsignal reason in new AbortError constructor in blob (James M Snell) nodejs#41008 (SEMVER-MINOR) lib: add abortSignal.throwIfAborted() (James M Snell) nodejs#40951 (SEMVER-MINOR) lib: improved diagnostics_channel subscribe/unsubscribe (Stephen Belanger) nodejs#42714 (SEMVER-MINOR) module: add isBuiltIn method (hemanth.hm) nodejs#43396 (SEMVER-MINOR) module,repl: support 'node:'-only core modules (Colin Ihrig) nodejs#42325 (SEMVER-MINOR) net: add drop event for net server (theanarkh) nodejs#43582 (SEMVER-MINOR) net: add ability to reset a tcp socket (pupilTong) nodejs#43112 (SEMVER-MINOR) node-api: emit uncaught-exception on unhandled tsfn callbacks (Chengzhong Wu) nodejs#36510 (SEMVER-MINOR) perf_hooks: add PerformanceResourceTiming (RafaelGSS) nodejs#42725 (SEMVER-MINOR) report: add more heap infos in process report (theanarkh) nodejs#43116 (SEMVER-MINOR) src: add --openssl-legacy-provider option (Daniel Bevenius) nodejs#40478 (SEMVER-MINOR) src: define fs.constants.S_IWUSR & S_IRUSR for Win (Liviu Ionescu) nodejs#42757 (SEMVER-MINOR) src,doc,test: add --openssl-shared-config option (Daniel Bevenius) nodejs#43124 (SEMVER-MINOR) stream: use cause options in AbortError constructors (James M Snell) nodejs#41008 (SEMVER-MINOR) stream: add iterator helper find (Nitzan Uziely) nodejs#41849 (SEMVER-MINOR) stream: add writableAborted (Robert Nagy) nodejs#40802 (SEMVER-MINOR) timers: propagate signal.reason in awaitable timers (James M Snell) nodejs#41008 (SEMVER-MINOR) v8: add v8.startupSnapshot utils (Joyee Cheung) nodejs#43329 (SEMVER-MINOR) v8: export more fields in getHeapStatistics (theanarkh) nodejs#42784 (SEMVER-MINOR) worker: add hasRef() to MessagePort (Darshan Sen) nodejs#42849 PR-URL: nodejs#44098
Notable changes: Adds `util.parseArgs` helper for higher level command-line argument parsing. Contributed by Benjamin Coe, John Gee, Darcy Clarke, Joe Sepi, Kevin Gibbons, Aaron Casanova, Jessica Nahulan, and Jordan Harband. nodejs/node#42675 Node.js ESM Loader hooks now support multiple custom loaders, and composition is achieved via "chaining": `foo-loader` calls `bar-loader` calls `qux-loader` (a custom loader _must_ now signal a short circuit when intentionally not calling the next). See the ESM docs (https://nodejs.org/dist/latest-v16.x/docs/api/esm.html) for details. Contributed by Jacob Smith, Geoffrey Booth, and Bradley Farias. nodejs/node#42623 The `node:test` module, which was initially introduced in Node.js v18.0.0, is now available with all the changes done to it up to Node.js v18.7.0. To better align Node.js' experimental implementation of the Web Crypto API with other runtimes, several changes were made: * Support for CFRG curves was added, with the `'Ed25519'`, `'Ed448'`, `'X25519'`, and `'X448'` algorithms. * The proprietary `'NODE-DSA'`, `'NODE-DH'`, `'NODE-SCRYPT'`, `'NODE-ED25519'`, `'NODE-ED448'`, `'NODE-X25519'`, and `'NODE-X448'` algorithms were removed. * The proprietary `'node.keyObject'` import/export format was removed. Contributed by Filip Skokan. nodejs/node#42507 nodejs/node#43310 Updated Corepack to 0.12.1 - nodejs/node#43965 Updated ICU to 71.1 - nodejs/node#42655 Updated npm to 8.15.0 - nodejs/node#43917 Updated Undici to 5.8.0 - nodejs/node#43886 (SEMVER-MINOR) crypto: make authTagLength optional for CC20P1305 (Tobias Nießen) nodejs/node#42427 (SEMVER-MINOR) crypto: align webcrypto RSA key import/export with other implementations (Filip Skokan) nodejs/node#42816 (SEMVER-MINOR) dns: export error code constants from `dns/promises` (Feng Yu) nodejs/node#43176 doc: deprecate coercion to integer in process.exit (Daeyeon Jeong) nodejs/node#43738 (SEMVER-MINOR) doc: deprecate diagnostics_channel object subscribe method (Stephen Belanger) nodejs/node#42714 (SEMVER-MINOR) errors: add support for cause in aborterror (James M Snell) nodejs/node#41008 (SEMVER-MINOR) events: expose CustomEvent on global with CLI flag (Daeyeon Jeong) nodejs/node#43885 (SEMVER-MINOR) events: add `CustomEvent` (Daeyeon Jeong) nodejs/node#43514 (SEMVER-MINOR) events: propagate abortsignal reason in new AbortError ctor in events (James M Snell) nodejs/node#41008 (SEMVER-MINOR) fs: propagate abortsignal reason in new AbortSignal constructors (James M Snell) nodejs/node#41008 (SEMVER-MINOR) fs: make params in writing methods optional (LiviaMedeiros) nodejs/node#42601 (SEMVER-MINOR) fs: add `read(buffer[, options])` versions (LiviaMedeiros) nodejs/node#42768 (SEMVER-MINOR) http: add drop request event for http server (theanarkh) nodejs/node#43806 (SEMVER-MINOR) http: add diagnostics channel for http client (theanarkh) nodejs/node#43580 (SEMVER-MINOR) http: add perf_hooks detail for http request and client (theanarkh) nodejs/node#43361 (SEMVER-MINOR) http: add uniqueHeaders option to request and createServer (Paolo Insogna) nodejs/node#41397 (SEMVER-MINOR) http2: propagate abortsignal reason in new AbortError constructor (James M Snell) nodejs/node#41008 (SEMVER-MINOR) http2: compat support for array headers (OneNail) nodejs/node#42901 (SEMVER-MINOR) lib: propagate abortsignal reason in new AbortError constructor in blob (James M Snell) nodejs/node#41008 (SEMVER-MINOR) lib: add abortSignal.throwIfAborted() (James M Snell) nodejs/node#40951 (SEMVER-MINOR) lib: improved diagnostics_channel subscribe/unsubscribe (Stephen Belanger) nodejs/node#42714 (SEMVER-MINOR) module: add isBuiltIn method (hemanth.hm) nodejs/node#43396 (SEMVER-MINOR) module,repl: support 'node:'-only core modules (Colin Ihrig) nodejs/node#42325 (SEMVER-MINOR) net: add drop event for net server (theanarkh) nodejs/node#43582 (SEMVER-MINOR) net: add ability to reset a tcp socket (pupilTong) nodejs/node#43112 (SEMVER-MINOR) node-api: emit uncaught-exception on unhandled tsfn callbacks (Chengzhong Wu) nodejs/node#36510 (SEMVER-MINOR) perf_hooks: add PerformanceResourceTiming (RafaelGSS) nodejs/node#42725 (SEMVER-MINOR) report: add more heap infos in process report (theanarkh) nodejs/node#43116 (SEMVER-MINOR) src: add --openssl-legacy-provider option (Daniel Bevenius) nodejs/node#40478 (SEMVER-MINOR) src: define fs.constants.S_IWUSR & S_IRUSR for Win (Liviu Ionescu) nodejs/node#42757 (SEMVER-MINOR) src,doc,test: add --openssl-shared-config option (Daniel Bevenius) nodejs/node#43124 (SEMVER-MINOR) stream: use cause options in AbortError constructors (James M Snell) nodejs/node#41008 (SEMVER-MINOR) stream: add iterator helper find (Nitzan Uziely) nodejs/node#41849 (SEMVER-MINOR) stream: add writableAborted (Robert Nagy) nodejs/node#40802 (SEMVER-MINOR) timers: propagate signal.reason in awaitable timers (James M Snell) nodejs/node#41008 (SEMVER-MINOR) v8: add v8.startupSnapshot utils (Joyee Cheung) nodejs/node#43329 (SEMVER-MINOR) v8: export more fields in getHeapStatistics (theanarkh) nodejs/node#42784 (SEMVER-MINOR) worker: add hasRef() to MessagePort (Darshan Sen) nodejs/node#42849 PR-URL: nodejs/node#44098
Scheduled date
2022-08-16
Release candidate
https://nodejs.org/download/rc/v16.17.0-rc.1/
Classified list of commits
https://github.com/nodejs/node/blob/v16.17.0-proposal/doc/changelogs/CHANGELOG_V16.md#commits
Notable Changes
Experimental command-line argument parser API
Adds
util.parseArgs
helper for higher level command-line argument parsing.Contributed by Benjamin Coe, John Gee, Darcy Clarke, Joe Sepi, Kevin Gibbons, Aaron Casanova, Jessica Nahulan, and Jordan Harband - #42675
Experimental ESM Loader Hooks API
Node.js ESM Loader hooks now support multiple custom loaders, and composition is
achieved via "chaining":
foo-loader
callsbar-loader
callsqux-loader
(a custom loader must now signal a short circuit when intentionally not
calling the next). See the ESM docs for details.
Real-world use-cases are laid out for end-users with working examples in the
article Custom ESM loaders: Who, what, when, where, why, how.
Contributed by Jacob Smith, Geoffrey Booth, and Bradley Farias - #42623
Experimental test runner
The
node:test
module, which was initially introduced in Node.js v18.0.0,is now available with all the changes done to it up to Node.js v18.7.0.
Improved interoperability of the Web Crypto API
To better align Node.js' experimental implementation of the Web Crypto API with other runtimes, several changes were made:
'Ed25519'
,'Ed448'
,'X25519'
, and'X448'
algorithms.'NODE-DSA'
,'NODE-DH'
,'NODE-SCRYPT'
,'NODE-ED25519'
,'NODE-ED448'
,'NODE-X25519'
, and'NODE-X448'
algorithms were removed.'node.keyObject'
import/export format was removed.Contributed by Filip Skokan - #42507, #43310
Dependency updates
Other notable changes
5f1e9e2030
] - (SEMVER-MINOR) crypto: make authTagLength optional for CC20P1305 (Tobias Nießen) #42427934077a137
] - (SEMVER-MINOR) crypto: align webcrypto RSA key import/export with other implementations (Filip Skokan) #428167683e9623c
] - (SEMVER-MINOR) dns: export error code constants fromdns/promises
(Feng Yu) #43176302a134b83
] - doc: deprecate coercion to integer in process.exit (Daeyeon Jeong) #437384884f18ce5
] - (SEMVER-MINOR) doc: deprecate diagnostics_channel object subscribe method (Stephen Belanger) #4271490f395dda9
] - (SEMVER-MINOR) errors: add support for cause in aborterror (James M Snell) #410087a5de2cc0c
] - (SEMVER-MINOR) events: expose CustomEvent on global with CLI flag (Daeyeon Jeong) #43885087adbb7a3
] - (SEMVER-MINOR) events: addCustomEvent
(Daeyeon Jeong) #43514979c98a3cb
] - (SEMVER-MINOR) events: propagate abortsignal reason in new AbortError ctor in events (James M Snell) #41008e04c8a4921
] - (SEMVER-MINOR) fs: propagate abortsignal reason in new AbortSignal constructors (James M Snell) #41008464830993e
] - (SEMVER-MINOR) fs: make params in writing methods optional (LiviaMedeiros) #426013d7808ec3f
] - (SEMVER-MINOR) fs: addread(buffer[, options])
versions (LiviaMedeiros) #42768082a2630fd
] - (SEMVER-MINOR) http: add drop request event for http server (theanarkh) #438065a74939770
] - (SEMVER-MINOR) http: add diagnostics channel for http client (theanarkh) #43580f05fd1a423
] - (SEMVER-MINOR) http: add perf_hooks detail for http request and client (theanarkh) #433619d1b4b7e29
] - (SEMVER-MINOR) http: add uniqueHeaders option to request and createServer (Paolo Insogna) #41397fa5ac5a2eb
] - (SEMVER-MINOR) http2: propagate abortsignal reason in new AbortError constructor (James M Snell) #4100894070f152e
] - (SEMVER-MINOR) http2: compat support for array headers (OneNail) #4290136dd39dec0
] - (SEMVER-MINOR) lib: propagate abortsignal reason in new AbortError constructor in blob (James M Snell) #410088adf7d5e91
] - (SEMVER-MINOR) lib: add abortSignal.throwIfAborted() (James M Snell) #409513c1ed86840
] - (SEMVER-MINOR) lib: improved diagnostics_channel subscribe/unsubscribe (Stephen Belanger) #42714e6186af5cc
] - (SEMVER-MINOR) module: add isBuiltIn method (hemanth.hm) #433963d851d6d6b
] - (SEMVER-MINOR) module,repl: support 'node:'-only core modules (Colin Ihrig) #42325303bd08d88
] - (SEMVER-MINOR) net: add drop event for net server (theanarkh) #43582da03e9f484
] - (SEMVER-MINOR) net: add ability to reset a tcp socket (pupilTong) #4311273f852e1e3
] - (SEMVER-MINOR) node-api: emit uncaught-exception on unhandled tsfn callbacks (Chengzhong Wu) #365106dcdcd7f50
] - (SEMVER-MINOR) perf_hooks: add PerformanceResourceTiming (RafaelGSS) #427255750358872
] - (SEMVER-MINOR) report: add more heap infos in process report (theanarkh) #43116e7b99e8c8d
] - (SEMVER-MINOR) src: add --openssl-legacy-provider option (Daniel Bevenius) #404781281a48b89
] - (SEMVER-MINOR) src: define fs.constants.S_IWUSR & S_IRUSR for Win (Liviu Ionescu) #427579ea9797d34
] - (SEMVER-MINOR) src,doc,test: add --openssl-shared-config option (Daniel Bevenius) #43124046debaee0
] - (SEMVER-MINOR) stream: use cause options in AbortError constructors (James M Snell) #410086641fda10a
] - (SEMVER-MINOR) stream: add iterator helper find (Nitzan Uziely) #41849edec73032c
] - (SEMVER-MINOR) stream: add writableAborted (Robert Nagy) #408022aae868fa2
] - (SEMVER-MINOR) timers: propagate signal.reason in awaitable timers (James M Snell) #41008513f52445b
] - (SEMVER-MINOR) v8: add v8.startupSnapshot utils (Joyee Cheung) #43329a8eca74450
] - (SEMVER-MINOR) v8: export more fields in getHeapStatistics (theanarkh) #42784845279e331
] - (SEMVER-MINOR) worker: add hasRef() to MessagePort (Darshan Sen) #42849