Skip to content

deps: update undici to 8.0.2 - #62384

Merged
nodejs-github-bot merged 1 commit into
mainfrom
actions/tools-update-undici
Apr 7, 2026
Merged

deps: update undici to 8.0.2#62384
nodejs-github-bot merged 1 commit into
mainfrom
actions/tools-update-undici

Conversation

@nodejs-github-bot

@nodejs-github-bot nodejs-github-bot commented Mar 22, 2026

Copy link
Copy Markdown
Collaborator

This is an automated update of undici to 8.0.2.

@nodejs-github-bot nodejs-github-bot added the dependencies Pull requests that update a dependency file. label Mar 22, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

Review requested:

  • @nodejs/security-wg

@nodejs-github-bot nodejs-github-bot added lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. labels Mar 22, 2026
@codecov

codecov Bot commented Mar 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.71%. Comparing base (4b3d82c) to head (bd7e2e3).
⚠️ Report is 23 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #62384   +/-   ##
=======================================
  Coverage   89.70%   89.71%           
=======================================
  Files         695      695           
  Lines      214476   214476           
  Branches    41072    41065    -7     
=======================================
+ Hits       192405   192423   +18     
- Misses      14115    14119    +4     
+ Partials     7956     7934   -22     

see 41 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@aduh95 aduh95 added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. request-ci Add this label to start a Jenkins CI on a PR. labels Mar 24, 2026
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Mar 25, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot
nodejs-github-bot force-pushed the actions/tools-update-undici branch from 1b9eb31 to 4662a5e Compare March 29, 2026 00:57
@nodejs-github-bot nodejs-github-bot changed the title deps: update undici to 7.24.5 deps: update undici to 7.24.6 Mar 29, 2026
@aduh95 aduh95 added the request-ci Add this label to start a Jenkins CI on a PR. label Mar 29, 2026
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Mar 29, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot
nodejs-github-bot force-pushed the actions/tools-update-undici branch from 969313c to 6760744 Compare April 4, 2026 12:38
@mcollina mcollina added the request-ci Add this label to start a Jenkins CI on a PR. label Apr 4, 2026

@mcollina mcollina left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Apr 4, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot
nodejs-github-bot force-pushed the actions/tools-update-undici branch from 6760744 to bd7e2e3 Compare April 5, 2026 00:58
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

@mcollina mcollina added the commit-queue Add this label to land a pull request using GitHub Actions. label Apr 7, 2026
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Apr 7, 2026
@nodejs-github-bot
nodejs-github-bot merged commit 78efdf7 into main Apr 7, 2026
63 checks passed
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator Author

Landed in 78efdf7

@nodejs-github-bot
nodejs-github-bot deleted the actions/tools-update-undici branch April 7, 2026 21:07
RafaelGSS pushed a commit that referenced this pull request Apr 14, 2026
PR-URL: #62384
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
RafaelGSS added a commit that referenced this pull request Apr 27, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
RafaelGSS added a commit that referenced this pull request Apr 27, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) #62555
  * (SEMVER-MAJOR) enable Temporal by default (Richard Lau) #61806
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
build,win:
  * (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) #61806
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
RafaelGSS added a commit that referenced this pull request Apr 27, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) #62555
  * (SEMVER-MAJOR) enable Temporal by default (Richard Lau) #61806
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
build,win:
  * (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) #61806
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
RafaelGSS added a commit that referenced this pull request Apr 28, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) #62555
  * (SEMVER-MAJOR) enable Temporal by default (Richard Lau) #61806
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
build,win:
  * (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) #61806
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
RafaelGSS added a commit that referenced this pull request Apr 28, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) #62555
  * (SEMVER-MAJOR) enable Temporal by default (Richard Lau) #61806
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
build,win:
  * (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) #61806
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
RafaelGSS added a commit that referenced this pull request May 4, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) #62555
  * (SEMVER-MAJOR) enable Temporal by default (Richard Lau) #61806
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
build,win:
  * (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) #61806
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) V8: cherry-pick 0f024d4e66e0 (ishabi) #62408
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
RafaelGSS added a commit that referenced this pull request May 5, 2026
assert:
  * (SEMVER-MAJOR) allow printf-style messages as assertion error (Ruben Bridgewater) #58849
build:
  * (SEMVER-MAJOR) bump GCC requirement to 13.2 (Michaël Zasso) #62555
  * (SEMVER-MAJOR) enable Temporal by default (Richard Lau) #61806
  * (SEMVER-MAJOR) enable V8_VERIFY_WRITE_BARRIERS in debug build (Joyee Cheung) #61898
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #61898
  * (SEMVER-MAJOR) target Power 9 for AIX/IBM i (Richard Lau) #62296
  * (SEMVER-MAJOR) drop support for Python 3.9 (Mike McCready) #61177
  * (SEMVER-MAJOR) enable maglev for Linux on s390x (Richard Lau) #60863
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60488
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #60111
build,test:
  * (CVE-2026-21717) (SEMVER-MAJOR) test array index hash collision (Joyee Cheung) #61898
build,win:
  * (SEMVER-MAJOR) fix Temporal build (StefanStojanovic) #61806
crypto:
  * (SEMVER-MAJOR) unify asymmetric key import through KeyObjectHandle::Init (Filip Skokan) #62499
  * (SEMVER-MAJOR) runtime-deprecate DEP0203 and DEP0204 (Filip Skokan) #62453
  * (SEMVER-MAJOR) decorate async crypto job errors with OpenSSL error details (Filip Skokan) #62348
  * (SEMVER-MAJOR) default ML-KEM and ML-DSA pkcs8 export to seed-only format (Filip Skokan) #62178
  * (SEMVER-MAJOR) move DEP0182 to End-of-Life (Tobias Nießen) #61084
  * (SEMVER-MAJOR) fix DOMException name for non-extractable key error (Filip Skokan) #60830
deps:
  * (SEMVER-MAJOR) V8: cherry-pick 0f024d4e66e0 (ishabi) #62408
  * (SEMVER-MAJOR) fix V8 race condition for AIX (Abdirahim Musse) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cd2c216e7658 (LuYahan) #61898
  * (SEMVER-MAJOR) V8: backport 088b7112e7ab (Igor Sheludko) #61898
  * (SEMVER-MAJOR) V8: cherry-pick 00f6e834029f (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: backport bef0d9c1bc90 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick cf1bce40a5ef (Richard Lau) #61898
  * (SEMVER-MAJOR) V8: cherry-pick daf4656ba85e (Milad Fa) #61898
  * (SEMVER-MAJOR) V8: cherry-pick d83f479604c8 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick edeb0a4fa181 (Joyee Cheung) #61898
  * (SEMVER-MAJOR) V8: cherry-pick aa0b288f87cc (Richard Lau) #61898
  * (SEMVER-MAJOR) patch V8 to fix Windows build (StefanStojanovic) #61898
  * (SEMVER-MAJOR) V8: cherry-pick highway@989a498fdf3 (Richard Lau) #61898
  * (SEMVER-MAJOR) support madvise(3C) across ALL illumos revisions (Dan McDonald) #61898
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #61898
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #61898
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #61898
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 to 14.6.202.33 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update undici to 8.0.2 (Node.js GitHub Bot) #62384
  * (SEMVER-MAJOR) V8: backport 151d0a44a1b2 (Abdirahim Musse) #60488
  * (SEMVER-MAJOR) V8: cherry-pick 47800791b35c (Jakob Kummerow) #60488
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.3.127.12 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) V8: cherry-pick ff34ae20c8e3 (Chengzhong Wu) #60111
  * (SEMVER-MAJOR) V8: backport fed47445bbdd (Abdirahim Musse) #60111
  * (SEMVER-MAJOR) patch V8 for illumos (Dan McDonald) #59805
  * (SEMVER-MAJOR) use std::map in MSVC STL for EphemeronRememberedSet (Joyee Cheung) #58070
  * (SEMVER-MAJOR) remove problematic comment from v8-internal (Michaël Zasso) #58070
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 14.2.231.9 (Michaël Zasso) #60111
diagnostics_channel:
  * (SEMVER-MAJOR) ensure tracePromise consistency with non-Promises (René) #61766
doc:
  * (SEMVER-MAJOR) remove extensionless CJS exception for type:module packages (Matteo Collina) #62176
  * (SEMVER-MAJOR) update supported Windows SDK version to 11 (Mike McCready) #61973
  * (SEMVER-MAJOR) drop p8 and z13 support (Milad Fa) #61005
http:
  * (SEMVER-MAJOR) move writeHeader to end-of-life (Sebastian Beltran) #60635
  * (SEMVER-MAJOR) fix handling of HTTP upgrades with bodies (Tim Perry) #60016
lib:
  * (SEMVER-MAJOR) return undefined for localStorage without file (Matteo Collina) #61333
lib,src:
  * (SEMVER-MAJOR) implement QuotaExceededError as DOMException-derived interface (Filip Skokan) #62293
module:
  * (SEMVER-MAJOR) runtime-deprecate module.register() (Geoffrey Booth) #62401
  * (SEMVER-MAJOR) remove --experimental-transform-types (Marco Ippolito) #61803
src:
  * (SEMVER-MAJOR) replace uses of deprecated v8::External APIs (gahaas) #61898
  * (SEMVER-MAJOR) stop using `v8::PropertyCallbackInfo<T>::This()` (Igor Sheludko) #61898
  * (SEMVER-MAJOR) avoid deprecated Wasm API (Clemens Backes) #61898
  * (SEMVER-MAJOR) avoid deprecated `FixedArray::Get` (Clemens Backes) #61898
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 147 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) remove deprecated and unused isolate fields (Michaël Zasso) #60488
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 144 (Michaël Zasso) #60488
  * (SEMVER-MAJOR) include `node_api_types.h` instead of `node_api.h` in `node.h` (Anna Henningsen) #60496
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 142 (Michaël Zasso) #60111
stream:
  * (SEMVER-MAJOR) promote DEP0201 to runtime deprecation (René) #62173
  * (SEMVER-MAJOR) move _stream_* to end-of-life (Sebastian Beltran) #60657
  * (SEMVER-MAJOR) readable read one buffer at a time (Robert Nagy) #60441
  * (SEMVER-MAJOR) preserve AsyncLocalStorage on finished only when needed (avcribl) #59873
