Skip to content
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

v20.18.0 release proposal #55170

Merged
merged 281 commits into from
Oct 3, 2024
Merged

v20.18.0 release proposal #55170

merged 281 commits into from
Oct 3, 2024

Conversation

targos
Copy link
Member

@targos targos commented Sep 30, 2024

2024-10-03, Version 20.18.0 'Iron' (LTS), @targos

Notable Changes

Experimental Network Inspection Support in Node.js

This update introduces the initial support for network inspection in Node.js.
Currently, this is an experimental feature, so you need to enable it using the --experimental-network-inspection flag.
With this feature enabled, you can inspect network activities occurring within a JavaScript application.

To use network inspection, start your Node.js application with the following command:

$ node --inspect-wait --experimental-network-inspection index.js

Please note that the network inspection capabilities are in active development.
We are actively working on enhancing this feature and will continue to expand its functionality in future updates.

Contributed by Kohei Ueno in #53593 and #54246

Exposes X509_V_FLAG_PARTIAL_CHAIN to tls.createSecureContext

This releases introduces a new option to the API tls.createSecureContext. From
now on, tls.createSecureContext({ allowPartialTrustChain: true }) can be used
to treat intermediate (non-self-signed) certificates in the trust CA certificate
list as trusted.

Contributed by Anna Henningsen in #54790

New option for vm.createContext() to create a context with a freezable globalThis

Node.js implements a flavor of vm.createContext() and friends that creates a context without contextifying its global
object when vm.constants.DONT_CONTEXTIFY is used. This is suitable when users want to freeze the context
(impossible when the global is contextified i.e. has interceptors installed) or speed up the global access if they
don't need the interceptor behavior.

Contributed by Joyee Cheung in #54394

Deprecations

  • [64aa31f6e5] - repl: doc-deprecate instantiating node:repl classes without new (Aviv Keller) #54842
  • [4c52ee3d7f] - zlib: deprecate instantiating classes without new (Yagiz Nizipli) #54708

Other Notable Changes

  • [b80da2f964] - buffer: optimize createFromString (Robert Nagy) #54324
  • [02b36cbd2d] - (SEMVER-MINOR) lib: add EventSource Client (Aras Abbasi) #51575
  • [879546a9bf] - (SEMVER-MINOR) src,lib: add performance.uvMetricsInfo (Rafael Gonzaga) #54413
  • [f789f4c92d] - (SEMVER-MINOR) test_runner: support module mocking (Colin Ihrig) #52848
  • [4eb0749b6c] - (SEMVER-MINOR) url: implement parse method for safer URL parsing (Ali Hassan) #52280

Commits

  • [013c48f0e9] - benchmark: --no-warnings to avoid DEP/ExpWarn log (Rafael Gonzaga) #54928
  • [194fc113ac] - benchmark: add buffer.isAscii benchmark (RafaelGSS) #54740
  • [7410d51cb9] - benchmark: add buffer.isUtf8 bench (RafaelGSS) #54740
  • [2393f21e8a] - benchmark: add access async version to bench (Rafael Gonzaga) #54747
  • [b8779721f0] - benchmark: enhance dc publish benchmark (Rafael Gonzaga) #54745
  • [4078aa83ff] - benchmark: add match and doesNotMatch bench (RafaelGSS) #54734
  • [66acab9976] - benchmark: add rejects and doesNotReject bench (RafaelGSS) #54734
  • [6db777fb3a] - benchmark: add throws and doesNotThrow bench (RafaelGSS) #54734
  • [8f101560ce] - benchmark: add strictEqual and notStrictEqual bench (RafaelGSS) #54734
  • [2c9e4c936e] - benchmark: adds groups to better separate benchmarks (Giovanni Bucci) #54393
  • [671c3ac633] - benchmark: fix benchmark for file path and URL conversion (Early Riser) #54190
  • [8c8708cb5b] - benchmark: use assert.ok searchparams (Rafael Gonzaga) #54334
  • [8b71fa79e2] - benchmark: add stream.compose benchmark (jakecastelli) #54308
  • [93ee36e3a0] - benchmark: rename count to n (Rafael Gonzaga) #54271
  • [f2971b6f0b] - benchmark: change assert() to assert.ok() (Rafael Gonzaga) #54254
  • [f48f2c212c] - benchmark: support --help in CLI (Aviv Keller) #53358
  • [0309b0520b] - benchmark: remove force option as force defaults to true (Yelim Koo) #54203
  • [b6e8305b2d] - benchmark: use assert.ok instead of assert (Rafael Gonzaga) #54176
  • [90c660d26a] - benchmark: add require-esm benchmark (Joyee Cheung) #52166
  • [1b8584b52e] - benchmark,doc: add CPU scaling governor to perf (Rafael Gonzaga) #54723
  • [0b9161b330] - benchmark,doc: mention bar.R to the list of scripts (Rafael Gonzaga) #54722
  • [84bf93b7ea] - buffer: allow invalid encoding in from (Robert Nagy) #54533
  • [d04246a0d7] - buffer: optimize byteLength for common encodings (Robert Nagy) #54342
  • [f36831f694] - buffer: optimize createFromString (Robert Nagy) #54324
  • [f5f40c8088] - buffer: optimize for common encodings (Robert Nagy) #54319
  • [76c37703be] - buffer: add JSDoc to blob bytes method (Roberto Simonini) #54117
  • [3012d31404] - buffer: use faster integer argument check (Robert Nagy) #54089
  • [3505782801] - buffer: make indexOf(byte) faster (Tobias Nießen) #53455
  • [d285fc1f68] - build: upgrade clang-format to v18 (Aviv Keller) #53957
  • [d288ec3b0a] - build: fix conflicting V8 object print flags (Daeyeon Jeong) #54785
  • [e862eecac9] - build: do not build with code cache for core coverage collection (Joyee Cheung) #54633
  • [f7a606eb96] - build: turn off -Wrestrict (Richard Lau) #54737
  • [71ca2665e4] - build: reclaim disk space on macOS GHA runner (jakecastelli) #54658
  • [82d8051c39] - build: don't clean obj.target directory if it doesn't exist (Joyee Cheung) #54337
  • [6e550b1f26] - build: update ruff to 0.5.2 (Aviv Keller) #53909
  • [e2ea7b26d7] - build: fix ./configure --help format error (Zhenwei Jin) #53066
  • [eb2402d569] - build: enable building with shared uvwasi lib (Pooja D P) #43987
  • [45732314d4] - build: sync V8 warning cflags with BUILD.gn (Michaël Zasso) #52873
  • [6e0a2bb54c] - build: harmonize Clang checks (Michaël Zasso) #52873
  • [3f78d4eb28] - cli: add --expose-gc flag available to NODE_OPTIONS (Juan José) #53078
  • [a110409b2a] - console: use validateOneOf for colorMode validation (HEESEUNG) #54245
  • [231ab788ea] - crypto: reject dh,x25519,x448 in {Sign,Verify}Final (Huáng Jùnliàng) #53774
  • [a5984e4570] - crypto: return a clearer error when loading an unsupported pkcs12 (Tim Perry) #54485
  • [f287cd77bd] - crypto: remove unused kHashTypes internal (Antoine du Hamel) #54627
  • [1fc904f8c4] - deps: update cjs-module-lexer to 1.4.1 (Node.js GitHub Bot) #54846
  • [95b55c39b1] - deps: update simdutf to 5.5.0 (Node.js GitHub Bot) #54434
  • [cf6ded5dd3] - deps: update cjs-module-lexer to 1.4.0 (Node.js GitHub Bot) #54713
  • [7f8edce3f1] - deps: update c-ares to v1.33.1 (Node.js GitHub Bot) #54549
  • [9a4a7b7ecc] - deps: update undici to 6.19.8 (Node.js GitHub Bot) #54456
  • [87ca1d7fee] - deps: update simdutf to 5.3.4 (Node.js GitHub Bot) #54312
  • [d3a743f182] - deps: update zlib to 1.3.0.1-motley-71660e1 (Node.js GitHub Bot) #53464
  • [926981aa9f] - deps: update zlib to 1.3.0.1-motley-c2469fd (Node.js GitHub Bot) #53464
  • [654c8d1fdc] - deps: update zlib to 1.3.0.1-motley-68e57e6 (Node.js GitHub Bot) #53464
  • [2477e79172] - deps: update zlib to 1.3.0.1-motley-8b7eff8 (Node.js GitHub Bot) #53464
  • [3d8113faf5] - deps: update zlib to 1.3.0.1-motley-e432200 (Node.js GitHub Bot) #53464
  • [ac294e3db4] - deps: update zlib to 1.3.0.1-motley-887bb57 (Node.js GitHub Bot) #53464
  • [239588b968] - deps: update c-ares to v1.33.0 (Node.js GitHub Bot) #54198
  • [6e7de37ed3] - deps: update undici to 6.19.7 (Node.js GitHub Bot) #54286
  • [38aa9d6ea9] - deps: update acorn to 8.12.1 (Node.js GitHub Bot) #53465
  • [d30145f663] - deps: update undici to 6.19.5 (Node.js GitHub Bot) #54076
  • [c169d9c12b] - deps: update simdutf to 5.3.1 (Node.js GitHub Bot) #54196
  • [92f3447957] - doc: add missing EventSource docs to globals (Matthew Aitken) #55022
  • [2879ce9681] - doc: fix broken Android building link (Niklas Wenzel) #54922
  • [096623b59a] - doc: add support link for aduh95 (Antoine du Hamel) #54866
  • [1dfd238781] - doc: run license-builder (github-actions[bot]) #54854
  • [a6c748fffb] - doc: experimental flag for global accessible APIs (Chengzhong Wu) #54330
  • [d48a22fa14] - doc: add ERR_INVALID_ADDRESS to errors.md (Aviv Keller) #54661
  • [4a840cecfa] - doc: add support link for mcollina (Matteo Collina) #54786
  • [ec22d86512] - doc: mark --conditions CLI flag as stable (Guy Bedford) #54209
  • [77c702ca07] - doc: fix typo in recognizing-contributors (Tobias Nießen) #54822
  • [62953ef9fb] - doc: clarify --max-old-space-size and --max-semi-space-size units (Alexandre ABRIOUX) #54477
  • [e2bab0f2b2] - doc: replace --allow-fs-read by --allow-fs-write in related section (M1CK431) #54427
  • [9cbfd5b33a] - doc: add support link for marco-ippolito (Marco Ippolito) #54789
  • [53167b29ef] - doc: fix typo (Michael Dawson) #54640
  • [87f78a35f7] - doc: fix webcrypto.md AES-GCM backticks (Filip Skokan) #54621
  • [7c83c15221] - doc: add documentation about os.tmpdir() overrides (Joyee Cheung) #54613
  • [4bfd832d70] - doc: add support me link for anonrig (Yagiz Nizipli) #54611
  • [22a103e5ec] - doc: add alert on REPL from TCP socket (Rafael Gonzaga) #54594
  • [b6374c24e1] - doc: fix typo in styleText description (Rafael Gonzaga) #54616
  • [2f5b98ee1f] - doc: add getHeapStatistics() property descriptions (Benji Marinacci) #54584
  • [482302b99b] - doc: fix information about including coverage files (Aviv Keller) #54527
  • [b3708e7df4] - doc: support collaborators - talk amplification (Michael Dawson) #54508
  • [c86fe23012] - doc: add note about shasum generation failure (Marco Ippolito) #54487
  • [d53e6cf755] - doc: fix capitalization in module.md (shallow-beach) #54488
  • [cdc6713f18] - doc: add esm examples to node:https (Alfredo González) #54399
  • [1ac1fe4e65] - doc: fix error description of the max header size (Egawa Ryo) #54125
  • [244542b720] - doc: add git node security --cleanup (Rafael Gonzaga) #54381
  • [69fb71f54c] - doc: add note on weakness of permission model (Tobias Nießen) #54268
  • [83b2cb908b] - doc: add versions when --watch-preserve-output was added (Théo LUDWIG) #54328
  • [460fb49483] - doc: replace v19 mention in Current release (Rafael Gonzaga) #54361
  • [994b46a160] - doc: correct peformance entry types (Jason Zhang) #54263
  • [f142e668cb] - doc: fix typo in method name in the sea doc (Eliyah Sundström) #54027
  • [9529a30dba] - doc: mark process.nextTick legacy (Marco Ippolito) #51280
  • [7e25fabb91] - doc: add esm examples to node:http2 (Alfredo González) #54292
  • [6a4f05e384] - doc: explicitly mention node:fs module restriction (Rafael Gonzaga) #54269
  • [53f5c54997] - doc: warn for windows build bug (Jason Zhang) #54217
  • [07bde054f3] - doc: make some parameters optional in tracingChannel.traceCallback (Deokjin Kim) #54068
  • [62bf03b5f1] - doc: add esm examples to node:dns (Alfredo González) #54172
  • [fb2b19184b] - doc: add KevinEady as a triager (Chengzhong Wu) #54179
  • [24976bfba0] - doc: add esm examples to node:console (Alfredo González) #54108
  • [4e7edc40f7] - doc: fix sea assets example (Sadzurami) #54192
  • [322b5d91e1] - doc: add links to security steward companies (Aviv Keller) #52981
  • [6ab271510e] - doc: move onread option from socket.connect() to new net.socket() (sendoru) #54194
  • [39c30ea08f] - doc: move release key for Myles Borins (Richard Lau) #54059
  • [e9fc54804a] - doc: refresh instructions for building node from source (Liran Tal) #53768
  • [f131dc625a] - doc: add documentation for blob.bytes() method (jaexxin) #54114
  • [8d41bb900b] - doc: add missing new lines to custom test reporter examples (Eddie Abbondanzio) #54152
  • [2acaeaba77] - doc: update list of Triagers on the README.md (Antoine du Hamel) #54138
  • [fff8eb2792] - doc: expand troubleshooting section (Liran Tal) #53808
  • [402121520f] - doc: clarify useCodeCache setting for cross-platform SEA generation (Yelim Koo) #53994
  • [272484b8b2] - doc: test for cli options (Aras Abbasi) #51623
  • [c4d0ca4710] - doc, build: fixup build docs (Aviv Keller) #54899
  • [2e3e17748b] - doc, child_process: add esm snippets (Aviv Keller) #53616
  • [c40b4b4f27] - doc, meta: fix broken link in onboarding.md (Aviv Keller) #54886
  • [beff587b94] - doc, meta: add missing , to BUILDING.md (Aviv Keller) #54409
  • [c114585430] - doc, meta: replace command with link to keys (Aviv Keller) #53745
  • [0843077a99] - doc, test: simplify test README table (Aviv Keller) #53971
  • [2df7bc0e32] - doc,tools: enforce use of node: prefix (Antoine du Hamel) #53950
  • [0dd4639391] - esm: fix support for URL instances in import.meta.resolve (Antoine du Hamel) #54690
  • [f0c55e206d] - fs: refactor rimraf to avoid using primordials (Yagiz Nizipli) #54834
  • [f568384bbd] - fs: refactor handleTimestampsAndMode to remove redundant call (HEESEUNG) #54369
  • [2fb7cc9715] - fs: fix typings (Yagiz Nizipli) #53626
  • [596940cfa0] - http: reduce likelihood of race conditions on keep-alive timeout (jazelly) #54863
  • [6e13a7ba02] - http: remove prototype primordials (Antoine du Hamel) #53698
  • [99f96eb3f7] - http2: remove prototype primordials (Antoine du Hamel) #53696
  • [41f5eacc1a] - https: only use default ALPNProtocols when appropriate (Brian White) #54411
  • [59a39520e1] - (SEMVER-MINOR) inspector: support Network.loadingFailed event (Kohei Ueno) #54246
  • [d1007fb1a9] - inspector: provide detailed info to fix DevTools frontend errors (Kohei Ueno) #54156
  • [3b93507949] - (SEMVER-MINOR) inspector: add initial support for network inspection (Kohei Ueno) #53593
  • [fc37b801c8] - lib: remove unnecessary async (jakecastelli) #54829
  • [d86f24787b] - lib: make WeakRef safe in abort_controller (jazelly) #54791
  • [77c59224e5] - lib: add note about removing node:sys module (Rafael Gonzaga) #54743
  • [b8c06dce02] - lib: ensure no holey array in fixed_queue (Jason Zhang) #54537
  • [b85c8ce1fc] - lib: refactor SubtleCrypto experimental warnings (Filip Skokan) #54620
  • [e84812c1b5] - lib: respect terminal capabilities on styleText (Rafael Gonzaga) #54389
  • [c004abaf17] - lib: replace spread operator with primordials function (YoonSoo_Shin) #54053
  • [b79aeabc4d] - lib: avoid for of loop and remove unnecessary variable in zlib (YoonSoo_Shin) #54258
  • [f4085363c6] - lib: fix unhandled errors in webstream adapters (Fedor Indutny) #54206
  • [1ad857e748] - lib: fix typos in comments within internal/streams (YoonSoo_Shin) #54093
  • [02b36cbd2d] - (SEMVER-MINOR) lib: add EventSource Client (Aras Abbasi) #51575
  • [afbf2c0530] - lib,permission: support Buffer to permission.has (Rafael Gonzaga) #54104
  • [54af47395d] - meta: bump peter-evans/create-pull-request from 6.1.0 to 7.0.1 (dependabot[bot]) #54820
  • [a0c10f2ed9] - meta: add Windows ARM64 to flaky-tests list (Aviv Keller) #54693
  • [27b06880e1] - meta: bump actions/setup-python from 5.1.1 to 5.2.0 (Rich Trott) #54691
  • [8747af1037] - meta: update sccache to v0.8.1 (Aviv Keller) #54720
  • [3f753d87a6] - meta: bump step-security/harden-runner from 2.9.0 to 2.9.1 (dependabot[bot]) #54704
  • [6f103ae25d] - meta: bump actions/upload-artifact from 4.3.4 to 4.4.0 (dependabot[bot]) #54703
  • [3e6a9bb04e] - meta: bump github/codeql-action from 3.25.15 to 3.26.6 (dependabot[bot]) #54702
  • [c666ebc4e4] - meta: fix links in SECURITY.md (Aviv Keller) #54696
  • [4d361b3bed] - meta: fix contributing codeowners (Aviv Keller) #54641
  • [36931aa183] - meta: remind users to use a supported version in bug reports (Aviv Keller) #54481
  • [cf283d9ca7] - meta: run coverage-windows when vcbuild.bat updated (Aviv Keller) #54412
  • [67ca397c9f] - meta: add test-permission-* CODEOWNERS (Rafael Gonzaga) #54267
  • [b61a2f5b79] - meta: move one or more collaborators to emeritus (Node.js GitHub Bot) #54210
  • [dd8ab83667] - meta: add module label for the lib/internal/modules folder (Aviv Keller) #52858
  • [db78978d17] - meta: bump actions/upload-artifact from 4.3.3 to 4.3.4 (dependabot[bot]) #54166
  • [ca808dd9e5] - meta: bump actions/download-artifact from 4.1.7 to 4.1.8 (dependabot[bot]) #54167
  • [a35d980146] - meta: bump actions/setup-python from 5.1.0 to 5.1.1 (dependabot[bot]) #54165
  • [3a103c3a17] - meta: bump step-security/harden-runner from 2.8.1 to 2.9.0 (dependabot[bot]) #54169
  • [775ebbe0e8] - meta: bump actions/setup-node from 4.0.2 to 4.0.3 (dependabot[bot]) #54170
  • [7d5dd6f1d1] - meta: bump github/codeql-action from 3.25.11 to 3.25.15 (dependabot[bot]) #54168
  • [80dd38dde3] - meta: bump ossf/scorecard-action from 2.3.3 to 2.4.0 (dependabot[bot]) #54171
  • [90b632ee02] - module: warn on detection in typeless package (Geoffrey Booth) #52168
  • [3011927aab] - node-api: add external buffer creation benchmark (Chengzhong Wu) #54877
  • [7611093e11] - node-api: add support for UTF-8 and Latin-1 property keys (Mert Can Altin) #52984
  • [d65a8f377c] - node-api: remove RefBase and CallbackWrapper (Vladimir Morozov) #53590
  • [309cb1cbd2] - path: remove StringPrototypeCharCodeAt from posix.extname (Aviv Keller) #54546
  • [2859b4ba9a] - path: change posix.join to use array (Wiyeong Seo) #54331
  • [c61cee2138] - path: fix relative on Windows (Hüseyin Açacak) #53991
  • [329be5cc35] - path: use the correct name in validateString (Benjamin Pasero) #53669
  • [a9837267cb] - repl: avoid interpreting 'npm' as a command when errors are recoverable (Shima Ryuhei) #54848
  • [d6a2317961] - repl: doc-deprecate instantiating node:repl classes without new (Aviv Keller) #54842
  • [7f09d983f3] - sea: don't set code cache flags when snapshot is used (Joyee Cheung) #54120
  • [85542b094c] - src: add Cleanable class to Environment (Gabriel Schulhof) #54880
  • [8422064127] - src: remove redundant AESCipherMode (Tobias Nießen) #54438
  • [342c32483a] - src: handle errors correctly in permission.cc (Michaël Zasso) #54541
  • [90ff714699] - src: return v8::Object from error constructors (Michaël Zasso) #54541
  • [872856cfcb] - src: improve buffer.transcode performance (Yagiz Nizipli) #54153
  • [91936ebd12] - src: skip inspector wait in internal workers (Chengzhong Wu) #54219
  • [9759049427] - src: account for OpenSSL unexpected version (Shelley Vohr) #54038
  • [87167fa248] - src: use args.This() instead of Holder (Michaël Zasso) #53474
  • [b05c56e4be] - src: simplify size() == 0 checks (Yagiz Nizipli) #53440
  • [d53e53699c] - src: fix execArgv in worker (theanarkh) #53029
  • [21776a34b5] - src: make sure pass the argv to worker threads (theanarkh) #52827
  • [3aaae68ec8] - (SEMVER-MINOR) src,lib: add performance.uvMetricsInfo (Rafael Gonzaga) #54413
  • [ef1c0d7def] - src,permission: handle process.chdir on pm (Rafael Gonzaga) #53175
  • [0c32918eef] - stream: change stream to use index instead of for...of (Wiyeong Seo) #54474
  • [337cd412b5] - stream: make checking pendingcb on WritableStream backward compatible (jakecastelli) #54142
  • [713fc0c9eb] - stream: throw TypeError when criteria fulfilled in getIterator (jakecastelli) #53825
  • [9686153616] - stream: fix util.inspect for compression/decompressionStream (Mert Can Altin) #52283
  • [76110b0b43] - test: adjust test-tls-junk-server for OpenSSL32 (Michael Dawson) #54926
  • [4092889371] - test: adjust tls test for OpenSSL32 (Michael Dawson) #54909
  • [5d48543a16] - test: fix test-http2-socket-close.js (Hüseyin Açacak) #54900
  • [8048c2eaed] - test: improve test-internal-fs-syncwritestream (Sunghoon) #54671
  • [597bc14c90] - test: deflake test-dns (Luigi Pinca) #54902
  • [a9fc8d9cfa] - test: fix test test-tls-dhe for OpenSSL32 (Michael Dawson) #54903
  • [1b3b4f4a9f] - test: use correct file naming syntax for util-parse-env (Aviv Keller) #53705
  • [9db46b5ea3] - test: add missing await (Luigi Pinca) #54828
  • [124f715679] - test: move more url tests to node:test (Yagiz Nizipli) #54636
  • [d2ec96150a] - test: strip color chars in test-runner-run (Giovanni Bucci) #54552
  • [747d9ae72e] - test: deflake test-http2-misbehaving-multiplex (Luigi Pinca) #54872
  • [7b7687eadc] - test: remove dead code in test-http2-misbehaving-multiplex (Luigi Pinca) #54860
  • [60f5f5426d] - test: reduce test-esm-loader-hooks-inspect-wait flakiness (Luigi Pinca) #54827
  • [f5e77385c5] - test: reduce the allocation size in test-worker-arraybuffer-zerofill (James M Snell) #54839
  • [f26cf09d6b] - test: fix test-tls-client-mindhsize for OpenSSL32 (Michael Dawson) #54739
  • [c6f9afec94] - test: use platform timeout (jakecastelli) #54591
  • [8f49b7c3ee] - test: reduce fs calls in test-fs-existssync-false (Yagiz Nizipli) #54815
  • [e2c69c9844] - test: move test-http-server-request-timeouts-mixed (James M Snell) #54841
  • [f7af8ca021] - test: fix volatile for CauseSegfault with clang (Ivan Trubach) #54325
  • [d1bae5ede5] - test: set test-worker-arraybuffer-zerofill as flaky (Yagiz Nizipli) #54802
  • [b5b5cc811f] - test: set test-http-server-request-timeouts-mixed as flaky (Yagiz Nizipli) #54802
  • [9808feecac] - test: set test-single-executable-application-empty as flaky (Yagiz Nizipli) #54802
  • [97d41c62e3] - test: set test-macos-app-sandbox as flaky (Yagiz Nizipli) #54802
  • [57ae68001c] - test: set test-fs-utimes as flaky (Yagiz Nizipli) #54802
  • [38afc4da03] - test: set test-runner-run-watch as flaky (Yagiz Nizipli) #54802
  • [68e19748a6] - test: set test-writewrap as flaky (Yagiz Nizipli) #54802
  • [e8cb03d530] - test: set test-async-context-frame as flaky (Yagiz Nizipli) #54802
  • [3a56517220] - test: set test-esm-loader-hooks-inspect-wait as flaky (Yagiz Nizipli) #54802
  • [c98cd1227d] - test: set test-http2-large-file as flaky (Yagiz Nizipli) #54802
  • [16176a6323] - test: set test-runner-watch-mode-complex as flaky (Yagiz Nizipli) #54802
  • [eed0537533] - test: set test-performance-function as flaky (Yagiz Nizipli) #54802
  • [d0f208d2e9] - test: set test-debugger-heap-profiler as flaky (Yagiz Nizipli) #54802
  • [68891a6363] - test: fix test-process-load-env-file when path contains ' (Antoine du Hamel) #54511
  • [4f82673139] - test: refactor fs-watch tests due to macOS issue (Santiago Gimeno) #54498
  • [3606c53fdc] - test: refactor test-esm-type-field-errors (Giovanni Bucci) #54368
  • [99566aea97] - test: improve output of child process utilities (Joyee Cheung) #54622
  • [ed2377c1a1] - test: fix test-tls-client-auth test for OpenSSL32 (Michael Dawson) #54610
  • [d2a7e45946] - test: update TLS test for OpenSSL 3.2 (Richard Lau) #54612
  • [a50bbca78a] - test: increase key size for ca2-cert.pem (Michael Dawson) #54599
  • [d7ac3262de] - test: update test-assert-typedarray-deepequal to use node:test (James M Snell) #54585
  • [916a73cd8f] - test: update test-assert to use node:test (James M Snell) #54585
  • [10bea1cef5] - test: merge ongc and gcutil into gc.js (tannal) #54355
  • [f145982436] - test: move a couple of tests over to using node:test (James M Snell) #54582
  • [229e102d20] - test: fix embedding test for Windows (Vladimir Morozov) #53659
  • [fcf82adef0] - test: use relative paths in test-cli-permission tests (sendoru) #54188
  • [4c219b0235] - test: fix timeout not being cleared (Isaac-yz-Liu) #54242
  • [e446517a41] - test: refactor test-runner-module-mocking (Antoine du Hamel) #54233
  • [782a6a05ef] - test: use assert.{s,deepS}trictEqual() (Luigi Pinca) #54208
  • [d478db7adc] - test: set test-structuredclone-jstransferable non-flaky (Stefan Stojanovic) #54115
  • [c8587ec90d] - test: update wpt test for streams (devstone) #54129
  • [dbc26c2971] - test: fix typo in test (Sonny) #54137
  • [17b7ec4df3] - test: add initial pull delay and prototype pollution prevention tests (Sonny) #54061
  • [931ff4367a] - test: update wpt test (Mert Can Altin) #53814
  • [1c1bd7ce52] - test: update url web-platform tests (Yagiz Nizipli) #53472
  • [b048eaea5c] - test_runner: reimplement assert.ok to allow stack parsing (Aviv Keller) #54776
  • [c981e61155] - test_runner: improve code coverage cleanup (Colin Ihrig) #54856
  • [4f421b37da] - test_runner: use validateStringArray for timers.enable() (Deokjin Kim) #49534
  • [27da75ae22] - test_runner: do not expose internal loader (Antoine du Hamel) #54106
  • [56cbc80d28] - test_runner: make mock_loader not confuse CJS and ESM resolution (Sung Ye In) #53846
  • [8fd951f7c7] - test_runner: remove outdated comment (Colin Ihrig) #54146
  • [65b6fec3ba] - test_runner: run after hooks even if test is aborted (Colin Ihrig) #54151
  • [c0b4c8284c] - test_runner: added colors to dot reporter (Giovanni) #53450
  • [3000e5df91] - test_runner: support module detection in module mocks (Geoffrey Booth) #53642
  • [f789f4c92d] - (SEMVER-MINOR) test_runner: support module mocking (Colin Ihrig) #52848
  • [82d1c36f51] - test_runner: display failed test stack trace with dot reporter (Mihir Bhansali) #52655
  • [5358601e31] - timers: avoid generating holey internal arrays (Gürgün Dayıoğlu) #54771
  • [b6ed97c66d] - timers: document ref option for scheduler.wait (Paolo Insogna) #54605
  • [f524b8a28b] - timers: fix validation (Paolo Insogna) #54404
  • [bc020f7cb3] - (SEMVER-MINOR) tls: add allowPartialTrustChain flag (Anna Henningsen) #54790
  • [d0e6f9168e] - tls: remove prototype primordials (Antoine du Hamel) #53699
  • [f5c65d0be6] - tools: add readability/fn_size to filter (Rafael Gonzaga) #54744
  • [a47bb9b2c2] - tools: add util scripts to land and rebase PRs (Antoine du Hamel) #54656
  • [fe3155cefa] - tools: remove readability/fn_size rule (Rafael Gonzaga) #54663
  • [d6b9cc3acd] - tools: remove unused python files (Aviv Keller) #53928
  • [b5fbe9609c] - tools: remove header from c-ares license (Aviv Keller) #54335
  • [a7fdc608c6] - tools: add find pyenv path on windows (Marco Ippolito) #54314
  • [f90688cd5b] - tools: make undici updater build wasm from src (Michael Dawson) #54128
  • [a033dff2f2] - tty: initialize winSize array with values (Michaël Zasso) #54281
  • [e635e0956c] - typings: fix TypedArray to a global type (1ilsang) #54063
  • [b5bf08f31e] - typings: correct param type of SafePromisePrototypeFinally (Wuli) #54727
  • [628ae4bde5] - typings: add util.styleText type definition (Rafael Gonzaga) #54252
  • [cc37401ea5] - typings: add missing binding function writeFileUtf8() (Jungku Lee) #54110
  • [728c3fd6f1] - url: modify pathToFileURL to handle extended UNC path (Early Riser) #54262
  • [b25563dfcb] - url: improve resolveObject with ObjectAssign (Early Riser) #54092
  • [eededd1ca8] - url: make URL.parse enumerable (Filip Skokan) #53720
  • [4eb0749b6c] - (SEMVER-MINOR) url: implement parse method for safer URL parsing (Ali Hassan) #52280
  • [9e1c2293bf] - vm: harden module type checks (Chengzhong Wu) #52162
  • [2d90340cb3] - (SEMVER-MINOR) vm: introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) #54394
  • [4644d05ab5] - zlib: deprecate instantiating classes without new (Yagiz Nizipli) #54708
  • [ecdf6dd444] - zlib: simplify validators (Yagiz Nizipli) #54442

