From a32049ce40ad15506b9b72e4898a00863aac92c0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 18:38:09 +0000 Subject: [PATCH] Version Packages --- .../autoconfig-nuxt-preserve-modules.md | 7 -- .changeset/c3-frameworks-update-14659.md | 11 -- .changeset/c3-frameworks-update-14759.md | 11 -- .changeset/c3-frameworks-update-14760.md | 11 -- ...create-cloudflare-nuxt-preserve-modules.md | 7 -- .changeset/dependabot-update-14715.md | 13 --- .../drop-provisioning-experimental-header.md | 6 -- .changeset/email-routing-deploy-apply.md | 8 -- .../exclude-packages-instrumentation.md | 16 --- ...x-nonascii-mf-vitest-worker-data-header.md | 5 - ...x-nonascii-vitest-pool-workers-redirect.md | 5 - .changeset/fix-remote-bindings-preview.md | 7 -- .../fix-sites-asset-key-error-message.md | 7 -- .changeset/fuzzy-dogs-listen.md | 7 -- .changeset/fuzzy-lions-provision.md | 7 -- .changeset/fuzzy-tails-listen.md | 5 - .changeset/heavy-pugs-repeat.md | 10 -- .changeset/honest-crabs-raise.md | 11 -- .changeset/local-explorer-agent-hint.md | 7 -- .changeset/new-config-settings-export.md | 27 ----- .changeset/nub-package-manager.md | 9 -- .changeset/observability-null-validation.md | 7 -- .changeset/olive-jokes-shave.md | 9 -- .changeset/quiet-lemons-patch.md | 7 -- .changeset/workflows-sensitive-step-output.md | 8 -- .changeset/wrangler-nodejs-compat-default.md | 7 -- packages/autoconfig/CHANGELOG.md | 18 ++++ packages/autoconfig/package.json | 2 +- packages/cli/CHANGELOG.md | 7 ++ packages/cli/package.json | 2 +- packages/config/CHANGELOG.md | 26 +++++ packages/config/package.json | 2 +- packages/create-cloudflare/CHANGELOG.md | 40 +++++++ packages/create-cloudflare/package.json | 2 +- packages/deploy-helpers/CHANGELOG.md | 17 +++ packages/deploy-helpers/package.json | 2 +- packages/miniflare/CHANGELOG.md | 25 +++++ packages/miniflare/package.json | 2 +- packages/pages-shared/CHANGELOG.md | 7 ++ packages/pages-shared/package.json | 2 +- packages/remote-bindings/CHANGELOG.md | 12 +++ packages/remote-bindings/package.json | 2 +- packages/runtime-types/CHANGELOG.md | 7 ++ packages/runtime-types/package.json | 2 +- packages/vite-plugin-cloudflare/CHANGELOG.md | 32 ++++++ packages/vite-plugin-cloudflare/package.json | 2 +- packages/vitest-pool-workers/CHANGELOG.md | 20 ++++ packages/vitest-pool-workers/package.json | 2 +- packages/workers-auth/CHANGELOG.md | 7 ++ packages/workers-auth/package.json | 2 +- packages/workers-utils/CHANGELOG.md | 14 +++ packages/workers-utils/package.json | 2 +- packages/wrangler/CHANGELOG.md | 101 ++++++++++++++++++ packages/wrangler/package.json | 2 +- 54 files changed, 347 insertions(+), 249 deletions(-) delete mode 100644 .changeset/autoconfig-nuxt-preserve-modules.md delete mode 100644 .changeset/c3-frameworks-update-14659.md delete mode 100644 .changeset/c3-frameworks-update-14759.md delete mode 100644 .changeset/c3-frameworks-update-14760.md delete mode 100644 .changeset/create-cloudflare-nuxt-preserve-modules.md delete mode 100644 .changeset/dependabot-update-14715.md delete mode 100644 .changeset/drop-provisioning-experimental-header.md delete mode 100644 .changeset/email-routing-deploy-apply.md delete mode 100644 .changeset/exclude-packages-instrumentation.md delete mode 100644 .changeset/fix-nonascii-mf-vitest-worker-data-header.md delete mode 100644 .changeset/fix-nonascii-vitest-pool-workers-redirect.md delete mode 100644 .changeset/fix-remote-bindings-preview.md delete mode 100644 .changeset/fix-sites-asset-key-error-message.md delete mode 100644 .changeset/fuzzy-dogs-listen.md delete mode 100644 .changeset/fuzzy-lions-provision.md delete mode 100644 .changeset/fuzzy-tails-listen.md delete mode 100644 .changeset/heavy-pugs-repeat.md delete mode 100644 .changeset/honest-crabs-raise.md delete mode 100644 .changeset/local-explorer-agent-hint.md delete mode 100644 .changeset/new-config-settings-export.md delete mode 100644 .changeset/nub-package-manager.md delete mode 100644 .changeset/observability-null-validation.md delete mode 100644 .changeset/olive-jokes-shave.md delete mode 100644 .changeset/quiet-lemons-patch.md delete mode 100644 .changeset/workflows-sensitive-step-output.md delete mode 100644 .changeset/wrangler-nodejs-compat-default.md create mode 100644 packages/remote-bindings/CHANGELOG.md diff --git a/.changeset/autoconfig-nuxt-preserve-modules.md b/.changeset/autoconfig-nuxt-preserve-modules.md deleted file mode 100644 index ee424d308c1..00000000000 --- a/.changeset/autoconfig-nuxt-preserve-modules.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cloudflare/autoconfig": patch ---- - -Preserve existing Nuxt `modules` when configuring a project for Cloudflare - -Configuring an existing Nuxt project whose `nuxt.config.ts` already declares a `modules` array previously overwrote that array when adding `nitro-cloudflare-dev`, dropping modules such as `@nuxt/ui`. Existing entries are now retained and the Cloudflare module is appended instead. diff --git a/.changeset/c3-frameworks-update-14659.md b/.changeset/c3-frameworks-update-14659.md deleted file mode 100644 index 16ce45795af..00000000000 --- a/.changeset/c3-frameworks-update-14659.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ----------------- | ------ | ------ | -| create-docusaurus | 3.10.1 | 3.10.2 | diff --git a/.changeset/c3-frameworks-update-14759.md b/.changeset/c3-frameworks-update-14759.md deleted file mode 100644 index a2f519b5d9f..00000000000 --- a/.changeset/c3-frameworks-update-14759.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| --------------- | ------ | ------ | -| @angular/create | 22.0.6 | 22.0.7 | diff --git a/.changeset/c3-frameworks-update-14760.md b/.changeset/c3-frameworks-update-14760.md deleted file mode 100644 index d0d11db6571..00000000000 --- a/.changeset/c3-frameworks-update-14760.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ---------- | ------ | ------ | -| sv | 0.16.2 | 0.16.3 | diff --git a/.changeset/create-cloudflare-nuxt-preserve-modules.md b/.changeset/create-cloudflare-nuxt-preserve-modules.md deleted file mode 100644 index 5ea6ea48de1..00000000000 --- a/.changeset/create-cloudflare-nuxt-preserve-modules.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Preserve existing Nuxt `modules` when adding Cloudflare configuration - -Scaffolding a Nuxt application whose `nuxt.config.ts` already declares a `modules` array (for example the `ui` starter, which registers `@nuxt/ui` and `@nuxt/eslint`) previously overwrote that array when adding `nitro-cloudflare-dev`, dropping the existing modules and breaking the build. Existing entries are now retained and the Cloudflare module is appended instead. diff --git a/.changeset/dependabot-update-14715.md b/.changeset/dependabot-update-14715.md deleted file mode 100644 index 04466b3c65c..00000000000 --- a/.changeset/dependabot-update-14715.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -"miniflare": patch -"wrangler": patch ---- - -Update dependencies of "miniflare", "wrangler" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ------------------------- | ------------- | ------------- | -| @cloudflare/workers-types | ^5.20260714.1 | ^5.20260721.1 | -| workerd | 1.20260714.1 | 1.20260721.1 | diff --git a/.changeset/drop-provisioning-experimental-header.md b/.changeset/drop-provisioning-experimental-header.md deleted file mode 100644 index f106006bc02..00000000000 --- a/.changeset/drop-provisioning-experimental-header.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@cloudflare/deploy-helpers": patch -"wrangler": patch ---- - -Drop the "Experimental:" prefix from the resource provisioning header now that automatic provisioning is generally available. The deploy output now reads `The following bindings need to be provisioned:`. diff --git a/.changeset/email-routing-deploy-apply.md b/.changeset/email-routing-deploy-apply.md deleted file mode 100644 index 20ff82101bb..00000000000 --- a/.changeset/email-routing-deploy-apply.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"wrangler": minor -"@cloudflare/deploy-helpers": minor ---- - -Apply Email Routing `addresses` during Worker trigger deployment - -Worker trigger deployment now reconciles the Worker's Email Routing rules with the top-level `addresses` config. This runs for `wrangler deploy`, `wrangler triggers deploy`, and clients of `@cloudflare/deploy-helpers`. After the Worker uploads, or when `wrangler triggers deploy` runs after a version promotion, the deploy helper asks the Email Routing API for a plan, renders the changes grouped by zone (`+` added, `~` updated, `-` deleted, `!` conflict), prompts once for destructive changes in interactive mode, and applies accepted changes through the per-zone rule endpoints. Purely additive plans apply without a prompt, while non-interactive destructive plans fail without modifying rules. diff --git a/.changeset/exclude-packages-instrumentation.md b/.changeset/exclude-packages-instrumentation.md deleted file mode 100644 index 640083dc315..00000000000 --- a/.changeset/exclude-packages-instrumentation.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -"wrangler": minor ---- - -Add `exclude_packages` option to `dependencies_instrumentation` configuration - -The `dependencies_instrumentation` config object now accepts an optional `exclude_packages` field — an array of package name patterns (with glob-style `*` wildcards) to exclude from the dependency metadata collected during deploy and version uploads. - -```jsonc -// wrangler.json -{ - "dependencies_instrumentation": { - "exclude_packages": ["@internal/*", "secret-tool"], - }, -} -``` diff --git a/.changeset/fix-nonascii-mf-vitest-worker-data-header.md b/.changeset/fix-nonascii-mf-vitest-worker-data-header.md deleted file mode 100644 index b187aad7477..00000000000 --- a/.changeset/fix-nonascii-mf-vitest-worker-data-header.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cloudflare/vitest-pool-workers": patch ---- - -Fix a non-ASCII path failure during the Miniflare WebSocket handshake: the `MF-Vitest-Worker-Data` header embedded the raw `process.cwd()` value, which threw a Latin-1/ASCII header encoding error when the workspace path contained non-ASCII characters (e.g. CJK characters) on Windows. The value is now percent-encoded on write and decoded on read, matching the fix applied to the module fallback redirect response. diff --git a/.changeset/fix-nonascii-vitest-pool-workers-redirect.md b/.changeset/fix-nonascii-vitest-pool-workers-redirect.md deleted file mode 100644 index c64672b885a..00000000000 --- a/.changeset/fix-nonascii-vitest-pool-workers-redirect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cloudflare/vitest-pool-workers": patch ---- - -Fix a runtime start-up failure ("No such module \"cloudflare:test-internal\"") when the project workspace path contains non-ASCII characters (e.g. CJK characters) on Windows. The module fallback service's redirect response set the target file path directly as an HTTP `Location` header value, but headers are restricted to the Latin-1/ASCII byte range, so any non-ASCII byte in the path caused header construction to throw. Such paths are now percent-encoded (and tagged with a sentinel prefix) before being used as a header value, and decoded again only for the values we encoded, so the round-trip is unambiguous and a workspace path containing a literal `%` is left untouched instead of being mis-decoded. diff --git a/.changeset/fix-remote-bindings-preview.md b/.changeset/fix-remote-bindings-preview.md deleted file mode 100644 index 0f27f1f8368..00000000000 --- a/.changeset/fix-remote-bindings-preview.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Fix remote binding previews for accounts without a workers.dev subdomain - -Wrangler now automatically registers a workers.dev subdomain when one is required to start a remote binding preview. diff --git a/.changeset/fix-sites-asset-key-error-message.md b/.changeset/fix-sites-asset-key-error-message.md deleted file mode 100644 index 1794361f8f0..00000000000 --- a/.changeset/fix-sites-asset-key-error-message.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Fix stray characters in the Workers Sites asset-key-too-long error - -The error thrown when an asset path key exceeds the 512-character limit ended with a stray `",` copy-paste artifact, so the message printed to users terminated with `...#kv-limits",` and the trailing documentation URL was malformed. The message now ends cleanly at the URL. diff --git a/.changeset/fuzzy-dogs-listen.md b/.changeset/fuzzy-dogs-listen.md deleted file mode 100644 index 18929cc4190..00000000000 --- a/.changeset/fuzzy-dogs-listen.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": minor ---- - -Support Artifacts sources when creating Queue event subscriptions - -`wrangler queues subscription create` now accepts the `artifacts` and `artifacts.repo` source types supported by the Cloudflare API. diff --git a/.changeset/fuzzy-lions-provision.md b/.changeset/fuzzy-lions-provision.md deleted file mode 100644 index 0a45be46005..00000000000 --- a/.changeset/fuzzy-lions-provision.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": minor ---- - -Expand automatic resource provisioning to Queue, Dispatch Namespace, and Flagship bindings - -Deployments can now omit the resource name or ID for these bindings. Wrangler will inherit the existing binding on subsequent deploys, create a deterministically named resource automatically, or offer existing resources during an interactive deploy with automatic creation disabled. diff --git a/.changeset/fuzzy-tails-listen.md b/.changeset/fuzzy-tails-listen.md deleted file mode 100644 index 6b4ab2c6ce6..00000000000 --- a/.changeset/fuzzy-tails-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cloudflare/vitest-pool-workers": patch ---- - -Support testing Streaming Tail Workers in Vitest Pool Workers. diff --git a/.changeset/heavy-pugs-repeat.md b/.changeset/heavy-pugs-repeat.md deleted file mode 100644 index aa766668ded..00000000000 --- a/.changeset/heavy-pugs-repeat.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -"miniflare": patch -"wrangler": patch ---- - -Report the Worker's error for `HEAD` requests instead of an internal JSON parse error - -A Worker that threw on a `HEAD` request (for example `curl -I`) logged `SyntaxError: Unexpected end of JSON input` from miniflare's internals rather than the actual error, and `dispatchFetch()` rejected with that same misleading error. `workerd` drops response bodies for `HEAD` requests, so the serialised error never reached the code that revives it. - -The error is now also carried in a header, which survives `HEAD`, so the original message and source-mapped stack are reported for every method. When no payload is available the reporting degrades to a plain error rather than surfacing a parse failure. diff --git a/.changeset/honest-crabs-raise.md b/.changeset/honest-crabs-raise.md deleted file mode 100644 index a8fbca2044f..00000000000 --- a/.changeset/honest-crabs-raise.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| --------------- | ------- | ------- | -| create-next-app | 16.2.10 | 16.2.11 | diff --git a/.changeset/local-explorer-agent-hint.md b/.changeset/local-explorer-agent-hint.md deleted file mode 100644 index 68487ddc8cb..00000000000 --- a/.changeset/local-explorer-agent-hint.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": minor ---- - -Print Local Explorer API details for headless agent-driven `wrangler dev` sessions - -When `wrangler dev` is started in a headless AI agent environment, Wrangler now prints the Local Explorer API URL and basic resource routes so agents can inspect local Workers and bindings without relying on the interactive UI. diff --git a/.changeset/new-config-settings-export.md b/.changeset/new-config-settings-export.md deleted file mode 100644 index 03d0c9e1392..00000000000 --- a/.changeset/new-config-settings-export.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -"@cloudflare/config": minor -"@cloudflare/vite-plugin": minor -"wrangler": minor ---- - -Add a `settings` export to the experimental `cloudflare.config.ts` config - -Account-level settings (`accountId`, `complianceRegion`) now live in a dedicated, named `settings` export authored via `defineSettings`, rather than on the Worker config. A `cloudflare.config.ts` can export at most one `settings` object; the Worker itself is the `default` export. - -```ts -// cloudflare.config.ts -import { defineSettings, defineWorker } from "wrangler/experimental-config"; -import * as entrypoint from "./src/index.ts" with { type: "cf-worker" }; - -export const settings = defineSettings({ - accountId: "", -}); - -export default defineWorker({ - name: "my-worker", - entrypoint, - compatibilityDate: "2026-05-18", -}); -``` - -This is only used behind the experimental new-config path (`wrangler --experimental-new-config` and the `@cloudflare/vite-plugin` `experimental.newConfig` option). diff --git a/.changeset/nub-package-manager.md b/.changeset/nub-package-manager.md deleted file mode 100644 index 3f7fee21c25..00000000000 --- a/.changeset/nub-package-manager.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cloudflare/workers-utils": minor -"@cloudflare/autoconfig": minor -"wrangler": minor ---- - -Recognise nub as a package manager - -wrangler now detects nub — from its `npm_config_user_agent` and an installed `nub` binary — and autoconfig detects nub projects by their `nub.lock`, alongside npm, pnpm, yarn, and bun. diff --git a/.changeset/observability-null-validation.md b/.changeset/observability-null-validation.md deleted file mode 100644 index f710a22fcb8..00000000000 --- a/.changeset/observability-null-validation.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cloudflare/workers-utils": patch ---- - -Return a clear error when `observability` is set to `null` - -`validateObservability` guarded only against `undefined`, so a `null` value (valid in JSON/JSONC config) passed the `typeof value === "object"` check and then threw `TypeError: Cannot read properties of null (reading 'enabled')` while validating the config. It now rejects `null` with the same `"observability" should be an object but got null.` diagnostic that the sibling `cache` validator already produces. diff --git a/.changeset/olive-jokes-shave.md b/.changeset/olive-jokes-shave.md deleted file mode 100644 index 002d573fd27..00000000000 --- a/.changeset/olive-jokes-shave.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cloudflare/vitest-pool-workers": patch ---- - -Treat `webSocketMessage()`, `webSocketClose()` and `webSocketError()` as optional Durable Object handlers - -The pool wraps each Durable Object class and installs a prototype method for every default handler before user code is loaded, so `workerd` always sees a handler and always dispatches. When the wrapped class didn't actually define one, the wrapper threw `` exported by does not define a `webSocketClose()` method``, even though deployed Workers silently ignore these events for classes that omit them. A hibernatable Durable Object defining only `webSocketMessage()` would log an uncaught `TypeError` on every close. - -These three handlers now no-op when absent, matching deployed behaviour. `alarm()` is unchanged and still reports a missing handler, since `workerd` rejects `setAlarm()` up front on a class without one. diff --git a/.changeset/quiet-lemons-patch.md b/.changeset/quiet-lemons-patch.md deleted file mode 100644 index 05e7c9c6b21..00000000000 --- a/.changeset/quiet-lemons-patch.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Use the new PATCH APIs for versioned secret commands - -Wrangler now updates versioned Worker secrets by patching the latest Worker version instead of downloading the latest version contents and uploading a full replacement version. This avoids reconstructing Worker configuration in Wrangler, which should reduce bugs when Workers use less common features. For example, this avoids regressions like the previous placement preservation bug fixed in [#13843](https://github.com/cloudflare/workers-sdk/pull/13843). diff --git a/.changeset/workflows-sensitive-step-output.md b/.changeset/workflows-sensitive-step-output.md deleted file mode 100644 index db02431a650..00000000000 --- a/.changeset/workflows-sensitive-step-output.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"wrangler": minor -"miniflare": minor ---- - -Add support for redacting sensitive Workflows step output in local dev. - -Steps configured with `sensitive: "output"` now have their output redacted to `[REDACTED]` in step logs and step-output responses when running Workflows locally, matching production behavior. The real value is still passed to downstream steps, and step errors are never redacted. diff --git a/.changeset/wrangler-nodejs-compat-default.md b/.changeset/wrangler-nodejs-compat-default.md deleted file mode 100644 index 3d655402392..00000000000 --- a/.changeset/wrangler-nodejs-compat-default.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Derive `nodejsCompatMode` from the effective compatibility inputs in `unstable_startWorker()` - -The CLI computes the node-compat mode from the effective compatibility date and flags (`args.* ?? parsedConfig.*`), but the programmatic path used `input.build.nodejsCompatMode` raw — leaving it unset meant a worker's `nodejs_compat` flag (from its config file or from input-level `compatibilityFlags`) was silently ignored, so bundling failed to resolve node builtins that `wrangler dev` handles. `startWorker` now derives the mode the same way when the caller does not provide one: input-level `compatibilityDate`/`compatibilityFlags` first, then the resolved config, with no-bundle taken from the resolved `build.bundle` semantics. Passing an explicit `null` still disables it. diff --git a/packages/autoconfig/CHANGELOG.md b/packages/autoconfig/CHANGELOG.md index b799e07adbe..d255c9db85c 100644 --- a/packages/autoconfig/CHANGELOG.md +++ b/packages/autoconfig/CHANGELOG.md @@ -1,5 +1,23 @@ # @cloudflare/autoconfig +## 0.2.0 + +### Minor Changes + +- [#14595](https://github.com/cloudflare/workers-sdk/pull/14595) [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924) Thanks [@colinhacks](https://github.com/colinhacks)! - Recognise nub as a package manager + + wrangler now detects nub — from its `npm_config_user_agent` and an installed `nub` binary — and autoconfig detects nub projects by their `nub.lock`, alongside npm, pnpm, yarn, and bun. + +### Patch Changes + +- [#14534](https://github.com/cloudflare/workers-sdk/pull/14534) [`a330170`](https://github.com/cloudflare/workers-sdk/commit/a330170e8dfbe481a99597b3e07c1438e20f5ebb) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Preserve existing Nuxt `modules` when configuring a project for Cloudflare + + Configuring an existing Nuxt project whose `nuxt.config.ts` already declares a `modules` array previously overwrote that array when adding `nitro-cloudflare-dev`, dropping modules such as `@nuxt/ui`. Existing entries are now retained and the Cloudflare module is appended instead. + +- Updated dependencies [[`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`a6c214f`](https://github.com/cloudflare/workers-sdk/commit/a6c214fb311215b1ed09b273171b7995033fb7d7)]: + - @cloudflare/workers-utils@0.28.0 + - @cloudflare/cli-shared-helpers@0.1.16 + ## 0.1.6 ### Patch Changes diff --git a/packages/autoconfig/package.json b/packages/autoconfig/package.json index b0dd7649609..0785de05e0b 100644 --- a/packages/autoconfig/package.json +++ b/packages/autoconfig/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/autoconfig", - "version": "0.1.6", + "version": "0.2.0", "description": "Framework autoconfig detection and configuration for Cloudflare Workers", "license": "MIT OR Apache-2.0", "repository": { diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 73dfbe870af..045cc21d5b0 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,12 @@ # @cloudflare/cli +## 0.1.16 + +### Patch Changes + +- Updated dependencies [[`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`a6c214f`](https://github.com/cloudflare/workers-sdk/commit/a6c214fb311215b1ed09b273171b7995033fb7d7)]: + - @cloudflare/workers-utils@0.28.0 + ## 0.1.15 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index b7dec80dcc5..6723de8c8cd 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/cli-shared-helpers", - "version": "0.1.15", + "version": "0.1.16", "description": "Internal shared CLI helpers for workers-sdk. Not intended for external use — APIs may change without notice.", "keywords": [ "cli", diff --git a/packages/config/CHANGELOG.md b/packages/config/CHANGELOG.md index 8f9043f2e50..2c8ddf87a49 100644 --- a/packages/config/CHANGELOG.md +++ b/packages/config/CHANGELOG.md @@ -1,5 +1,31 @@ # @cloudflare/config +## 0.3.0 + +### Minor Changes + +- [#14724](https://github.com/cloudflare/workers-sdk/pull/14724) [`a50f73a`](https://github.com/cloudflare/workers-sdk/commit/a50f73a06bb7b078268ce9cebb4d1c16f79a3144) Thanks [@jamesopstad](https://github.com/jamesopstad)! - Add a `settings` export to the experimental `cloudflare.config.ts` config + + Account-level settings (`accountId`, `complianceRegion`) now live in a dedicated, named `settings` export authored via `defineSettings`, rather than on the Worker config. A `cloudflare.config.ts` can export at most one `settings` object; the Worker itself is the `default` export. + + ```ts + // cloudflare.config.ts + import { defineSettings, defineWorker } from "wrangler/experimental-config"; + import * as entrypoint from "./src/index.ts" with { type: "cf-worker" }; + + export const settings = defineSettings({ + accountId: "", + }); + + export default defineWorker({ + name: "my-worker", + entrypoint, + compatibilityDate: "2026-05-18", + }); + ``` + + This is only used behind the experimental new-config path (`wrangler --experimental-new-config` and the `@cloudflare/vite-plugin` `experimental.newConfig` option). + ## 0.2.1 ### Patch Changes diff --git a/packages/config/package.json b/packages/config/package.json index 8b78e5ef43f..509fc0ca354 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/config", - "version": "0.2.1", + "version": "0.3.0", "description": "Definitions and utilities for configuring Cloudflare Workers and related products. This is not yet stable enough for external use — APIs may change without notice.", "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/config#readme", "bugs": { diff --git a/packages/create-cloudflare/CHANGELOG.md b/packages/create-cloudflare/CHANGELOG.md index d2049d1825c..d8520273fe4 100644 --- a/packages/create-cloudflare/CHANGELOG.md +++ b/packages/create-cloudflare/CHANGELOG.md @@ -1,5 +1,45 @@ # create-cloudflare +## 2.70.13 + +### Patch Changes + +- [#14659](https://github.com/cloudflare/workers-sdk/pull/14659) [`5cee1d4`](https://github.com/cloudflare/workers-sdk/commit/5cee1d47c3c17e005b990fd51f710f7782005168) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ----------------- | ------ | ------ | + | create-docusaurus | 3.10.1 | 3.10.2 | + +- [#14759](https://github.com/cloudflare/workers-sdk/pull/14759) [`947ad34`](https://github.com/cloudflare/workers-sdk/commit/947ad345a550a6bde8a670c855b1e24b48cff211) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | --------------- | ------ | ------ | + | @angular/create | 22.0.6 | 22.0.7 | + +- [#14760](https://github.com/cloudflare/workers-sdk/pull/14760) [`9ed6dc2`](https://github.com/cloudflare/workers-sdk/commit/9ed6dc208d09ad3e2e0994d0df1a34cdc9ffb9de) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ---------- | ------ | ------ | + | sv | 0.16.2 | 0.16.3 | + +- [#14534](https://github.com/cloudflare/workers-sdk/pull/14534) [`a330170`](https://github.com/cloudflare/workers-sdk/commit/a330170e8dfbe481a99597b3e07c1438e20f5ebb) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Preserve existing Nuxt `modules` when adding Cloudflare configuration + + Scaffolding a Nuxt application whose `nuxt.config.ts` already declares a `modules` array (for example the `ui` starter, which registers `@nuxt/ui` and `@nuxt/eslint`) previously overwrote that array when adding `nitro-cloudflare-dev`, dropping the existing modules and breaking the build. Existing entries are now retained and the Cloudflare module is appended instead. + +- [#14790](https://github.com/cloudflare/workers-sdk/pull/14790) [`03ce063`](https://github.com/cloudflare/workers-sdk/commit/03ce063a66e11d14e06e0dba0863cccacad150a0) Thanks [@emily-shen](https://github.com/emily-shen)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | --------------- | ------- | ------- | + | create-next-app | 16.2.10 | 16.2.11 | + ## 2.70.12 ### Patch Changes diff --git a/packages/create-cloudflare/package.json b/packages/create-cloudflare/package.json index 5aab86fedcd..acc9a0a6b9b 100644 --- a/packages/create-cloudflare/package.json +++ b/packages/create-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "create-cloudflare", - "version": "2.70.12", + "version": "2.70.13", "description": "A CLI for creating and deploying new applications to Cloudflare.", "keywords": [ "cloudflare", diff --git a/packages/deploy-helpers/CHANGELOG.md b/packages/deploy-helpers/CHANGELOG.md index 3d096261a36..1601f215a08 100644 --- a/packages/deploy-helpers/CHANGELOG.md +++ b/packages/deploy-helpers/CHANGELOG.md @@ -1,5 +1,22 @@ # @cloudflare/deploy-helpers +## 0.6.0 + +### Minor Changes + +- [#14471](https://github.com/cloudflare/workers-sdk/pull/14471) [`f03b108`](https://github.com/cloudflare/workers-sdk/commit/f03b10854d983c353fd4f3d6621b5ed716379ba3) Thanks [@DiogoSantoss](https://github.com/DiogoSantoss)! - Apply Email Routing `addresses` during Worker trigger deployment + + Worker trigger deployment now reconciles the Worker's Email Routing rules with the top-level `addresses` config. This runs for `wrangler deploy`, `wrangler triggers deploy`, and clients of `@cloudflare/deploy-helpers`. After the Worker uploads, or when `wrangler triggers deploy` runs after a version promotion, the deploy helper asks the Email Routing API for a plan, renders the changes grouped by zone (`+` added, `~` updated, `-` deleted, `!` conflict), prompts once for destructive changes in interactive mode, and applies accepted changes through the per-zone rule endpoints. Purely additive plans apply without a prompt, while non-interactive destructive plans fail without modifying rules. + +### Patch Changes + +- [#14744](https://github.com/cloudflare/workers-sdk/pull/14744) [`a0a091b`](https://github.com/cloudflare/workers-sdk/commit/a0a091b9246c5e10408f57342b3275659c9655e3) Thanks [@penalosa](https://github.com/penalosa)! - Drop the "Experimental:" prefix from the resource provisioning header now that automatic provisioning is generally available. The deploy output now reads `The following bindings need to be provisioned:`. + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`a6c214f`](https://github.com/cloudflare/workers-sdk/commit/a6c214fb311215b1ed09b273171b7995033fb7d7), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9)]: + - miniflare@4.20260721.0 + - @cloudflare/workers-utils@0.28.0 + - @cloudflare/cli-shared-helpers@0.1.16 + ## 0.5.1 ### Patch Changes diff --git a/packages/deploy-helpers/package.json b/packages/deploy-helpers/package.json index d500326b0e2..8e3438f6583 100644 --- a/packages/deploy-helpers/package.json +++ b/packages/deploy-helpers/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/deploy-helpers", - "version": "0.5.1", + "version": "0.6.0", "description": "Internal deploy helpers for workers-sdk. Not intended for external use — APIs may change without notice.", "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/deploy-helpers#readme", "bugs": { diff --git a/packages/miniflare/CHANGELOG.md b/packages/miniflare/CHANGELOG.md index 00d9821590f..726a9cd7ae2 100644 --- a/packages/miniflare/CHANGELOG.md +++ b/packages/miniflare/CHANGELOG.md @@ -1,5 +1,30 @@ # miniflare +## 4.20260721.0 + +### Minor Changes + +- [#14742](https://github.com/cloudflare/workers-sdk/pull/14742) [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9) Thanks [@pombosilva](https://github.com/pombosilva)! - Add support for redacting sensitive Workflows step output in local dev. + + Steps configured with `sensitive: "output"` now have their output redacted to `[REDACTED]` in step logs and step-output responses when running Workflows locally, matching production behavior. The real value is still passed to downstream steps, and step errors are never redacted. + +### Patch Changes + +- [#14715](https://github.com/cloudflare/workers-sdk/pull/14715) [`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "miniflare", "wrangler" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ------------------------- | ------------- | ------------- | + | @cloudflare/workers-types | ^5.20260714.1 | ^5.20260721.1 | + | workerd | 1.20260714.1 | 1.20260721.1 | + +- [#14766](https://github.com/cloudflare/workers-sdk/pull/14766) [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d) Thanks [@gianghungtien](https://github.com/gianghungtien)! - Report the Worker's error for `HEAD` requests instead of an internal JSON parse error + + A Worker that threw on a `HEAD` request (for example `curl -I`) logged `SyntaxError: Unexpected end of JSON input` from miniflare's internals rather than the actual error, and `dispatchFetch()` rejected with that same misleading error. `workerd` drops response bodies for `HEAD` requests, so the serialised error never reached the code that revives it. + + The error is now also carried in a header, which survives `HEAD`, so the original message and source-mapped stack are reported for every method. When no payload is available the reporting degrades to a plain error rather than surfacing a parse failure. + ## 4.20260714.0 ### Minor Changes diff --git a/packages/miniflare/package.json b/packages/miniflare/package.json index 2400e8f5414..4ddfc9130f2 100644 --- a/packages/miniflare/package.json +++ b/packages/miniflare/package.json @@ -1,6 +1,6 @@ { "name": "miniflare", - "version": "4.20260714.0", + "version": "4.20260721.0", "description": "Fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", diff --git a/packages/pages-shared/CHANGELOG.md b/packages/pages-shared/CHANGELOG.md index 1df0d7656ac..29663bdf8ef 100644 --- a/packages/pages-shared/CHANGELOG.md +++ b/packages/pages-shared/CHANGELOG.md @@ -1,5 +1,12 @@ # @cloudflare/pages-shared +## 0.13.159 + +### Patch Changes + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9)]: + - miniflare@4.20260721.0 + ## 0.13.158 ### Patch Changes diff --git a/packages/pages-shared/package.json b/packages/pages-shared/package.json index de3aa345ffd..7a8cf66ff62 100644 --- a/packages/pages-shared/package.json +++ b/packages/pages-shared/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/pages-shared", - "version": "0.13.158", + "version": "0.13.159", "repository": { "type": "git", "url": "https://github.com/cloudflare/workers-sdk.git", diff --git a/packages/remote-bindings/CHANGELOG.md b/packages/remote-bindings/CHANGELOG.md new file mode 100644 index 00000000000..5e7d2e82b19 --- /dev/null +++ b/packages/remote-bindings/CHANGELOG.md @@ -0,0 +1,12 @@ +# @cloudflare/remote-bindings + +## 0.0.1 + +### Patch Changes + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`a0a091b`](https://github.com/cloudflare/workers-sdk/commit/a0a091b9246c5e10408f57342b3275659c9655e3), [`f03b108`](https://github.com/cloudflare/workers-sdk/commit/f03b10854d983c353fd4f3d6621b5ed716379ba3), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`a6c214f`](https://github.com/cloudflare/workers-sdk/commit/a6c214fb311215b1ed09b273171b7995033fb7d7), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9)]: + - miniflare@4.20260715.0 + - @cloudflare/deploy-helpers@0.6.0 + - @cloudflare/workers-utils@0.28.0 + - @cloudflare/cli-shared-helpers@0.1.16 + - @cloudflare/workers-auth@0.5.1 diff --git a/packages/remote-bindings/package.json b/packages/remote-bindings/package.json index 886e313b3ce..f70024f2d28 100644 --- a/packages/remote-bindings/package.json +++ b/packages/remote-bindings/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/remote-bindings", - "version": "0.0.0", + "version": "0.0.1", "private": true, "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/remote-bindings#readme", "bugs": { diff --git a/packages/runtime-types/CHANGELOG.md b/packages/runtime-types/CHANGELOG.md index 79a1801a28a..a5cfe928acd 100644 --- a/packages/runtime-types/CHANGELOG.md +++ b/packages/runtime-types/CHANGELOG.md @@ -1,5 +1,12 @@ # @cloudflare/runtime-types +## 0.0.4 + +### Patch Changes + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9)]: + - miniflare@4.20260721.0 + ## 0.0.3 ### Patch Changes diff --git a/packages/runtime-types/package.json b/packages/runtime-types/package.json index 7b33d07e2aa..a8f8891a4bb 100644 --- a/packages/runtime-types/package.json +++ b/packages/runtime-types/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/runtime-types", - "version": "0.0.3", + "version": "0.0.4", "private": true, "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/runtime-types#readme", "bugs": { diff --git a/packages/vite-plugin-cloudflare/CHANGELOG.md b/packages/vite-plugin-cloudflare/CHANGELOG.md index f22ba28535e..299dcd3f0ec 100644 --- a/packages/vite-plugin-cloudflare/CHANGELOG.md +++ b/packages/vite-plugin-cloudflare/CHANGELOG.md @@ -1,5 +1,37 @@ # @cloudflare/vite-plugin +## 1.46.0 + +### Minor Changes + +- [#14724](https://github.com/cloudflare/workers-sdk/pull/14724) [`a50f73a`](https://github.com/cloudflare/workers-sdk/commit/a50f73a06bb7b078268ce9cebb4d1c16f79a3144) Thanks [@jamesopstad](https://github.com/jamesopstad)! - Add a `settings` export to the experimental `cloudflare.config.ts` config + + Account-level settings (`accountId`, `complianceRegion`) now live in a dedicated, named `settings` export authored via `defineSettings`, rather than on the Worker config. A `cloudflare.config.ts` can export at most one `settings` object; the Worker itself is the `default` export. + + ```ts + // cloudflare.config.ts + import { defineSettings, defineWorker } from "wrangler/experimental-config"; + import * as entrypoint from "./src/index.ts" with { type: "cf-worker" }; + + export const settings = defineSettings({ + accountId: "", + }); + + export default defineWorker({ + name: "my-worker", + entrypoint, + compatibilityDate: "2026-05-18", + }); + ``` + + This is only used behind the experimental new-config path (`wrangler --experimental-new-config` and the `@cloudflare/vite-plugin` `experimental.newConfig` option). + +### Patch Changes + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`a0a091b`](https://github.com/cloudflare/workers-sdk/commit/a0a091b9246c5e10408f57342b3275659c9655e3), [`f03b108`](https://github.com/cloudflare/workers-sdk/commit/f03b10854d983c353fd4f3d6621b5ed716379ba3), [`deae171`](https://github.com/cloudflare/workers-sdk/commit/deae1719b276b9ce2bb67a36671b5cf806ef3801), [`0df3d43`](https://github.com/cloudflare/workers-sdk/commit/0df3d432353f39b6a90c340c268c83a7ac0b7d5c), [`d83a476`](https://github.com/cloudflare/workers-sdk/commit/d83a476bab53f0266a67790242f855aab6e0468c), [`4e92e32`](https://github.com/cloudflare/workers-sdk/commit/4e92e32e1f1c27dcd463bcf38ed79e0d1b046679), [`d1d6945`](https://github.com/cloudflare/workers-sdk/commit/d1d69450decfb319a2bbf61e4c042b0511ab2618), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`a0c8bb1`](https://github.com/cloudflare/workers-sdk/commit/a0c8bb118e04eebba870a6fbe9f5041095b04637), [`a50f73a`](https://github.com/cloudflare/workers-sdk/commit/a50f73a06bb7b078268ce9cebb4d1c16f79a3144), [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`c82d96b`](https://github.com/cloudflare/workers-sdk/commit/c82d96ba63a3b343b520e781a070889251868d9a), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9), [`f75ae5d`](https://github.com/cloudflare/workers-sdk/commit/f75ae5d02576d82aad4723b9e17ccb26277b69ab)]: + - miniflare@4.20260721.0 + - wrangler@4.113.0 + ## 1.45.1 ### Patch Changes diff --git a/packages/vite-plugin-cloudflare/package.json b/packages/vite-plugin-cloudflare/package.json index 035f2c388b9..7f8221b1306 100644 --- a/packages/vite-plugin-cloudflare/package.json +++ b/packages/vite-plugin-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/vite-plugin", - "version": "1.45.1", + "version": "1.46.0", "description": "Cloudflare plugin for Vite", "keywords": [ "cloudflare", diff --git a/packages/vitest-pool-workers/CHANGELOG.md b/packages/vitest-pool-workers/CHANGELOG.md index 3b950b95b1f..cb1227256bd 100644 --- a/packages/vitest-pool-workers/CHANGELOG.md +++ b/packages/vitest-pool-workers/CHANGELOG.md @@ -1,5 +1,25 @@ # @cloudflare/vitest-pool-workers +## 0.18.7 + +### Patch Changes + +- [#14713](https://github.com/cloudflare/workers-sdk/pull/14713) [`de34449`](https://github.com/cloudflare/workers-sdk/commit/de344496160da4c2b9aacc34e8a2fc25684437f8) Thanks [@allocsys](https://github.com/allocsys)! - Fix a non-ASCII path failure during the Miniflare WebSocket handshake: the `MF-Vitest-Worker-Data` header embedded the raw `process.cwd()` value, which threw a Latin-1/ASCII header encoding error when the workspace path contained non-ASCII characters (e.g. CJK characters) on Windows. The value is now percent-encoded on write and decoded on read, matching the fix applied to the module fallback redirect response. + +- [#14713](https://github.com/cloudflare/workers-sdk/pull/14713) [`de34449`](https://github.com/cloudflare/workers-sdk/commit/de344496160da4c2b9aacc34e8a2fc25684437f8) Thanks [@allocsys](https://github.com/allocsys)! - Fix a runtime start-up failure ("No such module \"cloudflare:test-internal\"") when the project workspace path contains non-ASCII characters (e.g. CJK characters) on Windows. The module fallback service's redirect response set the target file path directly as an HTTP `Location` header value, but headers are restricted to the Latin-1/ASCII byte range, so any non-ASCII byte in the path caused header construction to throw. Such paths are now percent-encoded (and tagged with a sentinel prefix) before being used as a header value, and decoded again only for the values we encoded, so the round-trip is unambiguous and a workspace path containing a literal `%` is left untouched instead of being mis-decoded. + +- [#14739](https://github.com/cloudflare/workers-sdk/pull/14739) [`5eac99e`](https://github.com/cloudflare/workers-sdk/commit/5eac99ec34858f3943f71bf132aa1ba2f5ea3415) Thanks [@Ankcorn](https://github.com/Ankcorn)! - Support testing Streaming Tail Workers in Vitest Pool Workers. + +- [#14763](https://github.com/cloudflare/workers-sdk/pull/14763) [`538e867`](https://github.com/cloudflare/workers-sdk/commit/538e8678b32aee68636f60b7a84f35f3375a501b) Thanks [@gianghungtien](https://github.com/gianghungtien)! - Treat `webSocketMessage()`, `webSocketClose()` and `webSocketError()` as optional Durable Object handlers + + The pool wraps each Durable Object class and installs a prototype method for every default handler before user code is loaded, so `workerd` always sees a handler and always dispatches. When the wrapped class didn't actually define one, the wrapper threw `` exported by does not define a `webSocketClose()` method ``, even though deployed Workers silently ignore these events for classes that omit them. A hibernatable Durable Object defining only `webSocketMessage()` would log an uncaught `TypeError` on every close. + + These three handlers now no-op when absent, matching deployed behaviour. `alarm()` is unchanged and still reports a missing handler, since `workerd` rejects `setAlarm()` up front on a class without one. + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`a0a091b`](https://github.com/cloudflare/workers-sdk/commit/a0a091b9246c5e10408f57342b3275659c9655e3), [`f03b108`](https://github.com/cloudflare/workers-sdk/commit/f03b10854d983c353fd4f3d6621b5ed716379ba3), [`deae171`](https://github.com/cloudflare/workers-sdk/commit/deae1719b276b9ce2bb67a36671b5cf806ef3801), [`0df3d43`](https://github.com/cloudflare/workers-sdk/commit/0df3d432353f39b6a90c340c268c83a7ac0b7d5c), [`d83a476`](https://github.com/cloudflare/workers-sdk/commit/d83a476bab53f0266a67790242f855aab6e0468c), [`4e92e32`](https://github.com/cloudflare/workers-sdk/commit/4e92e32e1f1c27dcd463bcf38ed79e0d1b046679), [`d1d6945`](https://github.com/cloudflare/workers-sdk/commit/d1d69450decfb319a2bbf61e4c042b0511ab2618), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`a0c8bb1`](https://github.com/cloudflare/workers-sdk/commit/a0c8bb118e04eebba870a6fbe9f5041095b04637), [`a50f73a`](https://github.com/cloudflare/workers-sdk/commit/a50f73a06bb7b078268ce9cebb4d1c16f79a3144), [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`c82d96b`](https://github.com/cloudflare/workers-sdk/commit/c82d96ba63a3b343b520e781a070889251868d9a), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9), [`f75ae5d`](https://github.com/cloudflare/workers-sdk/commit/f75ae5d02576d82aad4723b9e17ccb26277b69ab)]: + - miniflare@4.20260721.0 + - wrangler@4.113.0 + ## 0.18.6 ### Patch Changes diff --git a/packages/vitest-pool-workers/package.json b/packages/vitest-pool-workers/package.json index ff87504c2c2..d2a614deebb 100644 --- a/packages/vitest-pool-workers/package.json +++ b/packages/vitest-pool-workers/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/vitest-pool-workers", - "version": "0.18.6", + "version": "0.18.7", "description": "Workers Vitest integration for writing Vitest unit and integration tests that run inside the Workers runtime", "keywords": [ "cloudflare", diff --git a/packages/workers-auth/CHANGELOG.md b/packages/workers-auth/CHANGELOG.md index 292e8424066..3583c158e00 100644 --- a/packages/workers-auth/CHANGELOG.md +++ b/packages/workers-auth/CHANGELOG.md @@ -1,5 +1,12 @@ # @cloudflare/workers-auth +## 0.5.1 + +### Patch Changes + +- Updated dependencies [[`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924), [`a6c214f`](https://github.com/cloudflare/workers-sdk/commit/a6c214fb311215b1ed09b273171b7995033fb7d7)]: + - @cloudflare/workers-utils@0.28.0 + ## 0.5.0 ### Minor Changes diff --git a/packages/workers-auth/package.json b/packages/workers-auth/package.json index eb29d59279c..bfd1832950b 100644 --- a/packages/workers-auth/package.json +++ b/packages/workers-auth/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/workers-auth", - "version": "0.5.0", + "version": "0.5.1", "description": "Internal OAuth 2.0 + PKCE flow for Cloudflare CLIs. Not intended for external use — APIs may change without notice.", "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/workers-auth#readme", "bugs": { diff --git a/packages/workers-utils/CHANGELOG.md b/packages/workers-utils/CHANGELOG.md index 70da09015dd..11bf62f29e7 100644 --- a/packages/workers-utils/CHANGELOG.md +++ b/packages/workers-utils/CHANGELOG.md @@ -1,5 +1,19 @@ # @cloudflare/workers-utils +## 0.28.0 + +### Minor Changes + +- [#14595](https://github.com/cloudflare/workers-sdk/pull/14595) [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924) Thanks [@colinhacks](https://github.com/colinhacks)! - Recognise nub as a package manager + + wrangler now detects nub — from its `npm_config_user_agent` and an installed `nub` binary — and autoconfig detects nub projects by their `nub.lock`, alongside npm, pnpm, yarn, and bun. + +### Patch Changes + +- [#14746](https://github.com/cloudflare/workers-sdk/pull/14746) [`a6c214f`](https://github.com/cloudflare/workers-sdk/commit/a6c214fb311215b1ed09b273171b7995033fb7d7) Thanks [@samarth70](https://github.com/samarth70)! - Return a clear error when `observability` is set to `null` + + `validateObservability` guarded only against `undefined`, so a `null` value (valid in JSON/JSONC config) passed the `typeof value === "object"` check and then threw `TypeError: Cannot read properties of null (reading 'enabled')` while validating the config. It now rejects `null` with the same `"observability" should be an object but got null.` diagnostic that the sibling `cache` validator already produces. + ## 0.27.0 ### Minor Changes diff --git a/packages/workers-utils/package.json b/packages/workers-utils/package.json index d012ef4548b..be2dcf4ba55 100644 --- a/packages/workers-utils/package.json +++ b/packages/workers-utils/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/workers-utils", - "version": "0.27.0", + "version": "0.28.0", "description": "Internal utility package for workers-sdk. Not intended for external use — APIs may change without notice.", "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/workers-utils#readme", "bugs": { diff --git a/packages/wrangler/CHANGELOG.md b/packages/wrangler/CHANGELOG.md index 13c32fc5274..8df545f956e 100644 --- a/packages/wrangler/CHANGELOG.md +++ b/packages/wrangler/CHANGELOG.md @@ -1,5 +1,106 @@ # wrangler +## 4.113.0 + +### Minor Changes + +- [#14471](https://github.com/cloudflare/workers-sdk/pull/14471) [`f03b108`](https://github.com/cloudflare/workers-sdk/commit/f03b10854d983c353fd4f3d6621b5ed716379ba3) Thanks [@DiogoSantoss](https://github.com/DiogoSantoss)! - Apply Email Routing `addresses` during Worker trigger deployment + + Worker trigger deployment now reconciles the Worker's Email Routing rules with the top-level `addresses` config. This runs for `wrangler deploy`, `wrangler triggers deploy`, and clients of `@cloudflare/deploy-helpers`. After the Worker uploads, or when `wrangler triggers deploy` runs after a version promotion, the deploy helper asks the Email Routing API for a plan, renders the changes grouped by zone (`+` added, `~` updated, `-` deleted, `!` conflict), prompts once for destructive changes in interactive mode, and applies accepted changes through the per-zone rule endpoints. Purely additive plans apply without a prompt, while non-interactive destructive plans fail without modifying rules. + +- [#14679](https://github.com/cloudflare/workers-sdk/pull/14679) [`deae171`](https://github.com/cloudflare/workers-sdk/commit/deae1719b276b9ce2bb67a36671b5cf806ef3801) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - Add `exclude_packages` option to `dependencies_instrumentation` configuration + + The `dependencies_instrumentation` config object now accepts an optional `exclude_packages` field — an array of package name patterns (with glob-style `*` wildcards) to exclude from the dependency metadata collected during deploy and version uploads. + + ```jsonc + // wrangler.json + { + "dependencies_instrumentation": { + "exclude_packages": ["@internal/*", "secret-tool"] + } + } + ``` + +- [#14721](https://github.com/cloudflare/workers-sdk/pull/14721) [`4e92e32`](https://github.com/cloudflare/workers-sdk/commit/4e92e32e1f1c27dcd463bcf38ed79e0d1b046679) Thanks [@dmmulroy](https://github.com/dmmulroy)! - Support Artifacts sources when creating Queue event subscriptions + + `wrangler queues subscription create` now accepts the `artifacts` and `artifacts.repo` source types supported by the Cloudflare API. + +- [#13352](https://github.com/cloudflare/workers-sdk/pull/13352) [`d1d6945`](https://github.com/cloudflare/workers-sdk/commit/d1d69450decfb319a2bbf61e4c042b0511ab2618) Thanks [@penalosa](https://github.com/penalosa)! - Expand automatic resource provisioning to Queue, Dispatch Namespace, and Flagship bindings + + Deployments can now omit the resource name or ID for these bindings. Wrangler will inherit the existing binding on subsequent deploys, create a deterministically named resource automatically, or offer existing resources during an interactive deploy with automatic creation disabled. + +- [#14688](https://github.com/cloudflare/workers-sdk/pull/14688) [`a0c8bb1`](https://github.com/cloudflare/workers-sdk/commit/a0c8bb118e04eebba870a6fbe9f5041095b04637) Thanks [@NuroDev](https://github.com/NuroDev)! - Print Local Explorer API details for headless agent-driven `wrangler dev` sessions + + When `wrangler dev` is started in a headless AI agent environment, Wrangler now prints the Local Explorer API URL and basic resource routes so agents can inspect local Workers and bindings without relying on the interactive UI. + +- [#14724](https://github.com/cloudflare/workers-sdk/pull/14724) [`a50f73a`](https://github.com/cloudflare/workers-sdk/commit/a50f73a06bb7b078268ce9cebb4d1c16f79a3144) Thanks [@jamesopstad](https://github.com/jamesopstad)! - Add a `settings` export to the experimental `cloudflare.config.ts` config + + Account-level settings (`accountId`, `complianceRegion`) now live in a dedicated, named `settings` export authored via `defineSettings`, rather than on the Worker config. A `cloudflare.config.ts` can export at most one `settings` object; the Worker itself is the `default` export. + + ```ts + // cloudflare.config.ts + import { defineSettings, defineWorker } from "wrangler/experimental-config"; + import * as entrypoint from "./src/index.ts" with { type: "cf-worker" }; + + export const settings = defineSettings({ + accountId: "", + }); + + export default defineWorker({ + name: "my-worker", + entrypoint, + compatibilityDate: "2026-05-18", + }); + ``` + + This is only used behind the experimental new-config path (`wrangler --experimental-new-config` and the `@cloudflare/vite-plugin` `experimental.newConfig` option). + +- [#14595](https://github.com/cloudflare/workers-sdk/pull/14595) [`2b390d7`](https://github.com/cloudflare/workers-sdk/commit/2b390d7831ff27aa13cdf05aa8e11e4c0086f924) Thanks [@colinhacks](https://github.com/colinhacks)! - Recognise nub as a package manager + + wrangler now detects nub — from its `npm_config_user_agent` and an installed `nub` binary — and autoconfig detects nub projects by their `nub.lock`, alongside npm, pnpm, yarn, and bun. + +- [#14742](https://github.com/cloudflare/workers-sdk/pull/14742) [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9) Thanks [@pombosilva](https://github.com/pombosilva)! - Add support for redacting sensitive Workflows step output in local dev. + + Steps configured with `sensitive: "output"` now have their output redacted to `[REDACTED]` in step logs and step-output responses when running Workflows locally, matching production behavior. The real value is still passed to downstream steps, and step errors are never redacted. + +### Patch Changes + +- [#14715](https://github.com/cloudflare/workers-sdk/pull/14715) [`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "miniflare", "wrangler" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ------------------------- | ------------- | ------------- | + | @cloudflare/workers-types | ^5.20260714.1 | ^5.20260721.1 | + | workerd | 1.20260714.1 | 1.20260721.1 | + +- [#14744](https://github.com/cloudflare/workers-sdk/pull/14744) [`a0a091b`](https://github.com/cloudflare/workers-sdk/commit/a0a091b9246c5e10408f57342b3275659c9655e3) Thanks [@penalosa](https://github.com/penalosa)! - Drop the "Experimental:" prefix from the resource provisioning header now that automatic provisioning is generally available. The deploy output now reads `The following bindings need to be provisioned:`. + +- [#14720](https://github.com/cloudflare/workers-sdk/pull/14720) [`0df3d43`](https://github.com/cloudflare/workers-sdk/commit/0df3d432353f39b6a90c340c268c83a7ac0b7d5c) Thanks [@penalosa](https://github.com/penalosa)! - Fix remote binding previews for accounts without a workers.dev subdomain + + Wrangler now automatically registers a workers.dev subdomain when one is required to start a remote binding preview. + +- [#14773](https://github.com/cloudflare/workers-sdk/pull/14773) [`d83a476`](https://github.com/cloudflare/workers-sdk/commit/d83a476bab53f0266a67790242f855aab6e0468c) Thanks [@chinesepowered](https://github.com/chinesepowered)! - Fix stray characters in the Workers Sites asset-key-too-long error + + The error thrown when an asset path key exceeds the 512-character limit ended with a stray `",` copy-paste artifact, so the message printed to users terminated with `...#kv-limits",` and the trailing documentation URL was malformed. The message now ends cleanly at the URL. + +- [#14766](https://github.com/cloudflare/workers-sdk/pull/14766) [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d) Thanks [@gianghungtien](https://github.com/gianghungtien)! - Report the Worker's error for `HEAD` requests instead of an internal JSON parse error + + A Worker that threw on a `HEAD` request (for example `curl -I`) logged `SyntaxError: Unexpected end of JSON input` from miniflare's internals rather than the actual error, and `dispatchFetch()` rejected with that same misleading error. `workerd` drops response bodies for `HEAD` requests, so the serialised error never reached the code that revives it. + + The error is now also carried in a header, which survives `HEAD`, so the original message and source-mapped stack are reported for every method. When no payload is available the reporting degrades to a plain error rather than surfacing a parse failure. + +- [#14448](https://github.com/cloudflare/workers-sdk/pull/14448) [`c82d96b`](https://github.com/cloudflare/workers-sdk/commit/c82d96ba63a3b343b520e781a070889251868d9a) Thanks [@GregBrimble](https://github.com/GregBrimble)! - Use the new PATCH APIs for versioned secret commands + + Wrangler now updates versioned Worker secrets by patching the latest Worker version instead of downloading the latest version contents and uploading a full replacement version. This avoids reconstructing Worker configuration in Wrangler, which should reduce bugs when Workers use less common features. For example, this avoids regressions like the previous placement preservation bug fixed in [#13843](https://github.com/cloudflare/workers-sdk/pull/13843). + +- [#14617](https://github.com/cloudflare/workers-sdk/pull/14617) [`f75ae5d`](https://github.com/cloudflare/workers-sdk/commit/f75ae5d02576d82aad4723b9e17ccb26277b69ab) Thanks [@martijnwalraven](https://github.com/martijnwalraven)! - Derive `nodejsCompatMode` from the effective compatibility inputs in `unstable_startWorker()` + + The CLI computes the node-compat mode from the effective compatibility date and flags (`args.* ?? parsedConfig.*`), but the programmatic path used `input.build.nodejsCompatMode` raw — leaving it unset meant a worker's `nodejs_compat` flag (from its config file or from input-level `compatibilityFlags`) was silently ignored, so bundling failed to resolve node builtins that `wrangler dev` handles. `startWorker` now derives the mode the same way when the caller does not provide one: input-level `compatibilityDate`/`compatibilityFlags` first, then the resolved config, with no-bundle taken from the resolved `build.bundle` semantics. Passing an explicit `null` still disables it. + +- Updated dependencies [[`42af66d`](https://github.com/cloudflare/workers-sdk/commit/42af66d00b255945989726387acf46409b4c5eb3), [`4815711`](https://github.com/cloudflare/workers-sdk/commit/4815711fb5f896a5aa9221b6bddb9ef78c3f288d), [`34430b3`](https://github.com/cloudflare/workers-sdk/commit/34430b34f468825775377689621e451d730ab0c9)]: + - miniflare@4.20260721.0 + ## 4.112.0 ### Minor Changes diff --git a/packages/wrangler/package.json b/packages/wrangler/package.json index 91944f27934..db2f149b30d 100644 --- a/packages/wrangler/package.json +++ b/packages/wrangler/package.json @@ -1,6 +1,6 @@ { "name": "wrangler", - "version": "4.112.0", + "version": "4.113.0", "description": "Command-line interface for all things Cloudflare Workers", "keywords": [ "assembly",