Wrangler's July 2026 Breaking Changes: Full Guide

A dark comparison-matrix style cover listing Wrangler's July 2026 breaking changes: service environments removed, wrangler.toml vs jsonc precedence, containerEngine dropped from Miniflare, cloudflare.config.ts settings export, and local dev observability default-on
On this page

Structural Comparison Matrix

#ChangeVersionTypeApplies to you if…
1Service environments removed4.111.0BreakingYour config uses legacy_env or [env.*] blocks
2wrangler.toml vs jsonc precedencen/a (ongoing)Config hazardYou have both a wrangler.toml and wrangler.jsonc in the same project
3containerEngine dropped from Miniflare worker options4.117.0Breaking (API)You call unstable_getMiniflareWorkerOptions() directly in a custom test harness
4cloudflare.config.ts gains a settings export4.113.0Config shapeYou use the experimental cloudflare.config.ts format
5Local dev observability on by default4.114.0 / 4.118.0Behavior defaultYou run wrangler dev or the Cloudflare Vite plugin
6wrangler check startup graduates from alpha4.116.0New capabilityYou want real bundle-size numbers before deploying
7Naming prompts skipped in non-interactive deploys4.116.0FixYou deploy via CI or an AI agent driving the CLI
8r2_buckets local dev credentials4.115.0New config optionYou test R2 bindings locally
9VPC bindings .connect() works in local dev4.115.0New capabilityYou use VPC Network/Service bindings and previously had to stub .connect()
10wrangler login supports OAuth Device Grant4.119.0New capabilityYou authenticate from a headless/SSH/remote environment

Every row above is confirmed against the real cloudflare/workers-sdk changelog entry for its version, not summarized from memory. Full mechanism, exact error text, and the fix live in each linked post.

The 10 changes, in detail

  1. Wrangler Removes Service Environments (v4.111.0): the one hard breaking change. legacy_env is gone; every environment now deploys as its own independent Worker.
  2. Fix Wrangler wrangler.toml vs jsonc Precedence: Wrangler accepts both formats with no enforced precedence rule and no migration command. This site’s own config hit this directly.
  3. Wrangler 4.117 Drops containerEngine From Miniflare: a custom Vitest harness reading containerEngine off the old worker-options shape now silently gets undefined.
  4. Wrangler’s New cloudflare.config.ts settings Export: account-level settings need a dedicated settings export now, or they stop applying silently.
  5. Wrangler Now Traces Local Dev by Default (v4.118): wrangler dev captures request traces automatically, which can conflict with multi-process dev-registry setups.
  6. Check Worker Bundle Size With wrangler check startup: no longer alpha-gated, and now reports real bundle size before you deploy.
  7. Wrangler Skips Naming Prompts in Agent/CI Deploys: fixes a real blocker for non-interactive CI pipelines and AI coding agents driving the CLI.
  8. New r2_buckets Local Dev Credentials in Wrangler: a dedicated config key to scope credentials to local R2 testing instead of faking it or sharing production-adjacent access.
  9. VPC Bindings Now Connect in Wrangler Local Dev: .connect() on VPC bindings finally works locally instead of requiring a stub.
  10. Wrangler Login Now Supports OAuth Device Grant: authenticate from a headless terminal with no local browser required.

Why this happened in one month

Cloudflare ships Wrangler on a near-weekly cadence, and July 2026 concentrated an unusual amount of structural churn into a five-week window: one deliberate breaking change (service environments), plus a cluster of local-dev tooling upgrades (observability, R2 credentials, VPC bindings) that all landed within days of each other. None of these are speculative. Every version number and change description above is drawn directly from cloudflare/workers-sdk’s own packages/wrangler/CHANGELOG.md, cross-checked against the release dates in that same file.

Browse the rest of the Dev Tools archive for more Cloudflare Workers and CLI coverage.

Frequently asked

Do I need to fix all 10 of these before my next deploy?

No. Only Cluster 1 (service environments removed) is a hard breaking change that stops a deploy outright if your config still uses legacy_env. The other nine are either config-shape changes that only bite if you use that specific feature (jsonc precedence, cloudflare.config.ts settings, r2_buckets local credentials), or new capabilities you can adopt whenever it's useful (wrangler check startup, OAuth device grant login). Check the table below for which ones actually apply to your setup.

Where does this list stop? Is there a Wrangler release after 4.119.0 not covered here?

This pillar covers wrangler@4.111.0 through 4.119.0, released 2026-07-15 through 2026-08-05 - the active research window when this was written. A later release could ship more breaking changes; check the current cloudflare/workers-sdk CHANGELOG.md for anything past 4.119.0.

Emitted as FAQPage JSON-LD from the same frontmatter — one source, no duplicated prose.

Recent posts

Full-text search via Pagefind · ↑↓ to navigate · ↵ to open