@targos targos added wip Issues and PRs that are still a work in progress. release Issues and PRs related to Node.js releases. v20.x v20.x Issues that can be reproduced on v20.x or PRs targeting the v20.x-staging branch. labels Sep 30, 2024
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/actions
  • @nodejs/security-wg
  • @nodejs/tsc
  • @nodejs/v8-update

@nodejs-github-bot nodejs-github-bot added build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project. labels Sep 30, 2024
@targos targos removed doc Issues and PRs related to the documentations. build Issues and PRs related to build files or the CI. meta Issues and PRs related to the general management of the project. labels Sep 30, 2024
@aduh95
Copy link
Contributor

aduh95 commented Sep 30, 2024

FWIW you can fix the failing test with this diff:

diff --git a/test/es-module/test-http-imports.mjs b/test/es-module/test-http-imports.mjs
index 90d60e359ff..0e3d15e11d3 100644
--- a/test/es-module/test-http-imports.mjs
+++ b/test/es-module/test-http-imports.mjs
@@ -258,7 +258,7 @@ for (const { protocol, createServer } of [
       });
 
       it('data: URL can always import other data:', async () => {
-        const data = new URL('data:text/javascript,');
+        const data = new URL('data:text/javascript,//');
         data.searchParams.set('body',
                               'import \'data:text/javascript,import \'data:\''
         );

@targos
Copy link
Member Author

targos commented Sep 30, 2024

I removed the commit.

targos added a commit that referenced this pull request Sep 30, 2024
Notable changes:

buffer:
  * optimize createFromString (Robert Nagy) #54324
inspector:
  * (SEMVER-MINOR) support `Network.loadingFailed` event (Kohei Ueno) #54246
  * (SEMVER-MINOR) add initial support for network inspection (Kohei Ueno) #53593
lib:
  * (SEMVER-MINOR) add EventSource Client (Aras Abbasi) #51575
repl:
  * doc-deprecate instantiating `node:repl` classes without `new` (Aviv Keller) #54842
src,lib:
  * (SEMVER-MINOR) add performance.uvMetricsInfo (Rafael Gonzaga) #54413
test_runner:
  * (SEMVER-MINOR) support module mocking (Colin Ihrig) #52848
tls:
  * (SEMVER-MINOR) add `allowPartialTrustChain` flag (Anna Henningsen) #54790
url:
  * (SEMVER-MINOR) implement parse method for safer URL parsing (Ali Hassan) #52280
vm:
  * (SEMVER-MINOR) introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) #54394
zlib:
  * deprecate instantiating classes without new (Yagiz Nizipli) #54708

PR-URL: #55170
@targos targos added request-ci Add this label to start a Jenkins CI on a PR. and removed wip Issues and PRs that are still a work in progress. labels Sep 30, 2024
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 30, 2024
@nodejs-github-bot
Copy link
Collaborator

@avivkeller
Copy link
Member

If your including #53909, is it worth it to include #54410?

@nodejs-github-bot
Copy link
Collaborator

@targos
Copy link
Member Author

targos commented Sep 30, 2024

Unfortunately, there's an SEA test failure in debug build. Will need to identify the cause

@targos
Copy link
Member Author

targos commented Sep 30, 2024

I can't reproduce:

$ out/Debug/node test/sequential/test-single-executable-application-empty.js
Copied /Users/mzasso/git/nodejs/v20.x/out/Debug/node to /Users/mzasso/git/nodejs/v20.x/test/.tmp.0/sea
Injected /Users/mzasso/git/nodejs/v20.x/test/.tmp.0/sea-prep.blob into /Users/mzasso/git/nodejs/v20.x/test/.tmp.0/sea
Signed /Users/mzasso/git/nodejs/v20.x/test/.tmp.0/sea

@aduh95
Copy link
Contributor

aduh95 commented Sep 30, 2024

On node-daily-v20.x-staging, it failed first on https://ci.nodejs.org/job/node-test-commit-arm-debug/15147/ which was run on 563c5e3. The previous build on 82d1c36 did not fail on ARM-debug job. Based on commit messages, the only SEA-related commit in 82d1c36...563c5e3 seems to be a618ec4.

@targos
Copy link
Member Author

targos commented Oct 1, 2024

@targos
Copy link
Member Author

targos commented Oct 1, 2024

It failed with the same error :(

@aduh95
Copy link
Contributor

aduh95 commented Oct 1, 2024

@targos We've got a passing CI on aduh95@695fef1, I suggest dropping 5f01973 from this proposal.

ronag and others added 2 commits October 2, 2024 07:57
PR-URL: #54089
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Daniel Lemire <daniel@lemire.me>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
PR-URL: #54092
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
nodejs-github-bot and others added 12 commits October 2, 2024 16:04
PR-URL: #54846
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #53957
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Fixes: #54819
PR-URL: #54900
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Refs: #53382

Looks like test is forcing an error through bad data and
the error code we get is different for OpenSSL32. Adjust
test to cope with the variation across versions.

Signed-off-by: Michael Dawson <midawson@redhat.com>
PR-URL: #54909
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #54922
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Xuguang Mei <meixuguang@gmail.com>
This change ensures that 'npm' within JavaScript code is not mistakenly
interpreted as an npm command when the error is recoverable.
This allows 'npm' to be treated as expected in such scenarios.

Fixes: #54830
PR-URL: #54848
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Kohei Ueno <kohei.ueno119@gmail.com>
PR-URL: #54776
Refs: nodejs/help#4461
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Refs: #53382

OpenSSL32 returns different error text. Looking through
the test it seems like the expected error text has been adjusted
for different OpenSSL versions in the past and what the test
is testing is not related to the error being returned.

Update test to allow for error returned by OpenSSL32

Signed-off-by: Michael Dawson <midawson@redhat.com>
PR-URL: #54926
Refs: #53382
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: #54928
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
PR-URL: #55022
Backport-PR-URL: #55059
Refs: #51575
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Check if the value returned from user linker function is a null-ish
value.

`validateInternalField` should be preferred when checking `this`
argument to guard against null-ish `this`.

Co-authored-by: Mike Ralphson <mike.ralphson@gmail.com>
PR-URL: #52162
Backport-PR-URL: #53109
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Notable changes:

buffer:
  * optimize createFromString (Robert Nagy) #54324
inspector:
  * (SEMVER-MINOR) support `Network.loadingFailed` event (Kohei Ueno) #54246
  * (SEMVER-MINOR) add initial support for network inspection (Kohei Ueno) #53593
lib:
  * (SEMVER-MINOR) add EventSource Client (Aras Abbasi) #51575
repl:
  * doc-deprecate instantiating `node:repl` classes without `new` (Aviv Keller) #54842
src,lib:
  * (SEMVER-MINOR) add performance.uvMetricsInfo (Rafael Gonzaga) #54413
test_runner:
  * (SEMVER-MINOR) support module mocking (Colin Ihrig) #52848
tls:
  * (SEMVER-MINOR) add `allowPartialTrustChain` flag (Anna Henningsen) #54790
url:
  * (SEMVER-MINOR) implement parse method for safer URL parsing (Ali Hassan) #52280
vm:
  * (SEMVER-MINOR) introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) #54394
zlib:
  * deprecate instantiating classes without new (Yagiz Nizipli) #54708

PR-URL: #55170
@targos targos force-pushed the v20.18.0-proposal branch from 2c147ec to 7eebd17 Compare October 2, 2024 14:05
@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Oct 2, 2024

@targos
Copy link
Member Author

targos commented Oct 3, 2024

Release build: https://ci-release.nodejs.org/job/iojs+release/10505/

/cc @nodejs/releasers

@avivkeller avivkeller added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Oct 3, 2024
@targos targos linked an issue Oct 3, 2024 that may be closed by this pull request
@targos targos merged commit 7eebd17 into v20.x Oct 3, 2024
58 of 60 checks passed
@targos targos deleted the v20.18.0-proposal branch October 3, 2024 17:42
targos added a commit that referenced this pull request Oct 3, 2024
targos added a commit that referenced this pull request Oct 3, 2024
Notable changes:

buffer:
  * optimize createFromString (Robert Nagy) #54324
inspector:
  * (SEMVER-MINOR) support `Network.loadingFailed` event (Kohei Ueno) #54246
  * (SEMVER-MINOR) add initial support for network inspection (Kohei Ueno) #53593
lib:
  * (SEMVER-MINOR) add EventSource Client (Aras Abbasi) #51575
repl:
  * doc-deprecate instantiating `node:repl` classes without `new` (Aviv Keller) #54842
src,lib:
  * (SEMVER-MINOR) add performance.uvMetricsInfo (Rafael Gonzaga) #54413
test_runner:
  * (SEMVER-MINOR) support module mocking (Colin Ihrig) #52848
tls:
  * (SEMVER-MINOR) add `allowPartialTrustChain` flag (Anna Henningsen) #54790
url:
  * (SEMVER-MINOR) implement parse method for safer URL parsing (Ali Hassan) #52280
vm:
  * (SEMVER-MINOR) introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) #54394
zlib:
  * deprecate instantiating classes without new (Yagiz Nizipli) #54708

PR-URL: #55170
targos added a commit to nodejs/nodejs.org that referenced this pull request Oct 3, 2024
github-merge-queue bot pushed a commit to nodejs/nodejs.org that referenced this pull request Oct 3, 2024
louwers pushed a commit to louwers/node that referenced this pull request Nov 2, 2024
Notable changes:

buffer:
  * optimize createFromString (Robert Nagy) nodejs#54324
inspector:
  * (SEMVER-MINOR) support `Network.loadingFailed` event (Kohei Ueno) nodejs#54246
  * (SEMVER-MINOR) add initial support for network inspection (Kohei Ueno) nodejs#53593
lib:
  * (SEMVER-MINOR) add EventSource Client (Aras Abbasi) nodejs#51575
repl:
  * doc-deprecate instantiating `node:repl` classes without `new` (Aviv Keller) nodejs#54842
src,lib:
  * (SEMVER-MINOR) add performance.uvMetricsInfo (Rafael Gonzaga) nodejs#54413
test_runner:
  * (SEMVER-MINOR) support module mocking (Colin Ihrig) nodejs#52848
tls:
  * (SEMVER-MINOR) add `allowPartialTrustChain` flag (Anna Henningsen) nodejs#54790
url:
  * (SEMVER-MINOR) implement parse method for safer URL parsing (Ali Hassan) nodejs#52280
vm:
  * (SEMVER-MINOR) introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) nodejs#54394
zlib:
  * deprecate instantiating classes without new (Yagiz Nizipli) nodejs#54708

PR-URL: nodejs#55170
@aduh95 aduh95 mentioned this pull request Nov 16, 2024
tpoisseau pushed a commit to tpoisseau/node that referenced this pull request Nov 21, 2024
Notable changes:

buffer:
  * optimize createFromString (Robert Nagy) nodejs#54324
inspector:
  * (SEMVER-MINOR) support `Network.loadingFailed` event (Kohei Ueno) nodejs#54246
  * (SEMVER-MINOR) add initial support for network inspection (Kohei Ueno) nodejs#53593
lib:
  * (SEMVER-MINOR) add EventSource Client (Aras Abbasi) nodejs#51575
repl:
  * doc-deprecate instantiating `node:repl` classes without `new` (Aviv Keller) nodejs#54842
src,lib:
  * (SEMVER-MINOR) add performance.uvMetricsInfo (Rafael Gonzaga) nodejs#54413
test_runner:
  * (SEMVER-MINOR) support module mocking (Colin Ihrig) nodejs#52848
tls:
  * (SEMVER-MINOR) add `allowPartialTrustChain` flag (Anna Henningsen) nodejs#54790
url:
  * (SEMVER-MINOR) implement parse method for safer URL parsing (Ali Hassan) nodejs#52280
vm:
  * (SEMVER-MINOR) introduce vanilla contexts via vm.constants.DONT_CONTEXTIFY (Joyee Cheung) nodejs#54394
zlib:
  * deprecate instantiating classes without new (Yagiz Nizipli) nodejs#54708

PR-URL: nodejs#55170
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. release Issues and PRs related to Node.js releases. v20.x v20.x Issues that can be reproduced on v20.x or PRs targeting the v20.x-staging branch.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Increased memory usage in nodejs version 20.16.0 due to fetch()