Skip to content

chore: bump undici from 7.29.0 to 8.10.0 - #699

Open
dependabot[bot] wants to merge 3 commits into
masterfrom
dependabot/npm_and_yarn/undici-8.10.0
Open

chore: bump undici from 7.29.0 to 8.10.0#699
dependabot[bot] wants to merge 3 commits into
masterfrom
dependabot/npm_and_yarn/undici-8.10.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 2, 2026

Copy link
Copy Markdown
Contributor

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 compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

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:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file. javascript Pull requests that update javascript code labels Sep 2, 2026
undici 8's ProxyAgent only tunnels http:-scheme requests through CONNECT
when proxyTunnel is set; WebSocket support rewrites ws(s): to http(s):
before dispatching, so it was silently forwarded instead of tunneled,
breaking the Upgrade handshake through the proxy under test.

ProxyAgent also passes the proxy's literal hostname as the TLS
servername for HTTPS main-proxy connections, which Node rejects for IP
literals (the tests always address the main proxy by 127.0.0.1).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@bliuchak bliuchak self-assigned this Sep 3, 2026
@VojtaM39

VojtaM39 commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

@bliuchak Not sure if we want to do this bump. Undici 8 requires node 22 and locally if you run pnpm test:docker it will fail right now.

As it's just a dev dependency, we could just bump the Dockerfile version and remove node 20 from scripts/test-docker-all.sh, but since we still have support for node 20, I think we should keep it testable on that version.

@dependabot @github

dependabot Bot commented on behalf of github Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

A newer version of undici exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged.

@VojtaM39 VojtaM39 added the t-unblocking Issues with this label are in the ownership of the unblocking team. label Sep 3, 2026
Comment thread test/utils/http_client.ts
}
return new ProxyAgent({ uri: proxy.origin, token, connectTimeout, requestTls: tls, proxyTls: tls });

// `undici`'s WebSocket support rewrites ws(s): to http(s): before dispatching, so a `ws:`

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

(nit): I would prefer simple 1 sentence comments. Don't like those essays 😄

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 t-unblocking Issues with this label are in the ownership of the unblocking team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants