Repository navigation
Update dependency wrangler to v4.151.0 - #46
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 22, 2026 14:05
3fad63d to
5de5c2a
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 23, 2026 01:46
5de5c2a to
ec1db2e
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 24, 2026 02:59
ec1db2e to
4e57237
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 24, 2026 23:51
4e57237 to
01dea8b
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 25, 2026 10:47
01dea8b to
14291c2
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 25, 2026 22:59
14291c2 to
8f21bb0
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 27, 2026 15:04
8f21bb0 to
c42bcd1
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 28, 2026 23:45
c42bcd1 to
64193a9
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 29, 2026 19:27
64193a9 to
6c73f23
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
September 29, 2026 21:55
6c73f23 to
cf801cd
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 1, 2026 05:38
cf801cd to
d2bb033
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 1, 2026 17:38
d2bb033 to
242b416
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 2, 2026 13:14
242b416 to
9d6712f
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 7, 2026 02:55
9d6712f to
23e9652
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 8, 2026 22:22
23e9652 to
4186c5d
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 13, 2026 10:07
4186c5d to
64c7015
Compare
renovate
Bot
force-pushed
the
renovate/wrangler-4.x
branch
from
October 14, 2026 09:53
64c7015 to
9383d25
Compare
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.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
4.135.0→4.151.0Release Notes
cloudflare/workers-sdk (wrangler)
v4.151.0Compare Source
Minor Changes
#16245
d6b1c82Thanks @WalshyDev! - Include source maps by default inwrangler build --experimental-cf-build-outputBuild Output now matches
wrangler deployandwrangler versions upload, which upload source maps by default, so Workers built for tools likecfget stack traces that point at the original source. Source maps that can't be resolved are skipped rather than failing the build. Setupload_source_maps = falseto opt out.Patch Changes
#16220
97b2fb1Thanks @FlorentCollin! - Support local D1 queries through the experimentald1_binding_jsrpccompatibility flagLocal D1 bindings now implement the RPC query backend used by
D1Database.query()and prepared-statement methods when the flag is enabled. Queries reuse local SQLite execution, including transactional batches, execution metadata, and session bookmarks, while bindings without the flag continue to use HTTP. Update the bundled workerd runtime to1.20261012.1and align the default compatibility date with that release.Updated dependencies [
f360829,97b2fb1,97b2fb1,acd2822]:v4.150.0Compare Source
Minor Changes
#16231
091e5ecThanks @WalshyDev! - Upload source maps by default forwrangler deploy,wrangler versions uploadandwrangler previewWhen
upload_source_mapsisn't set in config or via--upload-source-maps, Wrangler now generates and uploads source maps so stack traces in logs andwrangler tailpoint at your original source without extra setup. In this default mode, source maps that can't be resolved (for example inlinedata:maps or missing.mapfiles from a custom build) are skipped rather than failing the upload. Settingupload_source_maps = truekeeps the existing strict behaviour, andupload_source_maps = false(or--no-upload-source-mapsfor deploy and versions upload) opts out.wrangler build --experimental-cf-build-outputis unchanged and still only includes source maps whenupload_source_maps = true.#16128
daae435Thanks @redsteadz! - Stopwrangler deploy,wrangler versions uploadandwrangler previewin projects that build for the Cloudflare CLI (cf)If your project builds through
cf, deploying it with Wrangler reads a different configuration, so it could update the wrong Worker or fail without explaining why. These commands now stop before uploading anything, name the.cloudflare/outputdirectory they found, and tell you to runcf deployinstead. If that directory is just left over from an earlier build, deleting it restores the Wrangler workflow.Ordinary Wrangler projects are unaffected, and
--dry-runstill works ondeployandversions upload. This is a new guard for the experimental Build Output Specification rather than a fix, and it gives three stable commands a failure mode they did not have before, so it is a minor.Patch Changes
#16161
fcf625dThanks @dario-piotrowicz! - Clarify the Worker not found error during CI deploy validationWrangler now reports that the configured Worker could not be found in the account instead of incorrectly describing the failure as a name mismatch.
#16156
18f061cThanks @armancharan! - Ignore.wranglerwrites in the dev assets watcherwrangler devreloaded in a loop whenassets.directorywas the project root, because the assets watcher treated wrangler's own writes under.wrangleras asset changes and dropped in-flight requests. The watcher now ignores the project's.wranglerdirectory anddev.persist, except when that path is the assets directory.#16025
61e07fdThanks @kohjunhao! - Fix optional Docker lookups printing Docker CLI errors during successful buildscf buildlooks for Container images left behind by earlier builds so it can remove them. This lookup is best effort, but when Docker could not be reached it still printed errors such asCannot connect to the Docker daemon, even when the build succeeded and no image needed Docker. Docker commands whose output Wrangler reads no longer forward the Docker CLI's error output to the terminal. If one of these commands fails in a way that stops the command, the error message still includes the Docker CLI's output.#16151
cafd3f9Thanks @DevVettel! - Time out the OAuth token request instead of waiting indefinitelyThe request that exchanges an authorization code or refresh token for an access token had no timeout, so a stalled connection (for example behind an HTTP proxy) could leave
wrangler loginhanging silently for many minutes after the browser step had succeeded. The request now gives up after 30 seconds and reports that the Cloudflare auth server could not be reached.#15517
ea64ec4Thanks @xgame92! - Preserve binding options when provisioning resources through a redirected configWrangler now writes provisioned resource identifiers to both the redirected and original config files without copying other binding options between them. This prevents generated relative paths such as D1
migrations_dirfrom replacing user-authored paths during Vite deployments.#16219
d232454Thanks @petebacondarwin! - HonorX-Forwarded-Protofor incoming development requests behind TLS-terminating proxiesMiniflare now uses the original client protocol when constructing URLs for network requests. This also prevents Wrangler from downgrading HTTPS URLs in response headers such as
LocationandWWW-Authenticatewhen a tunnel forwards requests over HTTP. Explicit programmatic request URLs and configured upstream origins remain authoritative.Updated dependencies [
5152bf8,9f87de8,9be5ec7,d232454]:v4.149.0Compare Source
Minor Changes
#16036
9a58244Thanks @edevil! - Support temporary event accounts in R2 and Containers commandswrangler r2andwrangler containerscommands now accept the hidden--temporaryflag, so accounts created for an event can manage buckets, objects and containers directly. Every command that supports--temporarynow also accepts a hidden--event-codeflag, so the first command a participant runs can create the event account:wrangler r2 bucket create my-bucket --temporary --event-code <code>R2 and Containers are only available on event accounts. R2 custom domains, Sippy, external container registries and
wrangler cloudchambercommands still require a logged-in account.Patch Changes
#16139
2d1d563Thanks @cpojer! - Update esbuild to 0.28.2Align esbuild dependency with tooling using the latest 0.28 patch so package managers can share one installation instead of downloading a second native binary.
#15632
85b14e7Thanks @petebacondarwin! - Honor Retry-After directives during static asset uploadsStatic asset uploads now pause retries and pending uploads until the latest outstanding deadline requested by the API. A per-request limiter also keeps gateway retries at the reduced concurrency after the pause ends, preventing a deployment from immediately overloading a constrained asset service again.
#16098
fe607f9Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#16093
ad7ff45Thanks @DiogoSantoss! - Document thataddressescatch-all entries must use the zone apexA
*@domainentry inaddressesmust use the zone apex, such as*@example.com. The zone catch-all also receives mail for every subdomain in the zone that has no literal rule.#16102
757faa6Thanks @tlq5l! - Keep Preview secrets when deploying to an existing PreviewSecrets added to a Preview with
wrangler preview secret putorwrangler preview secret bulkwere lost the next timewrangler previewran, because each new deployment was created from the Wrangler config,--varand--secrets-filevalues only.wrangler previewnow carries over the secrets of the Preview's latest deployment. A value passed in this deployment (--secrets-file,--varor apreviewsbinding with the same name) still replaces the existing secret, andwrangler preview secret deleteremoves one.#15617
93c1069Thanks @jpatel3! - Stop the update check from recommending deprecated versionsPreviously, the "update available" notice shown by
wranglerand@cloudflare/vite-pluginalways pointed at whichever version was taggedlateston npm, even after that version had been deprecated for shipping a bug. Deprecated versions are now never recommended: if the latest release has been deprecated, the newest non-deprecated stable release below it is suggested instead, or nothing at all if you are already on it.The check now reads the npm registry directly instead of going through the
update-checkpackage, which discarded the deprecation information. The on-disk cache location and one-hour refresh interval are unchanged.#16003
6947df3Thanks @oddharsh! - Shipusingandawait usingdeclarations to the runtime as written, for smaller Worker bundlesWorkers and Pages Functions that use explicit resource management no longer carry about 1 KB of bundled helper code to emulate it. workerd supports
usingandawait usingnatively at every compatibility date, sowrangler deploy,wrangler versions uploadand Pages Functions builds now leave these declarations untouched.#15958
82acf3cThanks @breken-ai! - Apply each action's own condition inwrangler r2 bucket lifecycle addWhen a lifecycle rule was added with both expiration and Infrequent Access transition flags, both actions read their condition from the same list of flags, which checked
--expire-daysfirst.--expire-days 365 --ia-transition-days 30therefore transitioned objects after 365 days instead of 30, and--expire-date 2027-01-01 --ia-transition-days 30deleted objects after 30 days instead of on the given date. Expiration now only reads--expire-days/--expire-date, and transition only reads--ia-transition-days/--ia-transition-date.Updated dependencies [
2d1d563,e6f7663,fe607f9,8de6b3c,ae29445,cc8e969,417b186]:v4.148.0Compare Source
Minor Changes
#16051
b4e1299Thanks @devteamaegis! - Add--source-namespaceand--source-repo-nametowrangler queues subscription createfor theartifacts.reposourceThe Event Subscriptions API requires
source.namespaceandsource.repo_nameforartifacts.reposubscriptions, but Wrangler had no way to pass them, so--source artifacts.repoalways failed with a validation error. Both flags are now required for this source, andwrangler queues subscription getshows the subscription's resource as<namespace>/<repo-name>.#15998
b75421fThanks @dario-piotrowicz! - Addassets.base_pathsupport to Workers AssetsServe an asset directory from a public URL prefix without changing its on-disk layout:
{ "assets": { "directory": "./public", "base_path": "/docs" } }Wrangler, preview, Miniflare, and generated build configuration preserve the explicitly selected value, while the Asset Worker normalizes it and strips the prefix only for asset lookup. Requests passed to a user Worker, request-facing headers, and redirects retain the public path. Relative pathname inputs are interpreted as root-relative prefixes, URL-shaped values are rejected, and omitting the option preserves existing root-path behavior.
Authored
_headersand_redirectsrules continue to match full public paths. In particular, both the source and destination of an authored200asset rewrite must include the configured public prefix; Asset Worker-generated redirects are prefixed automatically.#16005
4d308f6Thanks @oOPa! - Add a--experimental-mode instantoption towrangler kv namespace createThis lets entitled accounts create Workers KV Instant namespaces while the feature is in private beta.
#16030
aa2f9b7Thanks @edmundhung! - Add email-protected Quick Tunnels towrangler devPass one or more
--tunnel-allowed-mailflags to require email authentication when exposing a local development server through a Quick Tunnel. Each value can be an exact email address or a domain pattern.#15283
2dde890Thanks @shubhxho! - Support deleting secrets withwrangler versions secret bulkSet a secret's value to
nullin JSON input to remove it from the new Worker version. Bulk output now distinguishes between created and deleted secrets, so retryingwrangler secret bulkwithwrangler versions secret bulkpreserves requested deletions. Deploy the new version withwrangler versions deployto apply the changes to production traffic.Patch Changes
#15534
2b1a0caThanks @vahidshaik1901! - Improve guidance for conflicting Wrangler configuration filesWhen user and generated deploy configurations are found under different base paths, Wrangler now identifies the expected deploy configuration location, suggests how to resolve the conflict, and links to the relevant documentation.
#16014
c492d63Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#16079
ba52118Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15573
14f0339Thanks @xgame92! - Include default module rules in generated Worker typeswrangler typesnow declares the built-in Text, Data, and WebAssembly module patterns even when they are not repeated in the Wrangler configuration, keeping generated types aligned with deployment behavior.Service-worker declaration files are emitted as global scripts so that the generated wildcard module types are visible to imports.
Directory-specific rules retain their scope when TypeScript can represent it; ambiguous relative imports use a union of the possible deployed module types.
When generating combined types for named environments, each environment's effective rules are resolved independently and differing import types are represented as unions.
#15261
42c7219Thanks @ondraulehla! - Fixr2 object putandr2 bulk putstoring a different key in local modeKeys that are not URL-safe were mangled on the way into local storage.
r2 object getfor that key reported that the key does not exist.#collapsed into a single object, and the second upload replaced the first.%that is not a valid escape failed outright with "Invalid URL string.", and one with a valid escape, such as%41.txt, was stored asA.txt.Spaces, non-ASCII characters,
#and%now survive the trip into local storage. Objects already in local state are left where they are.#15283
2dde890Thanks @shubhxho! - Show a useful error whenwrangler secret bulkhits an undeployed latest versionwrangler secret putalready explained this case (API error 10215).secret bulkjust dumped the raw API response, which for 10214 talks about logpush and tail_consumers even though you were only uploading secrets.Both commands now point at
wrangler versions secret …instead.#16068
26e03e2Thanks @edevil! - Print temporary account notices to stderrThe terms notice, the proof-of-work message, and the "Temporary account ready" claim details printed by
--temporarynow go to stderr instead of stdout. Previously they corrupted command output on stdout, such as the JSON fromwrangler kv namespace list --temporaryor the raw value fromwrangler kv key get --temporary. Commands that lower the log level for--json, such aswrangler d1 execute --json --temporary, also hid the claim URL; it is now shown unless logging is disabled withWRANGLER_LOG=none.Scripts that read the claim URL from stdout should read stderr instead.
Updated dependencies [
b75421f,0ec13b7,c492d63,ba52118,946aaa7,48f3c04,5606a74,f8cdcb9,e44cf6b,0b51fec]:v4.147.0Compare Source
Minor Changes
#15928
7f57b1cThanks @ichernetsky-cf! - Allow"us"as a jurisdiction for Container applicationsContainer placement constraints now accept
constraints.jurisdiction: "us"in Wrangler and typed Cloudflare configuration. This makes the US jurisdiction available alongside"eu"and"fedramp".Patch Changes
#15974
7f700efThanks @martinezjandrew! - Fixwrangler containers listto report live instancesThe
LIVE INSTANCEScolumn now reports each application's active runtime instances instead of its configured instance count, matching the Cloudflare dashboard. JSON output continues to expose the configured count through the existinginstancesfield.#15980
90e6a1bThanks @martinezjandrew! - Accept Durable Object application IDs in Containers commandswrangler containers instancesandwrangler containers deletenow accept the 32-character hexadecimal application IDs returned for Durable Object-backed applications, in addition to legacy dashed UUIDs.#15871
6a4b0feThanks @tw4! - Retry transient API failures inwrangler workflows instances listandwrangler workflows instances describePreviously, a single temporary 5xx response or dropped connection made these read-only commands exit with an error, even though the next request would have succeeded. They now use Wrangler's existing bounded API retry handling. The read that resolves
--id latestis retried too, which also benefits the otherwrangler workflows instancescommands that acceptlatest; the mutating requests they make afterwards are not retried. Persistent failures are still reported after the retries are exhausted, and under--jsonany retry notices are written to stderr so stdout stays valid JSON.Updated dependencies []:
v4.146.0Compare Source
Minor Changes
#15777
464a582Thanks @Naapperas! - Support the new WorkflowscreateBatch()API in local developmentLocal Workflows bindings now accept object-form batches that create instances from a count or a list of instance options. The result includes handles for created instances and indexed per-instance errors, matching the runtime API while preserving the deprecated array form.
#15639
aee2842Thanks @hugo-vicente11! - Add--allowed-mailto the experimentalwrangler tunnel quick-startcommandThe option forwards exact email addresses, comma-separated lists, and wildcard domains to
cloudflared. It can be specified more than once to combine multiple recipient rules.Email-protected tunnels require
cloudflared2026.9.2 or later. Wrangler checks the selected binary before starting the tunnel and reports an upgrade error when it is incompatible.Patch Changes
#15992
b8e7cc3Thanks @zebp! - Markwrangler artifactscommands as open betaArtifacts has entered open beta, so the
wrangler artifactscommands no longer display a "private beta" label in help output and warnings.#15984
9d7b08eThanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15959
efd67e6Thanks @breken-ai! - Keep colons inwrangler tail --headerfilter valueswrangler tail --headersplits its argument into a header name and an optional value at the colon. It split at every colon and kept only the first two parts, so a value containing a colon was cut short:--header "Origin:https://app.example.com"filtered onhttps. The value now includes everything after the first colon, so URLs, ports and IPv6 addresses are sent to the tail filter intact.Updated dependencies [
b00ef4f,9d7b08e,464a582]:v4.145.0Compare Source
Minor Changes
#15685
b9f1cdcThanks @Ankcorn! - Add native support for the Analytics SQL bindingDeclare the zero-configuration binding in
wrangler.jsonwith"analytics": { "binding": "ANALYTICS" }. Wrangler uploads theanalyticsbinding type and proxies it to the remote service during local development, sowrangler devcan call the binding withoutunsafe.bindings.#15943
8468487Thanks @sejoker! - Graduate SQL, Catalog, and Pipelines underwrangler basinout of beta to stableBasin SQL is now available under
wrangler basin sql, Basin Catalog operations are available underwrangler basin catalog, and Pipelines operations are available underwrangler basin pipelines. These commands are now stable, while the previouswrangler r2 sql,wrangler r2 bucket catalog, andwrangler pipelinescommand paths remain available as hidden compatibility aliases.The Basin SQL authentication environment variable is now
WRANGLER_BASIN_SQL_AUTH_TOKEN. Update any existingWRANGLER_R2_SQL_AUTH_TOKENconfiguration to use the new name. The fallback toCLOUDFLARE_API_TOKENremains available.#15948
a0712e5Thanks @akoval-cf! - Add beta K2 producer bindings for existing streamsConfigure a stream created through Wrangler, the Dashboard, or the API in
wrangler.json:{ "k2": [ { "binding": "ORDERS", "stream": "0123456789abcdef0123456789abcdef" } ] }The binding supports
env.ORDERS.send([{ content: new TextEncoder().encode("order"), headers: { event: "order.created" } }]). Batches use either allArrayBufferor allUint8Arraycontent. Check the returnedsuccessvalue, handle rejected RPC promises, and retry only when the returned error explicitly allows it. Generated environment types describe this producer contract without requiring a separate application dependency.K2 requires an enabled account. Deployment credentials need Worker deployment and K2 configuration-read access. Default Wrangler logins now request the K2 OAuth scopes; existing OAuth users should run
wrangler loginagain to grant the new permissions. Development always uses a real K2 stream and may incur usage charges; no local simulator is provided. Theremotesetting can be omitted,remote: truesuppresses the usage warning, andremote: falseis rejected. Consumption is not part of this Worker binding.#15948
a0712e5Thanks @akoval-cf! - Add beta K2 stream management commandsUse
wrangler k2 streams create order_events,wrangler k2 streams list,wrangler k2 streams get <stream-id>, andwrangler k2 streams delete <stream-id>to manage K2 streams. Creation enables Worker bindings but not HTTP ingestion by default, matching the dashboard. Pass--http-enabledto enable authenticated HTTP ingestion and print its endpoint. Creation prints the stream ID and a binding configuration with aYOUR_BINDING_NAMEplaceholder for the Worker's variable name, but does not edit the configuration file automatically.All four commands support
--json. Deletion requires confirmation, or--force/-yto skip it; use--force --jsonfor JSON deletion output. Creation also accepts retention, HTTP authentication, Worker-input, and CORS options; listing supports pagination and a name filter. Default Wrangler logins now requestk2.readandk2.write; existing OAuth users should runwrangler loginagain, or use a custom API token granting K2 Config Write. The account must be enabled for K2.Patch Changes
#15908
ddaa558Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
Updated dependencies [
b9f1cdc,ddaa558,a0712e5]:v4.144.0Compare Source
Minor Changes
#15919
91a3606Thanks @flakey5! - Add--tty(-t) flag towrangler containers sshto force pseudo-terminal allocationOpenSSH only allocates a pseudo-terminal when no remote command is given, so interactive commands such as
wrangler containers ssh <ID> -- bashpreviously ran without a prompt or line editing. Pass--ttyto force one:wrangler containers ssh <ID> --tty -- bash#15951
2a15ae2Thanks @flakey5! - Support SSH settings for Durable Object-managed Containers in the configuration APIdefineContainernow acceptssshandauthorizedKeyswithschedulingPolicy: "durable-object", matching thesshandauthorized_keysfields that Wrangler already supports for these Containers. Previously the schema rejected them, so they could not be set fromcloudflare.config.ts.Patch Changes
v4.143.1Compare Source
Patch Changes
#15159
7bb6eaeThanks @veggiedefender! - Fixwrangler devremote bindings forworkers.devsubdomains protected by AccessRunning
wrangler devwith remote bindings on an unpublished worker protected by Access (e.g. using a wildcard on your workers.dev domain) previously failed with a redirect loop. Wrangler now correctly authenticates remote bindings with Access in this situation.#15923
60ccdbdThanks @petebacondarwin! - Upgrade the bundled capnweb implementation to 0.12.0This updates the RPC implementation shipped in Miniflare and remote-binding proxy workers to the latest capnweb release.
#15938
62fd03aThanks @dieub! - Resolve the affected Undici dependency in new Wrangler and Vite plugin installsUndici 7.29.1 fixes GHSA-3wwx-pv8p-q78v. Update the shared dependency catalog and matching types used by Miniflare and Wrangler so downstream installs can resolve the patched runtime without an application-level override. A published release is still required for consumers; this changeset does not alter already published package metadata.
#15903
06ed9c8Thanks @itsmunzir! - Fix custom-domain-only deploys failing for API tokens without Zone Workers Routes read permissionWhen
workers_devwas disabled androutescontained only entries withcustom_domain: true, every deploy after the first one fetched/zones/:zoneId/workers/routesto check for route conflicts, even though custom domains are not zone Workers Routes. Tokens scoped to Workers Scripts edit plus custom domains - withoutZone > Workers Routes > Read- failed with "No access to the specified resource" after the Worker version had already been uploaded. The conflict check now only covers non-custom-domain routes; custom domain conflicts continue to be reported by the custom domains changeset API.#15887
86211feThanks @alepacheco! - Report an unreachable auth server instead of an expired login when refreshing an OAuth tokenWhen the OAuth token endpoint could not be reached (for example a DNS failure or a connection timeout), the refresh failure was reported as "Your auth token has expired and could not be refreshed", with advice to run
wrangler login; in an interactive terminal Wrangler also started a new browser login. A network failure says nothing about the stored refresh token, and a new login would need the same unreachable server. Wrangler now reports that the Cloudflare auth server could not be reached, leaves the stored credentials unchanged, and does not start a login, so the next run can refresh with the same token once the network is back.Updated dependencies [
60ccdbd,62fd03a,c2bb4c8,eb1efe0,485cfb3]:v4.143.0Compare Source
Minor Changes
#15914
7f0734cThanks @jamesopstad! - Usecf/configforcloudflare.config.tsauthoringExperimental
cloudflare.config.tsprojects must now importdefineConfig, bindings, triggers, and related helpers fromcf/config. Generated declarations from Wrangler and the Vite plugin also reference this package, so projects using the experimental configuration flow must addcfas a dependency.The Vite plugin no longer exports
@cloudflare/vite-plugin/experimental-config.wrangler/experimental-configremains available fordefineWranglerConfig, but no longer re-exports Cloudflare configuration helpers.v4.142.0Compare Source
Minor Changes
#15856
4c2993bThanks @Naapperas! - Support Workflows declared inexportsonctx.exportsin local developmentA Workflow declared in a Worker's
exportsis now available onctx.exportsinwrangler dev, the Vite plugin and the Vitest plugin, with the same API as a Workflow binding:ctx.exportsandworkflowsbindings with the same Workflownameshare their instances, including instances created before the Workflow was declared inexports. Two Workers can't export the same Workflow name, and a binding to an exported Workflow must refer to the Worker and class that export it.getPlatformProxy()ignores Workflows declared inexports, since it doesn't run the Worker's code.wrangler workflowscommands run with--localalso work with Workflows declared only inexports, without aworkflowsbinding.In the Vitest plugin,
introspectWorkflow()andintrospectWorkflowInstance()still need a Workflow binding, and now explain how to add one when passed a Workflow fromctx.exports. Instances created throughctx.exportsare introspected too. Aworkflowsbinding whosescript_nameis the Worker's own name now resolves to the Worker itself again.Patch Changes
#15891
8dc53aeThanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
Updated dependencies [
8dc53ae,4c2993b]:v4.141.0Compare Source
Minor Changes
#15658
8280086Thanks @jqmmes! - Add Durable Objects code update strategies to Worker deploymentsUse
--durable-objects-code-update-mode immediatewithwrangler deploy,wrangler versions deploy, andwrangler rollbackto update code without waiting for active instances to hibernate. Use--durable-objects-code-update-mode deferred 30sto set a maximum delay, or configuredurable_objects.code_update_strategywithmodeandmax_delay. When unset, the strategy defaults to deferred with a 5-minute maximum delay; delays cannot exceed 24 hours and must use millisecond precision.#15800
bd56b98Thanks @Refaerds! - Add Browser Run as an event source for Queue subscriptionsYou can now create Queue subscriptions with
--source browserRun.Patch Changes
#15864
ee2b200Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"The following dependency versions have been updated:
#15207
805af2fThanks @exKAZUu! - Show the stack and cause of failed proxied requests inwrangler devdebug logsWhen a request proxied to the local Worker fails, running with
--log-level debugnow shows the underlying error's stack and cause chain.Updated dependencies [
ee2b200,c91279b]:v4.140.0Compare Source
Minor Changes
8f7916cThanks @GregBrimble! - Support Containers in Worker Preview deployments with the Build Output.Patch Changes
v4.139.0Compare Source
Minor Changes
#15792
479e1e8Thanks @flakey5! - Configure SSH for experimental Durable Object-managed ContainersSet
containers[].sshandcontainers[].authorized_keyswhen usingscheduling_policy: "durable_object". These are application-wide settings that follow the same rules as the existing Durable Object-managed Container settings: normal deployments create missing applications and update explicitly configured values, while omitted settings preserve the existing application configuration.#15648
52c0e9fThanks @tpmmorris! - Expose configured Cron Triggers to local development consumersWrangler no
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.