v15.13.0 proposal #37977
v15.13.0 proposal #37977
Conversation
Update ESLint to 7.22.0 PR-URL: #37734 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: #37765 Reviewed-By: Ujjwal Sharma <ryzokuken@disroot.org> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Mary Marchini <oss@mmarchini.me> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
A gc may happen during environment teardown. Thus, during finalization initiated by environment teardown we must remove the V8 finalizer before calling the Node-API finalizer. Fixes: #37236 PR-URL: #37616 Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
Instead of writing each Math function and keeping track, loop over Math functions and test each one of them. PR-URL: #37670 Reviewed-By: Darshan Sen <raisinten@gmail.com>
PR-URL: #37716 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Pooja D P <Pooja.D.P@ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
PR-URL: #37738 Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com> Reviewed-By: Pooja D P <Pooja.D.P@ibm.com>
'referred' was spelled as 'refered' PR-URL: #37741 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Pooja D P <Pooja.D.P@ibm.com>
PR-URL: #37773 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com> Reviewed-By: Pooja D P <Pooja.D.P@ibm.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
If the shared openssl does not have the `OPENSSL_INFO_QUIC` define, then it definitely does not have the QUIC apis. This is only a partially accurate check because it does not detect if the shared openssl was actually *built* without the OPENSSL_NO_QUIC define set. Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: #37682 Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reintroduces the ngtcp2 and nghttp3 dependencies, building those by default if the vendored-in openssl (with QUIC support) is used or the shared openssl defines `OPENSSL_INFO_QUIC`. Upates the version metadata to reflect whether ngtcp2 and nghttp3 are present. ngtcp2 as of ngtcp2/ngtcp2@2381f7f nghttp3 as of ngtcp2/nghttp3@66ad30f Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: #37682 Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
PR-URL: #37720 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: #37758 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: #37784 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
Signed-off-by: James M Snell <jasnell@gmail.com> Fixes: #25099 PR-URL: #37784 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: #37784 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
Conclude winter break and resume collaboratorship at start of spring. Refs: #36514 PR-URL: #37726 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: Geoffrey Booth <webmaster@geoffreybooth.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>
PR-URL: #37793 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #37791 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
PR-URL: #37798 Refs: whatwg/dom#960 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com>
Fix an issue where AbortSignals are registered twice PR-URL: #37730 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Remove the comma-dangle settings in tools/.eslintrc.yaml. They are duplicated in .eslintrc.js. PR-URL: #37883 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
TSC charter changes can be approved by the Cross-Project Council. PR-URL: #37888 Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Currently, when a JS Http2Session object is created, we have to handle the situation in which the native object corresponding to it does not yet exist. As part of that, we create a typed array for storing options that are passed through the `AliasedStruct` mechanism, and up until now, we copied that typed array over the native one once the native one was available. This was not good, because it was overwriting the defaults that were set during construction of the native typed array with zeroes. In order to fix this, create a wrapper for the JS-created typed array that keeps track of which fields were changed, which enables us to only overwrite fields that were intentionally changed on the JS side. It is surprising that this behavior was not tested (which is, guessing from the commit history around these features, my fault). The subseqeuent commit introduces a test that would fail without this change. PR-URL: #37875 Fixes: #37849 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Use the existing mechanism that we have to keep track of invalid frames for treating this specific kind of invalid frame. The commit that originally introduced this check was 695e38b, which was supposed to proected against CVE-2019-9518, which in turn was specifically about a *flood* of empty data frames. While these are still invalid frames either way, it makes sense to be forgiving here and just treat them like other invalid frames, i.e. to allow a small (configurable) number of them. Fixes: #37849 PR-URL: #37875 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: #37919 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com>
PR-URL: #37942 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
The internal validateTimeout() takes a single parameter, so do not pass a second value. PR-URL: #37923 Reviewed-By: Zijian Liu <lxxyxzj@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
The typeof operator returns a string. Compare to the string 'undefined' and not the value undefined. PR-URL: #37924 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Require that `typeof` comparisons be to string literals. PR-URL: #37924 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #37956 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
PR-URL: #37785 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Beth Griggs <bgriggs@redhat.com> Reviewed-By: Pooja D P <Pooja.D.P@ibm.com>
Fix errors that are caused by invoking clearImmediate with arbitrary objects. fixes: #37806 PR-URL: #37824 Fixes: #37806 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
These values were added in v15.0.0 by #33475 but were not included in the `node --help` output. Also documents which value is the default. PR-URL: #37899 Fixes: #37896 Refs: #33475 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
The previous code passed an ignored argument to StringPrototypeTrimLeft, and tried to trim a string that didn't start with whitespace. The trim makes more sense after the indentation has been added. Now wrapped lines actually show up with the rest of the help text. Doing this made an uncharacteristic trailing newline in the `--icu-data-dir` help text more obvious, so I removed that. PR-URL: #37911 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #37658 Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Pooja D P <Pooja.D.P@ibm.com>
Convert invariant from if statement to an assertion. The condition is believed to be impossible to trigger. PR-URL: #37941 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Refs: https://www.w3.org/TR/hr-time/#sec-performance PR-URL: #37621 Backport-PR-URL: #37832 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Because of lazy loading, running promisified timers tests for setTimeout and setImmediate from the same file means that there is a piece of code that doesn't get covered. Split into separate files to cover everything. Refs: https://coverage.nodejs.org/coverage-290c158018ac0277/lib/timers.js.html#L269 PR-URL: #37943 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com>
PR-URL: #37968 Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: #37977 Notable changes: * buffer: * implement btoa and atob (James M Snell) #37529 * deps: * upgrade npm to 7.7.6 (Ruy Adorno) #37968 * doc: * add legacy status to stability index (James M Snell) #37784 * add @Linkgoron to collaborators (Nitzan Uziely) #37817 * http: * add http.ClientRequest.getRawHeaderNames() (simov) #37660

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.

