#12682 b5b91c9 Thanks @hiendv! - Fix resource leak where remote proxy sessions were not disposed during pool shutdown, causing vitest processes to hang.
Updated dependencies [6a8aa5f, d672e2e, 35b2c56, 5f7aaf2, 209b396, 23a365a, 596b8a0, 00e729e, 0769056, 150ef7b, bf9cb3d]:
#11332 6a8aa5f Thanks @nikitassharma! - Users are now able to configure DockerHub credentials and have containers reference images stored there.
DockerHub can be configured as follows:
echo $PAT_TOKEN | npx wrangler@latest containers registries configure docker.io --dockerhub-username=user --secret-name=DockerHub_PAT_Token
Containers can then specify an image from DockerHub in their wrangler.jsonc as follows:
"containers": {
"image": "docker.io/namespace/image:tag",
...
}
#12649 35b2c56 Thanks @gabivlj! - Add experimental support for containers to workers communication with interceptOutboundHttp
This feature is experimental and requires adding the "experimental" compatibility flag to your Wrangler configuration.
#12701 23a365a Thanks @jamesopstad! - Add local dev validation for the experimental secrets configuration property
When the new secrets property is defined, wrangler dev and vite dev now validate secrets declared in secrets.required. When required secrets are missing from .dev.vars or .env/process.env, a warning is logged listing the missing secret names.
When secrets is defined, only the keys listed in secrets.required are loaded. Additional keys in .dev.vars or .env are excluded. If you are not using .dev.vars, keys listed in secrets.required are loaded from process.env as well as .env. The CLOUDFLARE_INCLUDE_PROCESS_ENV environment variable is therefore not needed when using this feature.
When secrets is not defined, the existing behavior is unchanged.
// wrangler.jsonc
{
"secrets": {
"required": ["API_KEY", "DB_PASSWORD"],
},
}
#12695 0769056 Thanks @jamesopstad! - Add type generation for the experimental secrets configuration property
When the new secrets property is defined, wrangler types now generates typed bindings from the names listed in secrets.required.
When secrets is defined at any config level, type generation uses it exclusively and no longer infers secret names from .dev.vars or .env files. This enables running type generation in environments where these files are not present.
Per-environment secrets are supported. Each named environment produces its own interface, and the aggregated Env marks secrets that only appear in some environments as optional.
When secrets is not defined, the existing behavior is unchanged.
// wrangler.jsonc
{
"secrets": {
"required": ["API_KEY", "DB_PASSWORD"],
},
}
#12693 150ef7b Thanks @martinezjandrew! - Add wrangler containers registries credentials command for generating temporary push/pull credentials
This command generates short-lived credentials for authenticating with the Cloudflare managed registry (registry.cloudflare.com). Useful for CI/CD pipelines or local Docker authentication.
# Generate push credentials (for uploading images)
wrangler containers registries credentials registry.cloudflare.com --push
# Generate pull credentials (for downloading images)
wrangler containers registries credentials registry.cloudflare.com --pull
# Generate credentials with both permissions
wrangler containers registries credentials registry.cloudflare.com --push --pull
# Custom expiration (default 15)
wrangler containers registries credentials registry.cloudflare.com --push --expiration-minutes=30
#12622 bf9cb3d Thanks @LuisDuarte1! - Add configurable step limits for Workflows
You can now set a maximum number of steps for a Workflow instance via the limits.steps configuration in your Wrangler config. When a Workflow instance exceeds this limit, it will fail with an error indicating the limit was reached.
// wrangler.jsonc
{
"workflows": [
{
"binding": "MY_WORKFLOW",
"name": "my-workflow",
"class_name": "MyWorkflow",
"limits": {
"steps": 5000,
},
},
],
}
The steps value must be an integer between 1 and 25,000. If not specified, the default limit of 10,000 steps is used. Step limits are also enforced in local development via wrangler dev.
#12733 d672e2e Thanks @dario-piotrowicz! - Fix SolidStart autoconfig for projects using version 2.0.0-alpha or later
SolidStart v2.0.0-alpha introduced a breaking change where configuration moved from app.config.(js|ts) to vite.config.(js|ts). Wrangler's autoconfig now detects the installed SolidStart version and based on it updates the appropriate configuration file
#12698 209b396 Thanks @penalosa! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260305.0 | 1.20260226.1 |
| @cloudflare/workers-types | 4.20260305.0 | 4.20260226.1 |
#12691 596b8a0 Thanks @penalosa! - Remove temporary AI Search RPC workaround (no user-facing changes)
#12694 00e729e Thanks @garvit-gupta! - Fix wrangler pipelines setup failing for Data Catalog sinks on new buckets by using the correct R2 Catalog API error code (40401).
Updated dependencies [35b2c56, 5f7aaf2, 209b396, 596b8a0, bf9cb3d]:
#12649 35b2c56 Thanks @gabivlj! - Add experimental support for containers to workers communication with interceptOutboundHttp
This feature is experimental and requires adding the "experimental" compatibility flag to your Wrangler configuration.
#10153 5f7aaf2 Thanks @mglewis! - Add Hosted Images CRUD operations to Images binding.
This is an experimental API that only works locally for the moment.
#12622 bf9cb3d Thanks @LuisDuarte1! - Add configurable step limits for Workflows
You can now set a maximum number of steps for a Workflow instance via the limits.steps configuration in your Wrangler config. When a Workflow instance exceeds this limit, it will fail with an error indicating the limit was reached.
// wrangler.jsonc
{
"workflows": [
{
"binding": "MY_WORKFLOW",
"name": "my-workflow",
"class_name": "MyWorkflow",
"limits": {
"steps": 5000,
},
},
],
}
The steps value must be an integer between 1 and 25,000. If not specified, the default limit of 10,000 steps is used. Step limits are also enforced in local development via wrangler dev.
#12698 209b396 Thanks @penalosa! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260305.0 | 1.20260226.1 |
| @cloudflare/workers-types | 4.20260305.0 | 4.20260226.1 |
#12691 596b8a0 Thanks @penalosa! - Remove temporary AI Search RPC workaround (no user-facing changes)
#12649 35b2c56 Thanks @gabivlj! - Add experimental support for containers to workers communication with interceptOutboundHttp
This feature is experimental and requires adding the "experimental" compatibility flag to your Wrangler configuration.
#11332 6a8aa5f Thanks @nikitassharma! - Users are now able to configure DockerHub credentials and have containers reference images stored there.
DockerHub can be configured as follows:
echo $PAT_TOKEN | npx wrangler@latest containers registries configure docker.io --dockerhub-username=user --secret-name=DockerHub_PAT_Token
Containers can then specify an image from DockerHub in their wrangler.jsonc as follows:
"containers": {
"image": "docker.io/namespace/image:tag",
...
}
#12622 bf9cb3d Thanks @LuisDuarte1! - Add configurable step limits for Workflows
You can now set a maximum number of steps for a Workflow instance via the limits.steps configuration in your Wrangler config. When a Workflow instance exceeds this limit, it will fail with an error indicating the limit was reached.
// wrangler.jsonc
{
"workflows": [
{
"binding": "MY_WORKFLOW",
"name": "my-workflow",
"class_name": "MyWorkflow",
"limits": {
"steps": 5000,
},
},
],
}
The steps value must be an integer between 1 and 25,000. If not specified, the default limit of 10,000 steps is used. Step limits are also enforced in local development via wrangler dev.
#12713 f498237 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| @angular/create | 21.1.4 | 21.2.0 |
#12715 8d0c835 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-vue | 3.21.1 | 3.22.0 |
#12716 1c2d93d Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-react-router | 7.13.0 | 7.13.1 |
#12717 8e738f8 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-analog | 2.2.3 | 2.3.1 |
#12718 62e20c1 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| sv | 0.12.2 | 0.12.4 |
#12719 554c5f3 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-vike | 0.0.581 | 0.0.591 |
#12720 a3ff7d4 Thanks @dependabot! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-waku | 0.12.5-1.0.0-alpha.4-0 | 0.12.5-1.0.0-alpha.5-0 |
#12728 bbe09b6 Thanks @jamesopstad! - Update SolidStart template for compatibility with v2.
SolidStart v2 uses the nitro Vite plugin so we now update the Nitro config in vite.config.ts rather than app.config.ts.
#12692 f671934 Thanks @roli-lpci! - Remove unused chalk dependency from create-cloudflare.
#12649 35b2c56 Thanks @gabivlj! - Add experimental support for containers to workers communication with interceptOutboundHttp
This feature is experimental and requires adding the "experimental" compatibility flag to your Wrangler configuration.
#12701 23a365a Thanks @jamesopstad! - Add local dev validation for the experimental secrets configuration property
When the new secrets property is defined, wrangler dev and vite dev now validate secrets declared in secrets.required. When required secrets are missing from .dev.vars or .env/process.env, a warning is logged listing the missing secret names.
When secrets is defined, only the keys listed in secrets.required are loaded. Additional keys in .dev.vars or .env are excluded. If you are not using .dev.vars, keys listed in secrets.required are loaded from process.env as well as .env. The CLOUDFLARE_INCLUDE_PROCESS_ENV environment variable is therefore not needed when using this feature.
When secrets is not defined, the existing behavior is unchanged.
// wrangler.jsonc
{
"secrets": {
"required": ["API_KEY", "DB_PASSWORD"],
},
}
#12625 c0e9e08 Thanks @WillTaylorDev! - Add cache configuration option for enabling worker cache (experimental)
You can now enable cache before worker execution using the new cache configuration:
{
"cache": {
"enabled": true,
},
}
This setting is environment-inheritable and opt-in. When enabled, cache behavior is applied before your worker runs.
Note: This feature is experimental. The runtime API is not yet generally available.
#12661 99037e3 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260302.0 | 1.20260303.0 |
#12680 295297a Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260303.0 | 1.20260305.0 |
#12671 f765244 Thanks @MattieTK! - fix: Only redact account names in CI environments, not all non-interactive contexts
The multi-account selection error in getAccountId now only redacts account names
when running in a CI environment (detected via ci-info). Non-interactive terminals
such as coding agents and piped commands can now see account names, which they need
to identify which account to configure. CI logs remain protected.
Updated dependencies [99037e3, 295297a]:
#12661 99037e3 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260302.0 | 1.20260303.0 |
#12680 295297a Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| workerd | 1.20260303.0 | 1.20260305.0 |
#12673 a04f6f1 Thanks @jamesopstad! - Move proxy shared secret to a constant that is reused across restarts.
#12684 53025f9 Thanks @jamesopstad! - Fix Miniflare being incorrectly disposed during rapid dev server restarts
Updated dependencies [99037e3, 295297a, f765244, c0e9e08]:
#12677 eccd014 Thanks @jamesopstad! - Add experimental secrets property to config validation
#12625 c0e9e08 Thanks @WillTaylorDev! - Add cache configuration option for enabling worker cache (experimental)
You can now enable cache before worker execution using the new cache configuration:
{
"cache": {
"enabled": true,
},
}
This setting is environment-inheritable and opt-in. When enabled, cache behavior is applied before your worker runs.
Note: This feature is experimental. The runtime API is not yet generally available.
#12648 3d6e421 Thanks @petebacondarwin! - Fix Angular scaffolding to allow localhost SSR in development mode
Recent versions of Angular's AngularAppEngine block serving SSR on localhost by default. This caused wrangler dev / wrangler pages dev to fail with URL with hostname "localhost" is not allowed.
The fix passes allowedHosts: ["localhost"] to the AngularAppEngine constructor in server.ts, which is safe to do even in production since Cloudflare will already restrict which host is allowed.
#12657 294297e Thanks @dario-piotrowicz! - Update Waku autoconfig logic
As of 1.0.0-alpha.4, Waku projects can be built on top of the Cloudflare Vite plugin, and the changes here allow Wrangler autoconfig to support this. Running autoconfig on older versions of Waku will result in an error.
Updated dependencies []:
#12629 603fe18 Thanks @petebacondarwin! - Add removeDir and removeDirSync helpers with automatic retry logic for Windows EBUSY errors
These new helpers wrap fs.rm/fs.rmSync with maxRetries: 5 and retryDelay: 100 to handle cases where file handles aren't immediately released (common on Windows with workerd).
The async helper also has a fireAndForget option to silently swallow errors and not await removal.
This improves reliability of cleanup operations across the codebase.
#12657 294297e Thanks @dario-piotrowicz! - Update dependencies of "create-cloudflare"
The following dependency versions have been updated:
| Dependency | From | To |
|---|---|---|
| create-waku | 0.12.5-1.0.0-alpha.3-0 | 0.12.5-1.0.0-alpha.4-0 |
#12648 3d6e421 Thanks @petebacondarwin! - Fix Angular scaffolding to allow localhost SSR in development mode
Recent versions of Angular's AngularAppEngine block serving SSR on localhost by default. This caused wrangler dev / wrangler pages dev to fail with URL with hostname "localhost" is not allowed.
The fix passes allowedHosts: ["localhost"] to the AngularAppEngine constructor in server.ts, which is safe to do even in production since Cloudflare will already restrict which host is allowed.
#12628 494ee7b Thanks @Master-Hash! - Append Cloudflare defaults to existing .assetsignore files during build output
When a project includes a PUBLIC_DIR/.assetsignore, the plugin now preserves those rules and appends the required wrangler.json and .dev.vars entries instead of replacing the file content.
Updated dependencies [3d6e421, 294297e]: