Skip to content

chore(deps): bump undici and wrangler in /worker - #1131

Open
dependabot[bot] wants to merge 2 commits into
mainfrom
dependabot/npm_and_yarn/worker/multi-89d8bb2cd3
Open

chore(deps): bump undici and wrangler in /worker#1131
dependabot[bot] wants to merge 2 commits into
mainfrom
dependabot/npm_and_yarn/worker/multi-89d8bb2cd3

Conversation

@dependabot

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

Copy link
Copy Markdown
Contributor

Bumps undici to 7.29.0 and updates ancestor dependency wrangler. These dependencies need to be updated together.

Updates undici from 7.24.8 to 7.29.0

Release notes

Sourced from undici's releases.

v7.29.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 9f10f1e9, with regression coverage in 466e99d1.

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 33928bc2.
  • 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 98011a86.
  • 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 1b5a5312, with corrected fixtures in 4a9dafb1.
  • 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 3bf91ddb.

Full Changelog: nodejs/undici@v7.28.0...v7.29.0

v7.28.0

⚠️ Security Release

This release line addresses 7 security advisories, all shipped in v7.28.0.

Action required: Upgrade to undici 7.28.0 or later.

npm install undici@^7.28.0

The v7 line is not affected by GHSA-38rv-x7px-6hhq (CVE-2026-9675), which is an 8.x-only regression.

Note on GHSA-hm92-r4w5-c3mj: this fix shipped in v7.28.0, not the earlier 7.2x line — the vulnerable single-pool code was still present through v7.27.2. The per-origin pool fix is 3805b8f8 (#5041).

Summary

Advisory CVE Severity (CVSS) Fixed in Fix commit
GHSA-vxpw-j846-p89q CVE-2026-12151 High (7.5) 7.28.0 8cb10f98
GHSA-vmh5-mc38-953g CVE-2026-9697 High (7.4) 7.28.0 04201f89
GHSA-hm92-r4w5-c3mj CVE-2026-6734 High (7.5) 7.28.0 3805b8f8
GHSA-pr7r-676h-xcf6 CVE-2026-9678 Moderate (5.9) 7.28.0 85a24055
GHSA-p88m-4jfj-68fv CVE-2026-9679 Moderate (5.9) 7.28.0 d0574cc4
GHSA-g8m3-5g58-fq7m CVE-2026-11525 Low (3.7) 7.28.0 d0574cc4
GHSA-35p6-xmwp-9g52 CVE-2026-6733 Low (3.7) 7.28.0 ea8930cf

... (truncated)

Commits
  • 9e38fc1 Bumped v7.29.0 (#5590)
  • d887e34 fix: validate coerced header values for CRLF (#5579)
  • 33928bc fix: validate blob body content type
  • 98011a8 fix(cache): harden cache directive parsing
  • 4a9dafb test(retry): correct broken content-range fixtures in retry-handler.js
  • 1b5a531 fix(retry): reject partial content length mismatch
  • 466e99d test: cover crash on mixed unqualified and qualified private cache directives
  • 9f10f1e fix: handle empty qualified private cache directive
  • 3bf91dd fix: harden cookie domain, path, and unparsed attribute validation
  • f9eba0a Bumped v7.28.0 (#5430)
  • Additional commits viewable in compare view

Updates wrangler from 4.90.0 to 4.128.0

Release notes

Sourced from wrangler's releases.

wrangler@4.128.0

Minor Changes

  • #15454 dbbb795 Thanks @​jamesopstad! - Move binding utilities into @cloudflare/workers-utils

    Binding conversion, printing, and local-development validation are now exported from @cloudflare/workers-utils so they can be shared by Wrangler, the Cloudflare Vite plugin, and other consumers.

    The corresponding exports have been removed from @cloudflare/deploy-helpers. Consumers should import them directly from @cloudflare/workers-utils instead.

    Wrangler's unstable_printBindings API now accepts the bindings and an options object instead of five positional parameters.

  • #15353 87a7acf Thanks @​pombosilva! - Add --date-start and --date-end filters to wrangler workflows instances list

    You can now narrow an instance listing to a creation-time window:

    wrangler workflows instances list my-workflow --date-start 2026-01-01 --date-end 2026-01-31

    Either flag can be used independently. Both accept an ISO 8601 date or timestamp and are normalised to UTC before being sent, so a date-only value such as 2026-01-01 works as well as a full 2026-01-01T13:00:00Z. The bounds are inclusive and compose with the existing --status filter.

  • #15379 ea28cc3 Thanks @​ibbykhazanchi! - Add query string redaction to Workers observability configuration

    Set observability.redact_query_string in wrangler.json or observability.redactQueryString in the experimental cloudflare.config.ts format to remove query strings from request URLs in logs and traces.

  • #14915 707cb6f Thanks @​longlho! - Include exact raw and gzip-compressed Worker bundle sizes in structured deploy and version-upload output.

Patch Changes

  • #15436 200780f Thanks @​dependabot! - Update dependencies of "miniflare", "wrangler"

    The following dependency versions have been updated:

    Dependency From To
    @​cloudflare/workers-types ^5.20260828.1 ^5.20260831.1
    workerd 1.20260828.1 1.20260831.1
  • #15406 b3f2628 Thanks @​james-elicx! - Reduce the installed bundle sizes of Wrangler and Miniflare

    Wrangler now resolves bundled workspace dependencies from source during monorepo builds so unused exports can be removed. Miniflare, its shared CLI and container dependencies now use granular @cloudflare/workers-utils entry points instead of loading the package barrel, reducing the raw Wrangler and Miniflare artifacts by 6.16 MiB (31.4%) and 1.06 MiB (22.9%) respectively without changing runtime behavior or installed dependencies.

  • #15398 1809c5e Thanks @​james-elicx! - Reduce Wrangler's published package size

    Stop including the unused build metafile in the npm package, reducing its unpacked size by approximately 3.1 MiB.

  • #15382 b3fb2bf Thanks @​Om-singhaI! - Skip the skills install status lookup when telemetry is disabled

    Telemetry events include a currentAgentSkillsInstalled property, and computing it can query the GitHub API. The lookup used to start before the telemetry permission was checked, so users who opted out via WRANGLER_SEND_METRICS, DO_NOT_TRACK, or send_metrics in their Wrangler config still triggered network requests on behalf of telemetry. The dispatcher now checks the permission first and only performs the lookup when telemetry is enabled.

  • Updated dependencies [200780f, b3f2628, 87a7acf]:

... (truncated)

Commits

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)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [undici](https://github.com/nodejs/undici) to 7.29.0 and updates ancestor dependency [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler). These dependencies need to be updated together.


Updates `undici` from 7.24.8 to 7.29.0
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](nodejs/undici@v7.24.8...v7.29.0)

Updates `wrangler` from 4.90.0 to 4.128.0
- [Release notes](https://github.com/cloudflare/workers-sdk/releases)
- [Commits](https://github.com/cloudflare/workers-sdk/commits/wrangler@4.128.0/packages/wrangler)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 7.29.0
  dependency-type: indirect
- dependency-name: wrangler
  dependency-version: 4.128.0
  dependency-type: direct:development
...

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

@tend-agent tend-agent left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Diff is a correct, mechanical security bump: undici 7.24.8 → 7.29.0 (the GHSA-4cwx-7wf7-3272 / GHSA-jr45-8vmc-qm54 cache-control and cookie advisories) pulled through wrangler ^4.90.0^4.128.0, with the rest of the lockfile churn — workerd, miniflare, esbuild, sharp — being wrangler's own pinned dependency set. The only source-level change is the one wrangler range line in worker/package.json. Holding APPROVE because test-worker is red.

The failure is not transient: npm ci aborts with ERESOLVE because wrangler@4.128.0 declares peerOptional @cloudflare/workers-types@"^5.20260831.1" while worker/package.json still pins ^4.20240821.0. Dependabot can't see that constraint from the undici advisory it was chasing, so the companion bump has to come from us. I'm pushing it to this branch: @cloudflare/workers-types^5.20260831.1, lockfile regenerated with npm 11 so the libc metadata Dependabot's lock carries survives. Verified locally on Node 22 (the version test-worker uses): npm ci clean, npm run typecheck clean, 32/32 vitest tests pass. Pinning wrangler back or adding --legacy-peer-deps to CI would keep the vulnerable undici or hide the constraint, so neither is a real alternative.

Two notes that need no action here. #1130 ("bump sharp and wrangler in /worker") has a byte-identical diff to this one — same two files, same 332/294 lines — because both advisories resolve through the same wrangler bump; merging either makes the other redundant, and Dependabot will close the loser. And wrangler@4.128.0 depends on miniflare@5.20260831.0-alpha; the prerelease is upstream's own pin inside a stable wrangler release, and it only affects wrangler dev locally, not the deployed Worker.

wrangler 4.128.0 declares `peerOptional @cloudflare/workers-types@"^5.20260831.1"`,
so `npm ci` aborted with ERESOLVE against the existing `^4.20240821.0` pin and
`test-worker` never got past install. Move the range to the version wrangler asks
for; typecheck and the worker suite pass unchanged on Node 22.
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