2021-03-31, Version 15.13.0 (Current), @ruyadorno
Notable Changes
npm runandnpm execCommits
dc9cd43d8f] - (SEMVER-MINOR) buffer: implement btoa and atob (James M Snell) #37529377830fd28] - child_process: remove unused argument (Rich Trott) #37923cdfc1c8692] - child_process: cleanup AbortSignal duplication (Nitzan Uziely) #3782395aa032413] - (SEMVER-MINOR) child_process: add timeout to spawn and fork (Nitzan Uziely) #3725650fc6b9df0] - crypto: clear errors in SignTraits::DeriveBits (Filip Skokan) #3782079259389a1] - crypto: fix DiffieHellman argument validation (Antoine du Hamel) #3781011d45855cd] - crypto: fix header name (Jiawen Geng) #37792c37806d0ba] - crypto: use macro map for NodeCryptoError (Darshan Sen) #37758bfe3f21ee0] - crypto: fix crypto.verify callback invocation with a private keyobject (Filip Skokan) #37795f2cef54b6f] - deps: upgrade npm to 7.7.6 (Ruy Adorno) #37968ec82feb728] - deps: upgrade npm to 7.7.5 (Ruy Adorno) #37919649e04c4a5] - deps: upgrade npm to 7.7.4 (Ruy Adorno) #37897d5b472b70d] - deps: upgrade npm to 7.7.0 (Ruy Adorno) #378799e6aa190e3] - deps: add ngtcp2 and nghttp3 (James M Snell) #37682659fc5d684] - doc: fix typos in lib/internal/bootstrap/pre_execution.js (marsonya) #37658ac60d018e2] - doc: add more commands for cherry-picking and changelog to release docs (Danielle Adams) #377850fe3c7edd3] - doc: spell out ICU acronym on first occurrence (Rich Trott) #37942364c8ac40d] - doc: update GOVERNANCE.md for TSC Charter changes (Rich Trott) #37888e84252b35d] - doc: reduce header nesting in async_hooks.md (Rich Trott) #37839a6f21e2cfc] - doc: fix wording in outgoingMessage.write (Tobias Nießen) #3789430bc2e43e4] - doc: add examples for WHATWG URL objects (James M Snell) #37822c0a424f3e9] - doc: clarify when child process 'spawn' event is *not* emitted (Matthew Francis Brunetti) #378339defe10371] - doc: fix legacy stability indicator display (Rich Trott) #37838f97a5dd22f] - doc: use sentence-style capitlaztion in template header (Rich Trott) #3783771fde07274] - doc: add Ayase-252 to triagers (Qingyu Deng) #377818f18133de0] - doc: use sentence case in issues.md headers (marsonya) #375373376051a0e] - doc: fix JS flavor selection (Antoine du Hamel) #37791b09d032683] - doc: move Derek Lewis back to collaborators (Derek Lewis) #377266da0a0e85a] - doc: apply style for legacy status (James M Snell) #37784185d4cd4aa] - doc: revoke deprecation of legacy url, change status to legacy (James M Snell) #377849d160daa89] - doc: add legacy status to stability index (James M Snell) #377844700042a9b] - doc: add @Linkgoron to collaborators (Nitzan Uziely) #37817c4183bbea4] - doc: fix AbortError example for timers (dbachko) #3773850f3ad1946] - doc: fix typo in stream docs (Ian Kerins) #377162e82a97520] - doc: add gyp maintain info (Jiawen Geng) #377653925458df7] - doc,tools: use only one level 1 header per page (Rich Trott) #37839e9c161ce12] - http: fix double AbortSignal registration (Nitzan Uziely) #37730a5205819d8] - (SEMVER-MINOR) http: add http.ClientRequest.getRawHeaderNames() (simov) #376601c043272ea] - http2: treat non-EOF empty frames like other invalid frames (Anna Henningsen) #37875a5bf7de6eb] - http2: fix setting options before handle exists (Anna Henningsen) #37875af7489cb6c] - lib: add brand checks to AbortController and AbortSignal (Mattias Buelens) #377206e2b60931c] - lib: fix typo in internal/modules/esm/module_job.js (marsonya) #377733a440ecdf8] - lib: fix typo in lib/internal/crypto/certificate.js (marsonya) #377413ab223dd32] - node-api: fix crash in finalization (Michael Dawson) #37876d1a3e0efb6] - node-api: stop ref gc during environment teardown (Gabriel Schulhof) #37616e60bd1a7dc] - (SEMVER-MINOR) perf_hooks: make Performance extend EventTarget (Michaël Zasso) #37621b6ad8e4cc1] - src: indent long help text properly (David Glasser) #3791113ecff63d6] - src: document newer values for --unhandled-rejections flag (David Glasser) #37899bd87e195ed] - src: fix typo in src code guide (Tobias Nießen) #379562da532cef8] - src: report idle time correctly (Stephen Belanger) #37868836cb67945] - src: add .note.GNU-stack section (James Addison) #376889557dda2eb] - (SEMVER-MINOR) stream: pipeline accept Buffer as a valid first argument (Nitzan Uziely) #3773943c3b43ea3] - stream: make Readable.from performance better (wwwzbwcom) #37609b0226b39f2] - test: split promisified timers test for coverage purposes (Rich Trott) #37943e256c4d11d] - test: fix typeof comparison (Rich Trott) #3792476ebc4bbd9] - test: increase wiggle room for memory in test-worker-resource-limits (Rich Trott) #379015cdeb76708] - test: add OpenSSL 3.0 checks to tls-passphrase (Daniel Bevenius) #3786033c35a38dc] - test: add OpenSSL 3.0 checks to test-crypto-keygen (Daniel Bevenius) #3786086bf341a35] - test: fix deprecation warning in test-doctool-html (Antoine du Hamel) #37858aa529b73b7] - test: fix ibmi skip message (Tobias Nießen) #37821d9ab1d56ce] - test: fix flaky test-vm-timeout-escape-promise-module-2 (Rich Trott) #378425d4c610727] - test: remove duplicated test for eventtarget (himself65) #3785344490af948] - test: relax Y2K38 check in test-fs-utimes-y2K38 (Richard Lau) #378259bc6fe7eb3] - test: remove references to unsupported AIX versions (Richard Lau) #37826f07428ae51] - test: remove skip for fixed test-benchmark-fs (Rich Trott) #378039f61cbd1fd] - test: account for OOM risks in heapsnapshot-near-heap-limit tests (Joyee Cheung) #37761e85f311cf2] - test: refactor code to use AbortSignal.abort() (Wassim Chegham) #377986ed9e0bd81] - test: improve test-arm-math-illegal-instruction (marsonya) #37670505f9c95d1] - (SEMVER-MINOR) test: app atob web platform tests (James M Snell) #37529a8edf1aafe] - test: add known_issues test for #13683 (Rich Trott) #377444487483d9d] - test: fix test-fs-utimes on non-Y2K38 file systems (Rich Trott) #37707d44b268910] - timers: fix arbitrary object clearImmediate errors (Nitzan Uziely) #37824b7e7384109] - tools: improve valid-typeof lint rule (Rich Trott) #37924ca93e52783] - tools: simplify eslint comma-dangle configuration (tools) (Rich Trott) #37883b5879efef1] - tools: improve macos-firewall.sh output (Rich Trott) #37846dbc4804468] - tools: simplify eslint comma-dangle configuration (Rich Trott) #378500f2e142946] - tools: make genv8constants.py Python3-compatible (Michaël Zasso) #37835b6be472456] - tools: update gitignore for CMake (Jiawen Geng) #377932227aa61ea] - tools: partially detect quic support in shared_openssl (James M Snell) #3768201dcf4d1d8] - tools: update ESLint to 7.22.0 (Colin Ihrig) #377343452618905] - tty: validate file descriptor to avoid int32 overflow (Antoine du Hamel) #37809d33f446abd] - util: remove unreachable inspect code (Rich Trott) #37941