Releases: cloudflare/workers-sdk
Release list
wrangler@4.121.0
Minor Changes
-
#15079
15cad03Thanks @podonnell-dev! - Add Preview base config secret commandsWrangler now manages Worker Preview base config secrets with
wrangler preview base-config secret put,delete,list, andbulk. These commands update the Worker'spreviews_base_config.env, keeping shared defaults scoped to all of that Worker's Previews.wrangler preview base-config secret listreads from the Worker's Preview base config and prints secret names with values masked.wrangler preview base-config secret bulkdeletes a secret when its value isnull, matchingwrangler secret bulk. -
#15000
731b33aThanks @edmundhung! - Allow Wrangler projects to build a Worker once and reuse it increateTestHarness()Build the Worker once:
wrangler deploy --dry-run --outdir ./worker-output
Then reuse the emitted Worker during test harness startup and reset:
const server = createTestHarness({ workers: [ { configPath: "./wrangler.jsonc", prebuiltWorkerDir: "./worker-output", }, ], });
-
#14737
e1b5b4bThanks @ttoino! - Addemail.sendingas an event subscription source for queueswrangler queues subscription createnow accepts--source email.sendingalongside two new flags,--zone-idand--domain, which identify the zone and the sending domain (zone apex or a verified subdomain) to subscribe to. Both flags are required for this source. The subscription's resource is displayed as the sending domain inwrangler queues subscription get. -
#15073
d669088Thanks @FlorentCollin! - Add US jurisdiction support towrangler d1 createYou can now create a D1 database in the US jurisdiction with
wrangler d1 create <name> --jurisdiction us. The new jurisdiction is also listed in the command's help output. -
#15079
15cad03Thanks @podonnell-dev! - Use Preview deployment PATCH APIs for Preview secret commandsWrangler now updates Worker Preview secrets by patching the named Preview's latest deployment instead of patching the Worker's Previews settings. This keeps secret changes scoped to one Preview, avoids affecting production or other Previews, and creates a new Preview deployment that goes live at 100% immediately.
wrangler preview secret listnow reads from the named Preview's latest deployment and prints secret names with values masked.wrangler preview secret bulknow deletes a secret when its value isnull, matchingwrangler secret bulk. -
#14924
0aa8fa5Thanks @ariesclark! - HonorDO_NOT_TRACK=1as a telemetry opt-outWrangler now disables telemetry when
DO_NOT_TRACK=1is set, regardless of other telemetry settings.
Patch Changes
-
#15081
026e058Thanks @podonnell-dev! - Compactwrangler previewdeployment success outputwrangler previewnow prints a concise success summary with the Preview name, Preview URL, deployment ID, and Deployment URL instead of the previous box-art settings summary. -
#15132
5b1b930Thanks @dario-piotrowicz! - Fetch script metadata directly instead of listing all scriptsWhen resolving Durable Object migrations, fetch the specific script's service metadata via
/workers/services/{name}instead of listing all scripts in the account via/workers/scripts. This avoids downloading metadata for every Worker in the account just to find one script's migration tag. -
#15032
6e7d37dThanks @Sertug17! - Fixwrangler devcommands crashing withNo such module "wrangler:modules-watch"when"no_bundle": trueRunning
wrangler devorwrangler pages devwith bundling disabled ("no_bundle": trueinwrangler.json, or the--no-bundleflag) no longer crashes at startup withUncaught Error: No such module "wrangler:modules-watch". Live reloading on file changes continues to work as before. -
Updated dependencies [
c7aede7]:
create-cloudflare@2.71.0
Minor Changes
-
#14924
0aa8fa5Thanks @ariesclark! - HonorDO_NOT_TRACK=1as a telemetry opt-outCreate Cloudflare now disables telemetry when
DO_NOT_TRACK=1is set, regardless of other telemetry settings.
Patch Changes
-
#15098
4cb1547Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
Dependency From To create-next-app 16.2.12 16.3.0 -
#15099
aa9b121Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
Dependency From To create-solid 0.8.0 0.8.1 -
#15100
cf785d7Thanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
Dependency From To @angular/create 22.1.2 22.1.3 -
#15101
35e4cffThanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
Dependency From To @tanstack/cli 0.70.1 0.70.2 -
#15102
72154fdThanks @dependabot! - Update dependencies of "create-cloudflare"The following dependency versions have been updated:
Dependency From To create-vike 0.0.671 0.0.673
@cloudflare/workers-utils@0.32.0
Minor Changes
-
#14924
0aa8fa5Thanks @ariesclark! - Add shared support for theDO_NOT_TRACKenvironment variableAdd utilities for recognizing
DO_NOT_TRACK=1and incorporating it when resolving Wrangler's telemetry preference.
@cloudflare/workers-auth@0.6.2
Patch Changes
- Updated dependencies [
0aa8fa5]:- @cloudflare/workers-utils@0.32.0
@cloudflare/vitest-pool-workers@0.21.1
Patch Changes
-
#14882
ab9132dThanks @petebacondarwin! - Report built-in modules that a Worker's compatibility settings don't provide as module errors, instead of crashing workerdPreviously, a Worker whose module graph statically reached a compatibility-gated built-in that wasn't enabled — for example
import "node:child_process"withoutnodejs_compat— took down the runtime with*** Received signal #11: Segmentation faultbefore any test ran. Vitest reported onlyWorker exited unexpectedly, naming neither the module nor the file that imported it, which made the cause very hard to find. The import didn't even have to be called; being reachable from the entrypoint was enough.The module fallback service answered these specifiers with a redirect to the modules root, but workerd already resolves
node:/cloudflare:/workerd:specifiers there, so the redirect pointed back at the module workerd was in the middle of resolving and it recursed until the stack overflowed. Such a specifier only reaches the fallback service when workerd's own registry has already missed, so it's now reported as not found: workerd raisesNo such module "node:child_process", matching whatwrangler devdoes for the same Worker. The accompanying pool error names the module and points at compatibility flags rather than suggesting you bundle it, which can't help for a module built into the runtime. -
Updated dependencies [
15cad03,026e058,731b33a,e1b5b4b,5b1b930,6e7d37d,d669088,15cad03,c7aede7,0aa8fa5]:- wrangler@4.121.0
- miniflare@5.20260804.1-alpha
@cloudflare/vite-plugin@1.51.3
@cloudflare/runtime-types@0.0.12
Patch Changes
- Updated dependencies [
c7aede7]:
@cloudflare/remote-bindings@0.0.10
Patch Changes
- Updated dependencies [
026e058,5b1b930,c7aede7,0aa8fa5]:- @cloudflare/deploy-helpers@0.6.8
- miniflare@5.20260804.1-alpha
- @cloudflare/workers-utils@0.32.0
- @cloudflare/cli-shared-helpers@0.1.22
- @cloudflare/workers-auth@0.6.2
@cloudflare/deploy-helpers@0.6.8
Patch Changes
-
#15081
026e058Thanks @podonnell-dev! - Compactwrangler previewdeployment success outputwrangler previewnow prints a concise success summary with the Preview name, Preview URL, deployment ID, and Deployment URL instead of the previous box-art settings summary. -
#15132
5b1b930Thanks @dario-piotrowicz! - Fetch script metadata directly instead of listing all scriptsWhen resolving Durable Object migrations, fetch the specific script's service metadata via
/workers/services/{name}instead of listing all scripts in the account via/workers/scripts. This avoids downloading metadata for every Worker in the account just to find one script's migration tag. -
Updated dependencies [
c7aede7,0aa8fa5]:- miniflare@5.20260804.1-alpha
- @cloudflare/workers-utils@0.32.0
- @cloudflare/cli-shared-helpers@0.1.22