test:
  * (SEMVER-MAJOR) skip wasm allocation tests in workers (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update wpt Wasm jsapi expectations (Michaël Zasso) #61898
  * (SEMVER-MAJOR) support presence of Temporal global (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add type tags to uses of v8::External (gahaas) #61898
  * (SEMVER-MAJOR) fix test-linux-perf-logger for V8 14.3 (Michaël Zasso) #60488
tools:
  * (SEMVER-MAJOR) remove v8_initializers_slow workaround from v8.gyp (Michaël Zasso) #61898
  * (SEMVER-MAJOR) add Rust args to `tools/make-v8.sh` (Richard Lau) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.6 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.5 (Michaël Zasso) #61898
  * (SEMVER-MAJOR) update V8 gypfiles for 14.4 (Michaël Zasso) #61898
util:
  * (SEMVER-MAJOR) mark proxied objects as such when inspecting them (Ruben Bridgewater) #61029
  * (SEMVER-MAJOR) reduce TextEncoder.encodeInto function size (Yagiz Nizipli) #60339

PR-URL: #62526
christopher-buss added a commit to christopher-buss/bedrock that referenced this pull request Jul 31, 2026
## Summary

A consumer's deploy lost all three of its places at once, two of them in
the same millisecond. The codes were new: `ERR_HTTP2_STREAM_ERROR` and
`UND_ERR_INFO`, where this failure has always surfaced as a socket error
before.

Node 26 bundles undici 8, which [enables HTTP/2 by
default](nodejs/undici#4828) (taken into Node in
[nodejs/node#62384](nodejs/node#62384)). That
breaks the mitigation from #531 in two ways. `Connection` is a
connection-specific header, forbidden in HTTP/2, so an h2 transport
drops the `connection: close` uploads set — the directive was doing
nothing. And h2 multiplexes, so every upload shares one session where
HTTP/1.1 gave each its own: one session death now fails every place in
flight, instead of one.

Measured against a local server offering ALPN `["h2", "http/1.1"]`:

| Client | ALPN | TCP connections for 2 uploads | `connection` on the
wire |
| --- | --- | --- | --- |
| Node 26.5.1 `fetch` | h2 | 1 | absent (stripped) |
| Node 24.18 `fetch` | http/1.1 | 2 | `close` |
| Bun 1.3.14 `fetch` | http/1.1 | 2 | `close` |

Bun implements `node:http2`, but its `fetch` does not offer h2 in ALPN,
so Bun is unaffected. The exposure is Node 26 and later.

The fix has two parts:

1. **Uploads pin HTTP/1.1.** There is no standard `fetch` option for
this, and the documented route — `setGlobalDispatcher(new Agent({
allowH2: false }))` — means depending on undici, which ADR-008 rules
out, and mutating a process-wide default, which a library should not do.
Instead the transport reconstructs the class of the runtime's own global
dispatcher with `allowH2: false`. No dependency, and it re-arms the
directive #531 relies on. The symbol is undici's internal contract and
moved from `.1` to `.2` in undici 8, so an absent symbol, a
non-constructible value, or a throwing constructor each fall back to the
runtime's default transport rather than failing the deploy.

2. **The h2 codes join `TRANSIENT_TRANSPORT_CODES`.**
`ERR_HTTP2_STREAM_ERROR`, `ERR_HTTP2_SESSION_ERROR`, and `UND_ERR_INFO`
are the h2 spellings of socket deaths already in that set. This is the
safety net for any runtime where part 1's probe finds nothing.

Part 2 corrects a claim #531 made. The transient set was described as
failures that never reached Open Cloud. That is not true of the h2 codes
— `UND_ERR_INFO` covers both a `GOAWAY` declaring a stream was never
started and a stream that was fully sent — nor of `UND_ERR_SOCKET`,
which can fire once a response is already streaming. For idempotent
methods this changes nothing. For uploads, retry safety rests where #531
actually measured it: Roblox dedupes identical place content, so a retry
that races a publish which did land returns that same version. The doc
comments now say so.

## Verification

A local ALPN server driving the real transport, asserting the symptom
rather than the header: two uploads must reach it over two connections
with `connection: close` on the wire.

```
before  node 26.5.1  FAIL  alpn=h2         tcpConnections=1  connectionHeader=[null,null]
after   node 26.5.1  PASS  alpn=http/1.1   tcpConnections=2  connectionHeader=["close","close"]
after   node 24.18   PASS  alpn=http/1.1   tcpConnections=2  connectionHeader=["close","close"]
after   bun 1.3.14   PASS  alpn=http/1.1                     connectionHeader=["close"]
```

The CI error was also reproduced end to end: a server that sends
`RST_STREAM` mid-upload surfaces `ERR_HTTP2_STREAM_ERROR` through
`fetch`, byte-identical to the deploy log.

Full suite green, 100% mutation score on every touched file.

## Notes for reviewers

- **`http1-dispatcher.spec.ts` has one test that makes a real network
call** (`http://127.0.0.1:1/`, refused in ~20ms). It is deliberate.
Every other test injects a fake scope, so nothing else would notice the
day undici's symbol stops being reachable — which is the day this outage
silently returns with a green suite.
- **A consumer who calls `setGlobalDispatcher(new MockAgent())` in their
own tests would see uploads bypass their interceptors**, because the
fresh agent carries none of them. Uploads only; every other request
still uses the global. I did not guard it: there is no reliable signal
distinguishing a mock from a real agent, and
`OpenCloudClientOptions.httpClient` is the documented test seam.
- **`TRANSIENT_TRANSPORT_CODES` is publicly exported and its meaning
widened** from "proved unprocessed" to "transport-level failure", under
a `patch`. No signature changes.

## Follow-ups, deliberately not in this PR

- **No consumer-reachable override.** If undici's symbol moves again, a
consumer on that runtime loses the mitigation and has no supported
workaround short of an SDK release. A `dispatcher` or `fetchFunc` option
on `OpenCloudClientOptions` would fix that, but it is a public API
change needing its own tests and changeset.
- **A gateway `RST_STREAM(CANCEL)` hangs `fetch` forever.** undici emits
no error event and dequeues the request without rejecting it, and
uploads carry no timeout by design, so the hang is unbounded and retries
cannot reach it — nothing ever fails. Needs its own decision plus an
upstream fix; recorded in the ADR amendment.

## References

Follows #531, which fixed the HTTP/1.1 half of this.

🤖 Generated with [Claude Code](https://claude.com/claude-code)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Overall Summary

The PR aligns with Bedrock’s architecture: HTTP dispatcher discovery is
isolated to an adapter, while fetch-client orchestration remains
separate. Transport failures are handled with typed error codes, and the
retry-safety documentation is appropriately narrowed.

Tests cover dispatcher construction, fallback behavior, upload
integration, and retry decisions, including malformed and unavailable
runtime dispatcher shapes.

No blocking architecture, security, or implementation issues were
identified.

## Recommendations

- Confirm CI enforces 100% coverage for the new dispatcher branches.
- Verify all new tests use the required `it("should ...")` naming
convention.
- Retain Node 24, Node 26, and Bun verification because dispatcher
internals are runtime-dependent.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
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. dependencies Pull requests that update a dependency file. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. semver-major PRs that contain breaking changes and should be released in the next major version.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants