Version Packages - #15175
Merged
Merged
Version Packages#15175
Conversation
Contributor
|
✅ All changesets look good |
@cloudflare/autoconfig
@cloudflare/build-output-utils
@cloudflare/config
create-cloudflare
@cloudflare/deploy-helpers
@cloudflare/kv-asset-handler
miniflare
@cloudflare/pages-functions
@cloudflare/pages-shared
@cloudflare/unenv-preset
@cloudflare/vite-plugin
@cloudflare/vitest-pool-workers
@cloudflare/workers-auth
@cloudflare/workers-editor-shared
@cloudflare/workers-utils
wrangler
commit: |
workers-devprod
force-pushed
the
changeset-release/main
branch
3 times, most recently
from
August 14, 2026 11:12
3d029c1 to
7a86df6
Compare
workers-devprod
force-pushed
the
changeset-release/main
branch
22 times, most recently
from
August 16, 2026 20:29
9dd030f to
d09ae49
Compare
workers-devprod
force-pushed
the
changeset-release/main
branch
12 times, most recently
from
August 18, 2026 08:11
2bff02e to
52b0990
Compare
workers-devprod
force-pushed
the
changeset-release/main
branch
from
August 18, 2026 11:01
52b0990 to
bf82de9
Compare
edmundhung
approved these changes
Aug 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@cloudflare/config@0.6.0
Minor Changes
#15026
6529f0cThanks @petebacondarwin! - Add acontaineroption toexports.durableObject()Live Durable Object exports can now attach a container by name, matching the new
containerfield in the Wrangler configuration format:Containers are only supported on the SQLite storage engine, so
containeris only offered alongsidestorage: "sqlite". Passing it withstorage: "legacy-kv"is a type error rather than something only caught on deploy:This is an experimental feature: containers themselves are not yet configurable from
cloudflare.config.ts, so the field is only useful once they are.@cloudflare/vite-plugin@1.53.0
Minor Changes
#15026
6529f0cThanks @petebacondarwin! - Allow containers to be attached to a Durable Object from itsexportsentryA container can now be linked to its Durable Object from the export side, using a new
containerfield that names an entry in thecontainersarray. As a resultcontainers[].class_nameis now optional — a container that is referenced this way only needs aname:{ "name": "my-worker", "main": "worker.js", "compatibility_date": "2026-07-01", "containers": [ { "name": "my-container", "image": "./Dockerfile", "max_instances": 1 } ], "exports": { "MyContainerDO": { "type": "durable-object", "storage": "sqlite", "container": "my-container" } } }The existing
containers[].class_namedirection keeps working and either direction may be used, but the two must agree: a container that names its Durable Object cannot also be claimed by a different one.containeris only valid on livedurable-objectexports (createdandexpecting-transfer) and requiresstorage: "sqlite". Wrangler now also reports an error when:containerreference names a container that does not existnameclass_namenames a Durable Object whosestorageislegacy-kvThat last case was previously accepted but could never work: workerd attaches a single container per Durable Object namespace, and in local development every container for a class builds into the same image tag, so one silently overwrote the other. If you have two containers on one
class_name, give each its own Durable Object class.Patch Changes
#15238
3a4fc6bThanks @jamesopstad! - Honoraccess.devwhen running Workers with@cloudflare/vite-plugin, soctx.access.getIdentity()returns the configured identity.#15028
d4f441fThanks @harshmathurx! - Handle Worker-side request body cancellation without surfacing stream controller errors in local dev.#15185
1f79aceThanks @jamesopstad! - Use a fixed default compatibility date rather than the current dateWhen no compatibility date was set, Wrangler, C3 and the Vitest pool all defaulted to the current date.
workerdonly accepts a compatibility date up to 7 days beyond its own release, so whenever aworkerdrelease was delayed the default could get ahead of the runtime that had been installed, and local development would fail to start.The default is now fixed at the release date of the
workerdversion that ships with each release, which leaves a week of headroom and updates asworkerdis upgraded.@cloudflare/vite-pluginpreviously inlined the date at which it was built. It now shares the same default.#15239
f431166Thanks @jamesopstad! - Prevent date-enabled Node.js compatibility from adding conflicting globals to generated runtime typesRuntime type generation now treats Node.js compatibility enabled by a compatibility date the same way as an explicit
nodejs_compatflag. Node.js globals continue to come from@types/nodeinstead of being generated asanydeclarations that override those types.#15196
8fb2b87Thanks @skepticfx! - Use the FedRAMP High managed container registry when Wrangler targets the FedRAMP High compliance regionContainer builds, pushes, deployments, image commands, and local development now select the corresponding production or staging FedRAMP registry and API from either
compliance_regionorCLOUDFLARE_COMPLIANCE_REGION.Updated dependencies [
bc5726b,1277a72,ba54f0d,6529f0c,b7422b0,186339c,4f922dc,4d74b8d,2e0c962,1f79ace,49f73de,7cee278,8777180,265256a,1f79ace,f431166,8fb2b87,75cf407]:@cloudflare/vitest-pool-workers@0.22.0
Minor Changes
#13830
49d4e00Thanks @penalosa! - Mocking requests with MSW in Worker tests now requires MSW >= 2.14@cloudflare/vitest-pool-workerspreviously shipped internal shims to make MSW work inside the workerd runtime. MSW 2.14 added that support natively, so those shims have been removed.If you mock requests with MSW in your Worker tests, make sure you're on MSW
>= 2.14; older versions will no longer intercept requests. You can keep usingsetupServer()frommsw/node, or adopt the official@msw/cloudflareintegration viasetupNetwork(). See the updatedrequest-mockingexample fixture for the recommended pattern.Patch Changes
#15211
bc5726bThanks @nithin42! - Honoraccess.devwhen running Workers with@cloudflare/vitest-pool-workers, soctx.access.getIdentity()returns the configured identity just as it does withwrangler dev.#15156
3ddd3ceThanks @dario-piotrowicz! - Fix module resolution for relativerequire()inside CJS deps when the project path contains spacesWhen a project lives under a directory with a space in its name, externalized CommonJS dependencies that use relative
require()calls (e.g.require("./lib/impl.js")) would fail with "No such module" becauseworkerdpreserves URL encoding in the module name. Encoded module paths are now handled deterministically before CommonJS resolution without altering literal percent sequences.#15150
2cf3143Thanks @kkkhs! - Restore typedinject()keys incloudflareTest()pool optionsinject()insidecloudflareTest()options again infers the value type from the keys you declare in your VitestProvidedContext, and reports misspelled keys. For keys that are only provided at runtime, pass an explicit type argument, e.g.inject<number>("myPort").#15232
8777180Thanks @vicb! - Bumpcapnp-esto 0.0.16.#15185
1f79aceThanks @jamesopstad! - Use a fixed default compatibility date rather than the current dateWhen no compatibility date was set, Wrangler, C3 and the Vitest pool all defaulted to the current date.
workerdonly accepts a compatibility date up to 7 days beyond its own release, so whenever aworkerdrelease was delayed the default could get ahead of the runtime that had been installed, and local development would fail to start.The default is now fixed at the release date of the
workerdversion that ships with each release, which leaves a week of headroom and updates asworkerdis upgraded.@cloudflare/vite-pluginpreviously inlined the date at which it was built. It now shares the same default.Updated dependencies [
bc5726b,1277a72,ba54f0d,6529f0c,b7422b0,186339c,4f922dc,4d74b8d,2e0c962,1f79ace,49f73de,7cee278,8777180,265256a,1f79ace,f431166,8fb2b87,75cf407]:wrangler@4.124.0
Minor Changes
#15026
6529f0cThanks @petebacondarwin! - Allow containers to be attached to a Durable Object from itsexportsentryA container can now be linked to its Durable Object from the export side, using a new
containerfield that names an entry in thecontainersarray. As a resultcontainers[].class_nameis now optional — a container that is referenced this way only needs aname:{ "name": "my-worker", "main": "worker.js", "compatibility_date": "2026-07-01", "containers": [ { "name": "my-container", "image": "./Dockerfile", "max_instances": 1 } ], "exports": { "MyContainerDO": { "type": "durable-object", "storage": "sqlite", "container": "my-container" } } }The existing
containers[].class_namedirection keeps working and either direction may be used, but the two must agree: a container that names its Durable Object cannot also be claimed by a different one.containeris only valid on livedurable-objectexports (createdandexpecting-transfer) and requiresstorage: "sqlite". Wrangler now also reports an error when:containerreference names a container that does not existnameclass_namenames a Durable Object whosestorageislegacy-kvThat last case was previously accepted but could never work: workerd attaches a single container per Durable Object namespace, and in local development every container for a class builds into the same image tag, so one silently overwrote the other. If you have two containers on one
class_name, give each its own Durable Object class.Patch Changes
#15211
bc5726bThanks @nithin42! - Honoraccess.devwhen running Workers with@cloudflare/vitest-pool-workers, soctx.access.getIdentity()returns the configured identity just as it does withwrangler dev.#14999
ba54f0dThanks @mittalpk! - Fix.envloading on Windows leaking stale, differently-cased duplicate keysOn Windows,
wranglerloads.envvalues through a case-insensitiveProxywrapper so lookups likeenv.PATHandenv.Pathresolve to the same value, and this object is assigned directly toprocess.env. When a key was set again under a different casing (e.g. a value in.env.localoverriding one from.envwith different casing), the previous casing was never removed from the underlying object.env.PATH/env.Pathstill returned the correct, latest value, but anything that enumeratesprocess.env—Object.keys,for...in,JSON.stringify, object spread, or a spawned subprocess inheriting the environment — would see both the stale and current key.Duplicate entries no longer appear, so environment variables passed to subprocesses and any code that lists the environment now see only the latest value for each variable.
#15044
b7422b0Thanks @stareezy-1! - Normalize structural CRLF line endings before sending D1 commands to the remote query APIwrangler d1 migrations apply --remoteandwrangler d1 execute --remote --commandfailed withincomplete input: SQLITE_ERRORwhen the SQL contained CRLF line endings inside a compound statement such as aCREATE TRIGGER ... BEGIN ... END;body. Structural line endings are now normalized to LF before the command is sent to the D1 query API, while CRLF inside quoted values and identifiers remains unchanged.#15046
186339cThanks @erwinzhang7! - Fixes D1 SQL statements not handling lowercaseends correctlywrangler d1 executeandwrangler d1 migrations applysplit a SQL file into statements before running them. ABEGINorCASEblock closed with a lowercaseendwas not recognised as closed, so every statement after it was folded into that block instead of being run on its own. SQLite accepts either case, so a file like this applied only the trigger and silently skipped the table:Files written with an uppercase
ENDwere unaffected. Both cases now behave the same.#15231
4f922dcThanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15248
4d74b8dThanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15185
1f79aceThanks @jamesopstad! - Resolve--latestto the newest compatibility date supported by the installed runtimewrangler deploy --latestandwrangler versions upload --latestresolved the compatibility date to the current date, andwrangler pages download configdid the same for projects configured to always use the latest compatibility date. Both write that date into a configuration file for subsequent commands to use, so a date that the installedworkerddid not yet support left the project unable to runwrangler dev.These now resolve to the latest compatibility date supported by this version of Wrangler, which is the release date of the
workerdit ships with.#15151
49f73deThanks @maximilliangrand! - Fix spuriousTrailing comma jsonc(519)warnings forwrangler.jsoncin VS Code 1.131+Trailing commas in
wrangler.jsoncfiles that reference Wrangler's JSON schema are no longer reported as errors by recent versions of VS Code. Wrangler always accepted these files; only the editor warning was wrong.#14983
7cee278Thanks @kdelay! - RespectCLOUDFLARE_ACCOUNT_IDinwrangler pages project list,createanddeleteThese three commands could target a previously used account even when
CLOUDFLARE_ACCOUNT_IDwas set, failing withAuthentication error [code: 10000]in setups with more than one account. They now use the account named byCLOUDFLARE_ACCOUNT_ID, matching the rest ofwrangler pages. When the variable is unset, the previously used account is still selected, as before.#15153
265256aThanks @podonnell-dev! - Fixwrangler preview base-configcommands showing an inheritedscriptpositional#15185
1f79aceThanks @jamesopstad! - Use a fixed default compatibility date rather than the current dateWhen no compatibility date was set, Wrangler, C3 and the Vitest pool all defaulted to the current date.
workerdonly accepts a compatibility date up to 7 days beyond its own release, so whenever aworkerdrelease was delayed the default could get ahead of the runtime that had been installed, and local development would fail to start.The default is now fixed at the release date of the
workerdversion that ships with each release, which leaves a week of headroom and updates asworkerdis upgraded.@cloudflare/vite-pluginpreviously inlined the date at which it was built. It now shares the same default.#15239
f431166Thanks @jamesopstad! - Prevent date-enabled Node.js compatibility from adding conflicting globals to generated runtime typesRuntime type generation now treats Node.js compatibility enabled by a compatibility date the same way as an explicit
nodejs_compatflag. Node.js globals continue to come from@types/nodeinstead of being generated asanydeclarations that override those types.#15196
8fb2b87Thanks @skepticfx! - Use the FedRAMP High managed container registry when Wrangler targets the FedRAMP High compliance regionContainer builds, pushes, deployments, image commands, and local development now select the corresponding production or staging FedRAMP registry and API from either
compliance_regionorCLOUDFLARE_COMPLIANCE_REGION.#15082
75cf407Thanks @penalosa! - Enable the new configuration format in thecf-wranglerdev delegateProjects started through
cf devnow loadcloudflare.config.tsand optionalwrangler.config.ts, matching the configuration used by the delegate's build path.Updated dependencies [
1277a72,4f922dc,4d74b8d,2e0c962,8777180]:@cloudflare/autoconfig@0.2.8
Patch Changes
fb6b51b,1b73c87]:@cloudflare/build-output-utils@0.1.2
Patch Changes
6529f0c]:@cloudflare/cli-shared-helpers@0.1.24
Patch Changes
fb6b51b,1b73c87]:create-cloudflare@2.72.1
Patch Changes
#15217
1447950Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
#15218
6d71eebThanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
#15219
ee15a07Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
#15220
1282749Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
#15221
7af190aThanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
#15222
afe5788Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
#14953
05959fbThanks @edmundhung! - Update the Hello World templates to use the latest version of@cloudflare/vitest-pool-workers.#15185
1f79aceThanks @jamesopstad! - Use a fixed default compatibility date rather than the current dateWhen no compatibility date was set, Wrangler, C3 and the Vitest pool all defaulted to the current date.
workerdonly accepts a compatibility date up to 7 days beyond its own release, so whenever aworkerdrelease was delayed the default could get ahead of the runtime that had been installed, and local development would fail to start.The default is now fixed at the release date of the
workerdversion that ships with each release, which leaves a week of headroom and updates asworkerdis upgraded.@cloudflare/vite-pluginpreviously inlined the date at which it was built. It now shares the same default.@cloudflare/deploy-helpers@0.7.1
Patch Changes
1277a72,fb6b51b,4f922dc,4d74b8d,2e0c962,1b73c87,8777180]:miniflare@5.20260815.0-alpha
Patch Changes
#15206
1277a72Thanks @petebacondarwin! - Recover automatically from a partially downloaded Chrome install for the Browser Run bindingIf the Chrome download for a
browserbinding was interrupted — a cancelled dev session, a killed test run, a machine going to sleep — the next launch could fail indefinitely withFailed to launch the browser process!, usually alongside a message about being unable to loadresources.pak.@puppeteer/browserstreats an install as present as soon as the executable exists, and the Chrome archives extract alphabetically, so the executable is written long before the resources it needs. Every subsequent launch then reused the half-written directory, and the only way out was deleting the Chrome cache by hand.Miniflare now detects this: an install that Chrome has never successfully started from is cleared and re-downloaded on a failed launch, rather than reused forever. Overlapping launches also share a single download instead of racing to populate the same directory.
#15231
4f922dcThanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15248
4d74b8dThanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15143
2e0c962Thanks @teamleaderleo! - Preventworkerdfrom remaining running during Miniflare shutdown when browser or proxy cleanup is slow or fails.#15232
8777180Thanks @vicb! - Bumpcapnp-esto 0.0.16.@cloudflare/pages-shared@0.13.170
Patch Changes
1277a72,4f922dc,4d74b8d,2e0c962,8777180]:@cloudflare/workers-auth@0.6.4
Patch Changes
#15080
b6d00edThanks @teamleaderleo! - Use the current Cloudflare Access service-token credentials after environment variables change. Interactive Access cookie caching is unchanged.Updated dependencies [
fb6b51b,1b73c87]:@cloudflare/workers-utils@0.33.1
Patch Changes
#15088
fb6b51bThanks @Neal006! - Report malformed container SSH keys and a non-objectcontainers.configurationas config errors instead of crashingPreviously, a
containersentry with a malformedauthorized_keysortrusted_user_ca_keysentry (a missing or non-stringpublic_key, or an entry that is not an object), or acontainers.configurationset tonull, made Wrangler exit with a stack trace and "If you think this is a bug, please open an issue" rather than pointing at the field.These configurations now produce an ordinary configuration error naming the offending field and array index, such as
containers.authorized_keys[0].public_key must be a string. Apublic_keythat is not an ED25519 key is also now reported with correct grammar.#15010
1b73c87Thanks @LeSingh1! - Report an invalidqueues.consumersvalue as a configuration error instead of crashingPreviously, setting
queues.consumersto something other than an array (for examplenullor a string) could crash Wrangler or produce a flood of confusing extra errors. You now get a single clear message telling you the field must be an array.@cloudflare/edge-preview-authenticated-proxy@0.3.3
Patch Changes
#15224
32782e4Thanks @petebacondarwin! - Fix missing request and error metrics for the edge preview proxyThe proxy stopped reporting its request and error counters, so dashboards and alerts based on them had no data. Metrics reporting now works again.
@cloudflare/remote-bindings@0.0.13
Patch Changes
1277a72,fb6b51b,4f922dc,4d74b8d,2e0c962,1b73c87,b6d00ed,8777180]:@cloudflare/runtime-types@0.0.15
Patch Changes
1277a72,4f922dc,4d74b8d,2e0c962,8777180]: