Skip to content

chore(deps): Bump undici from 7.29.0 to 8.10.0 - #11

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/undici-8.10.0
Open

chore(deps): Bump undici from 7.29.0 to 8.10.0#11
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/undici-8.10.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 11, 2026

Copy link
Copy Markdown

Bumps undici from 7.29.0 to 8.10.0.

Release notes

Sourced from undici's releases.

v8.10.0

What's Changed

New Contributors

Full Changelog: nodejs/undici@v8.9.0...v8.10.0

v8.9.0

⚠️ Security fixes

High severity

  • GHSA-4cwx-7wf7-3272: malformed qualified private Cache-Control directives could cause cross-user information disclosure in shared caches or a parse-time crash. The cache parser now treats empty qualified directives conservatively and safely handles mixed qualified and unqualified directives. Fixed by 4fe5bc5f with regression coverage in 9f09b49a.

Medium severity

  • GHSA-m8rv-5g2x-5cg5: a malicious type property on a duck-typed blob-like HTTP/1.1 request body could inject CRLF sequences into the generated content-type header. Undici now coerces and validates the value before adding it to the request. Fixed by 7d3cf924.
  • GHSA-jr45-8vmc-qm54: optional whitespace around = in qualified no-cache and private directives could bypass shared-cache restrictions and disclose authenticated data across users. Cache-Control parsing now normalizes these forms and applies conservative cache decisions. Fixed by c601fff1.
  • GHSA-8xcm-r25x-g524: the retry interceptor could expose a stale Content-Length after resuming a partial response, potentially causing downstream response desynchronization, hangs, or corruption. Undici now rejects partial responses whose Content-Length is inconsistent with Content-Range. Fixed by e11a68ed, with corrected fixtures in 2b3f7493.
  • GHSA-v3r7-h72x-cjcm: unsanitized domain and unparsed values passed to setCookie() could inject cookie attributes. Undici now validates cookie domains, paths, and unparsed attributes more strictly. Fixed by 10d93fc3.

Additional hardening

... (truncated)

Commits
  • c8d80e6 Bumped v8.10.0 (#5644)
  • 66923b4 fix: preserve DNS origin hostname on sockets (#5577)
  • 3926499 fix: retry refused HTTP/2 streams (#5598)
  • 73d6e9e fix(h2): detach upgrade close handler after GOAWAY (#5641)
  • b111adb fix(mock): emit request body lifecycle hooks (#5367)
  • ae4a3e3 build(deps): bump actions/setup-node from 6.4.0 to 7.0.0 (#5636)
  • ec3fbf1 build(deps): bump github/codeql-action/init from 4.36.2 to 4.37.3 (#5634)
  • 2151720 build(deps): bump ossf/scorecard-action from 2.4.3 to 2.4.4 (#5633)
  • b96a116 fix(interceptors): allow interceptors without opts.origin (#5628)
  • a18ef2d fix(mock): non-string path matchers under ignoreTrailingSlash, and DataView r...
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Aug 11, 2026
earthwalker17 added a commit that referenced this pull request Aug 14, 2026
The status area's clip counted UTF-16 code units, documented as safe only
while every status line stayed structurally ASCII-narrow — and the header
named a width-aware clip as the prerequisite before free-form text (choice
labels, task titles) may land there. Session 22 needs exactly that, so the
prerequisite lands first: width.ts measures display columns (combining and
zero-width = 0, CJK/Hangul/Kana/fullwidth/emoji = 2, else 1; a deliberate
approximation of UAX #11, wrong only toward an early ellipsis) and the
draw clip now budgets columns, byte-identical to the old clip on ASCII.

Suite 2308 pass / 11 skip incl. the byte-exact status-protocol pins.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Bumps [undici](https://github.com/nodejs/undici) from 7.29.0 to 8.10.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](nodejs/undici@v7.29.0...v8.10.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 8.10.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/undici-8.10.0 branch from 18b1edd to 020d03d Compare August 16, 2026 10:16
@earthwalker17

Copy link
Copy Markdown
Owner

Deferred deliberately, and recorded as such — see the "Provider and model" entry in the deferred pool in docs/ROADMAP.md.

undici is a runtime dependency reached through exactly one module (src/net/transport.ts), and what that module does is the part a major bump can quietly break: it resolves a proxy per request URL and attaches a ProxyAgent dispatcher for that request only, never touching the global dispatcher. A green unit suite would not tell us that still holds — proxy behaviour is precisely the thing this project has already been bitten by live, when a bare global fetch in the key-validation probe returned 401 for a valid credential on a proxied machine.

So this waits for a session that can verify it against a real proxy, rather than riding a version badge. Left open.

earthwalker17 added a commit that referenced this pull request Aug 16, 2026
Applied on current main rather than by merging Dependabot #12: that branch
predates this session's CI change, so its Linux leg — no longer advisory — runs
without the three portability fixes and would fail on a bump that has nothing
to do with it.

The SDK reaches exactly one module (src/provider/anthropic.ts), so the blast
radius is the Anthropic adapter. Typecheck clean; the anthropic, provider-infra,
wire-image, mock-provider and architecture suites pass (57 tests). The live
adapter smoke stays opt-in and was not run — it costs money.

Deliberately NOT taken in the same pass:

- #10, despite its "dev-dependencies group" title, is typescript ~5.9 -> ~7.0
  and @types/node ^22 -> ^26. Two majors, one of them a TypeScript major on a
  codebase with noUncheckedIndexedAccess and exactExactOptionalPropertyTypes,
  and @types/node 26 describes APIs above this package's own Node 22 floor.
  dependabot.yml already says a TS major should be a deliberate, hand-reviewed
  upgrade; it is not release polish.
- #11 is undici 7 -> 8, deferred on the record because the proxy dispatcher
  needs live verification, not a green unit suite.

Both stay open with that reasoning on the PR.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant