#12614 8d882fa Thanks @dario-piotrowicz! - Enable autoconfig for wrangler deploy by default (while allowing users to still disable it via --x-autoconfig=false if necessary)
#12614 8d882fa Thanks @dario-piotrowicz! - Mark the wrangler setup command as stable
#12630 e8fddc5 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-vue | 3.21.0 | 3.21.1 |
#12631 5641c52 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-vike | 0.0.575 | 0.0.581 |
#12633 35c8ebd Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| @tanstack/create-start | 0.59.3 | 0.59.8 |
#12634 11ace96 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| sv | 0.12.1 | 0.12.2 |
#12635 4cee91e Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-solid | 0.6.11 | 0.6.13 |
#12609 1714b9b Thanks @Hari-07! - Fix --variant flag being ignored for pages
When creating a Pages project using npm create cloudflare -- --type pages --variant <variant>,
the --variant flag was being ignored, causing users to be prompted for variant selection
or defaulting to an unexpected variant. This now correctly passes the variant to the project setup.
#12602 58a4020 Thanks @anonrig! - Optimize filesystem operations by using Node.js's throwIfNoEntry: false option
This reduces the number of system calls made when checking for file existence by avoiding the overhead of throwing and catching errors for missing paths. This is an internal performance optimization with no user-visible behavioral changes.
#12602 58a4020 Thanks @anonrig! - Optimize filesystem operations by using Node.js's throwIfNoEntry: false option
This reduces the number of system calls made when checking for file existence by avoiding the overhead of throwing and catching errors for missing paths. This is an internal performance optimization with no user-visible behavioral changes.
Updated dependencies [e93dc01, c2ed7c2, d920811, 896734d, ebdbe52, 58a4020, 6f6cd94]:
#12582 c2ed7c2 Thanks @penalosa! - Internal refactor to use capnweb's native ReadableStream support to power remote Media and Dispatch Namespace bindings.
#12618 d920811 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260219.0 | 1.20260227.0 |
#12637 896734d Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260227.0 | 1.20260302.0 |
#12602 58a4020 Thanks @anonrig! - Optimize filesystem operations by using Node.js's throwIfNoEntry: false option
This reduces the number of system calls made when checking for file existence by avoiding the overhead of throwing and catching errors for missing paths. This is an internal performance optimization with no user-visible behavioral changes.
#12601 ebdbe52 Thanks @43081j! - Switch to empathic for file-system upwards traversal to reduce dependency bloat.
#12602 58a4020 Thanks @anonrig! - Optimize filesystem operations by using Node.js's throwIfNoEntry: false option
This reduces the number of system calls made when checking for file existence by avoiding the overhead of throwing and catching errors for missing paths. This is an internal performance optimization with no user-visible behavioral changes.
#12595 e93dc01 Thanks @dario-piotrowicz! - Add a warning in the autoconfig logic letting users know that support for projects inside workspaces is limited
#12582 c2ed7c2 Thanks @penalosa! - Internal refactor to use capnweb's native ReadableStream support to power remote Media and Dispatch Namespace bindings.
#12618 d920811 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260219.0 | 1.20260227.0 |
#12637 896734d Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260227.0 | 1.20260302.0 |
#12601 ebdbe52 Thanks @43081j! - Switch to empathic for file-system upwards traversal to reduce dependency bloat.
#12602 58a4020 Thanks @anonrig! - Optimize filesystem operations by using Node.js's throwIfNoEntry: false option
This reduces the number of system calls made when checking for file existence by avoiding the overhead of throwing and catching errors for missing paths. This is an internal performance optimization with no user-visible behavioral changes.
#12591 6f6cd94 Thanks @martinezjandrew! - Implemented logic within wrangler containers registries configure to check if a specified secret name is already in-use and offer to reuse that secret. Also added --skip-confirmation flag to the command to skip all interactive prompts.
Updated dependencies [c2ed7c2, d920811, 896734d, 58a4020]:
#12401 8723684 Thanks @jonesphillip! - Add validation retry loops to pipelines setup command
The wrangler pipelines setup command now prompts users to retry when validation errors occur, instead of failing the entire setup process. This includes:
This improves the setup experience by allowing users to correct mistakes without restarting the entire configuration flow.
#12395 aa82c2b Thanks @cmackenzie1! - Generate typed pipeline bindings from stream schemas
When running wrangler types, pipeline bindings now generate TypeScript types based on the stream's schema definition. This gives you full autocomplete and type checking when sending data to your pipelines.
// wrangler.json
{
"pipelines": [
{ "binding": "ANALYTICS", "pipeline": "analytics-stream-id" },
],
}
If your stream has a schema with fields like user_id (string) and event_count (int32), the generated types will be:
declare namespace Cloudflare {
type AnalyticsStreamRecord = { user_id: string; event_count: number };
interface Env {
ANALYTICS: Pipeline<Cloudflare.AnalyticsStreamRecord>;
}
}
For unstructured streams or when not authenticated, bindings fall back to the generic Pipeline<PipelineRecord> type.
#12592 aaa7200 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260217.0 | 1.20260218.0 |
#12606 2f19a40 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260218.0 | 1.20260219.0 |
#12604 e2a6600 Thanks @petebacondarwin! - fix: pass --env flag to auxiliary workers in multi-worker mode
When running wrangler dev with multiple config files (e.g. -c ./apps/api/wrangler.jsonc -c ./apps/queues/wrangler.jsonc -e=dev), the --env flag was not being passed to auxiliary (non-primary) workers. This meant that environment-specific configuration (such as queue bindings) was not applied to auxiliary workers, causing features like queue consumers to not be triggered in local development.
#12597 0b17117 Thanks @sdnts! - The maximum allowed delivery and retry delays for Queues is now 24 hours
#12598 ca58062 Thanks @mattzcarey! - Stop redacting wrangler whoami output in non-interactive mode
wrangler whoami is explicitly invoked to retrieve account info, so email and account names should always be visible. Redacting them in non-interactive/CI environments makes it difficult for coding agents and automated tools to identify which account to use. Other error messages that may appear unexpectedly in CI logs (e.g. multi-account selection errors) remain redacted.
Updated dependencies [f239077, aaa7200, 2f19a40, 5f9f0b4, 452cdc8, 527e4f5, 0b17117]:
#12462 f239077 Thanks @petebacondarwin! - Add Miniflare#purgeCache() method to clear cache entries programmatically
This allows developers to clear cached data during local development without restarting the Miniflare instance. Useful when working with Workers Sites or any application that uses the Cache API.
const mf = new Miniflare({
/* options */
});
// Purge the default cache
await mf.purgeCache();
// Purge a specific named cache
await mf.purgeCache("my-named-cache");
#12574 527e4f5 Thanks @emily-shen! - Local explorer: add /query endpoint to introspect sqlite in DOs
This required adding a wrapper that extends user DO classes and adds in an extra method to access ctx.storage.sql. This shouldn't have any impact on user code, but is gated by the env var X_LOCAL_EXPLORER.
This is for an experimental WIP feature.
#12592 aaa7200 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260217.0 | 1.20260218.0 |
#12606 2f19a40 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260218.0 | 1.20260219.0 |
#12597 0b17117 Thanks @sdnts! - The maximum allowed delivery and retry delays for Queues is now 24 hours
#11734 5f9f0b4 Thanks @petebacondarwin! - Add support for native node:readline module when the enable_nodejs_readline_module compatibility flag is enabled.
This feature is currently experimental and requires both the enable_nodejs_readline_module and experimental compatibility flags to be set.
#12043 452cdc8 Thanks @petebacondarwin! - Add support for native node:worker_threads module from workerd when the enable_nodejs_worker_threads_module compatibility flag is enabled.
This feature is currently experimental and requires nodejs_compat, experimental, and enable_nodejs_worker_threads_module compatibility flags to be set.
#12573 9a565d5 Thanks @petebacondarwin! - Add support for native node:child_process module from workerd when the enable_nodejs_child_process_module compatibility flag is enabled.
This feature is currently experimental and requires both the enable_nodejs_child_process_module and experimental compatibility flags to be set.
#12023 7f18183 Thanks @petebacondarwin! - Add support for native node:tty module from workerd when the enable_nodejs_tty_module compatibility flag is enabled.
This feature is currently experimental and requires nodejs_compat, experimental, and enable_nodejs_tty_module compatibility flags to be set.
#12363 39491f9 Thanks @petebacondarwin! - Add support for the native node:v8 module from workerd when the enable_nodejs_v8_module and experimental compatibility flags are enabled
This feature is currently experimental and requires nodejs_compat, experimental, and enable_nodejs_v8_module compatibility flags to be set.
#12466 caf9b11 Thanks @petebacondarwin! - Add WRANGLER_CACHE_DIR environment variable and smart cache directory detection
Wrangler now intelligently detects where to store cache files:
WRANGLER_CACHE_DIR env var if setnode_modules/.cache/wrangler or .wrangler/cache)node_modules/.cache/wrangler if node_modules exists.wrangler/cacheThis improves compatibility with Yarn PnP, pnpm, and other package managers that don't use traditional node_modules directories, without requiring any configuration.
#12572 936187d Thanks @dario-piotrowicz! - Ensure the nodejs_compat flag is always applied in autoconfig
Previously, the autoconfig feature relied on individual framework configurations to specify Node.js compatibility flags, some could set nodejs_compat while others nodejs_als.
Now instead nodejs_compat is always included as a compatibility flag, this is generally beneficial and the user can always remove the flag afterwards if they want to.
#12560 c4c86f8 Thanks @taylorlee! - Support --tag and --message flags on wrangler deploy
They have the same behavior that they do as during wrangler versions upload, as both
are set on the version.
The message is also reused for the deployment as well, with the same behavior as used
during wrangler versions deploy.
#12543 5a868a0 Thanks @G4brym! - Fix AI Search binding failing in local dev
Using AI Search bindings with wrangler dev would fail with "RPC stub points at a non-serializable type". AI Search bindings now work correctly in local development.
#12552 c58e81b Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260212.0 | 1.20260213.0 |
#12568 33a9a8f Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260213.0 | 1.20260214.0 |
#12576 8077c14 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260214.0 | 1.20260217.0 |
#12466 caf9b11 Thanks @petebacondarwin! - fix: exclude .wrangler directory from Pages uploads
The .wrangler directory contains local cache and state files that should never be deployed. This aligns Pages upload behavior with Workers Assets, which already excludes .wrangler via .assetsignore.
#12556 7d2355e Thanks @ascorbic! - Fix port availability check probing the wrong host when host changes
memoizeGetPort correctly invalidated its cached port when called with a different host, but then still probed the original host for port availability. This could return a port that was free on the original host but already in use on the requested one, leading to bind failures at startup.
#12562 7ea69af Thanks @MattieTK! - Support function-based Vite configs in autoconfig setup
wrangler setup and wrangler deploy --x-autoconfig can now automatically add the Cloudflare Vite plugin to projects that use function-based defineConfig() patterns. Previously, autoconfig would fail with "Cannot modify Vite config: expected an object literal but found ArrowFunctionExpression" for configs like:
export default defineConfig(({ isSsrBuild }) => ({
plugins: [reactRouter(), tsconfigPaths()],
}));
This pattern is used by several official framework templates, including React Router's node-postgres and node-custom-server templates. The following defineConfig() patterns are now supported:
defineConfig({ ... }) (object literal, already worked)defineConfig(() => ({ ... })) (arrow function with expression body)defineConfig(({ isSsrBuild }) => ({ ... })) (arrow function with destructured params)defineConfig(() => { return { ... }; }) (arrow function with block body)defineConfig(function() { return { ... }; }) (function expression)#12548 5cc7158 Thanks @dario-piotrowicz! - Fix .assetsignore formatting when autoconfig creates a new file
Previously, when wrangler setup or wrangler deploy --x-autoconfig created a new .assetsignore file via autoconfig, it would add unnecessary leading empty lines before the wrangler-specific entries. Empty separator lines should only be added when appending to an existing .assetsignore file. This fix ensures newly created .assetsignore files start cleanly without leading blank lines.
#12556 7d2355e Thanks @ascorbic! - Improve error message when port binding is blocked by a sandbox or security policy
When running wrangler dev inside a restricted environment (such as an AI coding agent sandbox or locked-down container), the port availability check would fail with a raw EPERM error. This now provides a clear message explaining that a sandbox or security policy is blocking network access, rather than the generic permission error that previously pointed at the file system.
#12545 c9d0f9d Thanks @dario-piotrowicz! - Improve framework detection when multiple frameworks are found
When autoconfig detects multiple frameworks in a project, Wrangler now applies smarter logic to select the most appropriate one. Selecting the wrong one is acceptable locally where the user can change the detected framework, in CI an error is instead thrown.
#12548 5cc7158 Thanks @dario-piotrowicz! - Add trailing newline to generated package.json and wrangler.jsonc files
#12548 5cc7158 Thanks @dario-piotrowicz! - Fix .gitignore formatting when autoconfig creates a new file
Previously, when wrangler setup or wrangler deploy created a new .gitignore file via autoconfig, it would add unnecessary leading empty lines before the wrangler-specific entries. Empty separator lines should only be added when appending to an existing .gitignore file. This fix ensures newly created .gitignore files start cleanly without leading blank lines.
#12545 c9d0f9d Thanks @dario-piotrowicz! - Throw actionable error when autoconfig is run in the root of a workspace
When running Wrangler commands that trigger auto-configuration (like wrangler dev or wrangler deploy) in the root directory of a monorepo workspace, a helpful error is now shown directing users to run the command in a specific project's directory instead.
Updated dependencies [5a868a0, c58e81b, 33a9a8f, 8077c14, caf9b11, 9a565d5, 7f18183, 39491f9, 43c462a]: