Skip to content

Version Packages#13141

Merged
ascorbic merged 1 commit intomainfrom
changeset-release/main
Apr 2, 2026
Merged

Version Packages#13141
ascorbic merged 1 commit intomainfrom
changeset-release/main

Conversation

@workers-devprod
Copy link
Copy Markdown
Contributor

@workers-devprod workers-devprod commented Mar 31, 2026

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

miniflare@4.20260401.0

Minor Changes

  • #13051 d5bffde Thanks @dario-piotrowicz! - Deprecate supportedCompatibilityDate export

    The supportedCompatibilityDate export is now deprecated. Instead of relying on the workerd-derived compatibility date, callers should just use today's date directly, e.g. new Date().toISOString().slice(0, 10).

  • #13011 b9b7e9d Thanks @ruifigueira! - Add experimental headful browser rendering support for local development

    Experimental: This feature may be removed or changed without notice.

    When developing locally with the Browser Rendering API, you can enable headful (visible) mode via the X_BROWSER_HEADFUL environment variable to see the browser while debugging:

    X_BROWSER_HEADFUL=true wrangler dev
    X_BROWSER_HEADFUL=true vite dev

    Note: when using @cloudflare/playwright, two Chrome windows may appear — the initial blank page and the one created by browser.newPage(). This is expected behavior due to how Playwright handles browser contexts via CDP.

  • #12992 48d83ca Thanks @RiscadoA! - Add vpc_networks binding support for routing Worker traffic through a Cloudflare Tunnel or network.

    {
      "vpc_networks": [
        // Route through a specific Cloudflare Tunnel
        { "binding": "MY_FIRST_VPC", "tunnel_id": "<tunnel-id>" },
        // Route through the Cloudflare One mesh network
        { "binding": "MY_SECOND_VPC", "network_id": "cf1:network" }
      ]
    }

Patch Changes

  • #13155 5d29055 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"

    The following dependency versions have been updated:

    Dependency From To
    workerd 1.20260329.1 1.20260331.1
  • #13162 fb67a18 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"

    The following dependency versions have been updated:

    Dependency From To
    workerd 1.20260331.1 1.20260401.1
  • #13238 b2f53ea Thanks @guybedford! - Fix source phase imports parsing in Miniflare

    Miniflare now uses the acorn-import-phases plugin to parse import source syntax when analyzing module dependencies. This fixes ERR_MODULE_PARSE errors when running Workers that use source phase imports for WebAssembly modules in local development.

@cloudflare/vite-plugin@1.31.0

Minor Changes

  • #13011 b9b7e9d Thanks @ruifigueira! - Add experimental headful browser rendering support for local development

    Experimental: This feature may be removed or changed without notice.

    When developing locally with the Browser Rendering API, you can enable headful (visible) mode via the X_BROWSER_HEADFUL environment variable to see the browser while debugging:

    X_BROWSER_HEADFUL=true wrangler dev
    X_BROWSER_HEADFUL=true vite dev

    Note: when using @cloudflare/playwright, two Chrome windows may appear — the initial blank page and the one created by browser.newPage(). This is expected behavior due to how Playwright handles browser contexts via CDP.

  • #13051 d5bffde Thanks @dario-piotrowicz! - Update getLocalWorkerdCompatibilityDate to return today's date

    The re-exported getLocalWorkerdCompatibilityDate function from @cloudflare/vite-plugin previously resolved the workerd compatibility date by traversing the local miniflare installation, which was unreliable in some package manager setups. It now simply returns today's date. The function is also marked as deprecated — callers should just use today's date instead, for example like so: new Date().toISOString().slice(0, 10)

Patch Changes

  • #13125 f76652c Thanks @kayluhb! - Fix SyntaxError when SSR-transformed module ends with a single-line comment

    When module code ends with a // comment (e.g. //# sourceMappingURL=... preserved by vite-plus), the closing } of the async wrapper in runInlinedModule was absorbed into the comment, causing SyntaxError: Unexpected end of input. Adding a newline before the closing brace prevents this.

  • #13188 110002c Thanks @shulaoda! - Normalize the return value of getAssetsDirectory() with vite.normalizePath() to ensure assets.directory in the output wrangler.json always uses forward slashes

  • Updated dependencies [9c4035b, 5d29055, fb67a18, d5bffde, ab44870, 48d83ca, b2f53ea, b9b7e9d, 14e72eb, 4dc94fd, b2f53ea, d5bffde, 48d83ca]:

    • wrangler@4.80.0
    • miniflare@4.20260401.0

wrangler@4.80.0

Minor Changes

  • #13151 9c4035b Thanks @G4brym! - Add type generation for AI Search bindings

    Running wrangler types now generates AiSearchNamespace and AiSearchInstance types for ai_search_namespaces and ai_search config bindings respectively. Both simple and per-environment modes are supported.

    // wrangler.json
    {
      "ai_search_namespaces": [
        { "binding": "AI_SEARCH", "namespace": "production" }
      ],
      "ai_search": [
        { "binding": "BLOG_SEARCH", "instance_name": "cloudflare-blog" }
      ]
    }
    // Generated by `wrangler types`
    interface Env {
      AI_SEARCH: AiSearchNamespace;
      BLOG_SEARCH: AiSearchInstance;
    }
  • #13011 b9b7e9d Thanks @ruifigueira! - Add experimental headful browser rendering support for local development

    Experimental: This feature may be removed or changed without notice.

    When developing locally with the Browser Rendering API, you can enable headful (visible) mode via the X_BROWSER_HEADFUL environment variable to see the browser while debugging:

    X_BROWSER_HEADFUL=true wrangler dev
    X_BROWSER_HEADFUL=true vite dev

    Note: when using @cloudflare/playwright, two Chrome windows may appear — the initial blank page and the one created by browser.newPage(). This is expected behavior due to how Playwright handles browser contexts via CDP.

  • #12992 48d83ca Thanks @RiscadoA! - Add vpc_networks binding support for routing Worker traffic through a Cloudflare Tunnel or network.

    {
      "vpc_networks": [
        // Route through a specific Cloudflare Tunnel
        { "binding": "MY_FIRST_VPC", "tunnel_id": "<tunnel-id>" },
        // Route through the Cloudflare One mesh network
        { "binding": "MY_SECOND_VPC", "network_id": "cf1:network" }
      ]
    }

Patch Changes

  • #13155 5d29055 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"

    The following dependency versions have been updated:

    Dependency From To
    workerd 1.20260329.1 1.20260331.1
  • #13162 fb67a18 Thanks @dependabot! - Update dependencies of "miniflare", "wrangler"

    The following dependency versions have been updated:

    Dependency From To
    workerd 1.20260331.1 1.20260401.1
  • #13136 ab44870 Thanks @petebacondarwin! - Display build errors for auxiliary workers in multi-worker mode

    Previously, when running wrangler dev with multiple -c config flags (multi-worker mode), build errors from auxiliary/secondary workers were only logged at debug level, causing Wrangler to silently hang. Build errors from all workers are now displayed at error level so you can see what went wrong and fix it.

  • #12992 48d83ca Thanks @RiscadoA! - Fix remote proxy worker not catching errors thrown by bindings during wrangler dev

  • #13238 b2f53ea Thanks @guybedford! - Fix source phase imports in bundled and non-bundled Workers

    Wrangler now preserves import source syntax when it runs esbuild, including module format detection and bundled deploy output. This fixes both --no-bundle and bundled deployments for Workers that import WebAssembly using source phase imports.

  • #10126 14e72eb Thanks @nekoze1210! - fix: Sort D1 migration files to ensure consistent chronological ordering

    wrangler d1 migrations list and wrangler d1 migrations apply previously returned migration files in an order dependent on the filesystem, which could vary across operating systems. Migration filenames are now sorted alphabetically before being returned, ensuring consistent chronological ordering.

  • #13150 4dc94fd Thanks @dario-piotrowicz! - Polish Cloudflare Vite plugin installation during autoconfig

    Projects using Vite 6.0.x were rejected by auto-configuration because the minimum supported version was set to 6.1.0 (the @cloudflare/vite-plugin peer dependency). The minimum version check is now 6.0.0, and when a project has Vite in the [6.0.0, 6.1.0) range, auto-configuration will automatically upgrade it to the latest 6.x before installing @cloudflare/vite-plugin.

  • #13051 d5bffde Thanks @dario-piotrowicz! - Use today's date as the default compatibility date

    Previously, when generating a compatibility date for new projects or when no compatibility date was configured, the date was resolved by loading the locally installed workerd package via miniflare. This approach was unreliable in some package manager environments (notably pnpm). The logic now simply uses today's date instead, which is always correct and works reliably across all environments.

  • Updated dependencies [5d29055, fb67a18, d5bffde, b9b7e9d, b2f53ea, 48d83ca]:

    • miniflare@4.20260401.0

create-cloudflare@2.66.2

Patch Changes

  • #13051 d5bffde Thanks @dario-piotrowicz! - Use today's date as the default compatibility date

    Previously, when generating a compatibility date for new projects or when no compatibility date was configured, the date was resolved by loading the locally installed workerd package via miniflare. This approach was unreliable in some package manager environments (notably pnpm). The logic now simply uses today's date instead, which is always correct and works reliably across all environments.

@cloudflare/pages-shared@0.13.121

Patch Changes

@cloudflare/vitest-pool-workers@0.14.1

Patch Changes

  • #13131 65acf66 Thanks @dario-piotrowicz! - Use miniflare's handleStructuredLogs option instead of handleRuntimeStdio for processing workerd output

    Previously, vitest-pool-workers manually processed raw stdout/stderr streams from the workerd runtime via handleRuntimeStdio, with its own filtering of known noisy messages (e.g. LLVM symbolizer warnings). This switches to miniflare's handleStructuredLogs option, which parses workerd's structured JSON log output and automatically filters known unhelpful messages. This aligns with how both wrangler and vite-plugin-cloudflare handle workerd logs.

  • Updated dependencies [9c4035b, 5d29055, fb67a18, d5bffde, ab44870, 48d83ca, b2f53ea, b9b7e9d, 14e72eb, 4dc94fd, b2f53ea, d5bffde, 48d83ca]:

    • wrangler@4.80.0
    • miniflare@4.20260401.0

@cloudflare/cli@1.4.0

Minor Changes

  • #13144 db60b94 Thanks @dario-piotrowicz! - Add gitignore helpers for appending Wrangler-related entries

    New maybeAppendWranglerToGitIgnore and maybeAppendWranglerToGitIgnoreLikeFile functions that automatically append Wrangler-related entries (.wrangler, .dev.vars*, .env*, and their negated example patterns) to .gitignore or similar ignore files. Existing entries are detected and skipped to avoid duplicates.

@cloudflare/workers-utils@0.15.0

Minor Changes

  • #13011 b9b7e9d Thanks @ruifigueira! - Add experimental headful browser rendering support for local development

    Experimental: This feature may be removed or changed without notice.

    When developing locally with the Browser Rendering API, you can enable headful (visible) mode via the X_BROWSER_HEADFUL environment variable to see the browser while debugging:

    X_BROWSER_HEADFUL=true wrangler dev
    X_BROWSER_HEADFUL=true vite dev

    Note: when using @cloudflare/playwright, two Chrome windows may appear — the initial blank page and the one created by browser.newPage(). This is expected behavior due to how Playwright handles browser contexts via CDP.

  • #13051 d5bffde Thanks @dario-piotrowicz! - Remove formatCompatibilityDate from the package's public exports

    This utility has been removed from the public API. Callers should use getTodaysCompatDate() from @cloudflare/workers-utils instead.

  • #13051 d5bffde Thanks @dario-piotrowicz! - Remove getLocalWorkerdCompatibilityDate from the package

    This utility has been removed because its implementation besides being unreliable is no longer needed. Callers should now use today's date as the compatibility date directly, e.g. via getTodaysCompatDate() from @cloudflare/workers-utils.

  • #12992 48d83ca Thanks @RiscadoA! - Add vpc_networks binding support for routing Worker traffic through a Cloudflare Tunnel or network.

    {
      "vpc_networks": [
        // Route through a specific Cloudflare Tunnel
        { "binding": "MY_FIRST_VPC", "tunnel_id": "<tunnel-id>" },
        // Route through the Cloudflare One mesh network
        { "binding": "MY_SECOND_VPC", "network_id": "cf1:network" }
      ]
    }
  • #13051 d5bffde Thanks @dario-piotrowicz! - Add getTodaysCompatDate() utility function

    Returns today's date as a YYYY-MM-DD string.

@workers-devprod workers-devprod requested a review from a team as a code owner March 31, 2026 11:10
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new bot commented Mar 31, 2026

create-cloudflare

npm i https://pkg.pr.new/create-cloudflare@13141

@cloudflare/kv-asset-handler

npm i https://pkg.pr.new/@cloudflare/kv-asset-handler@13141

miniflare

npm i https://pkg.pr.new/miniflare@13141

@cloudflare/pages-shared

npm i https://pkg.pr.new/@cloudflare/pages-shared@13141

@cloudflare/unenv-preset

npm i https://pkg.pr.new/@cloudflare/unenv-preset@13141

@cloudflare/vite-plugin

npm i https://pkg.pr.new/@cloudflare/vite-plugin@13141

@cloudflare/vitest-pool-workers

npm i https://pkg.pr.new/@cloudflare/vitest-pool-workers@13141

@cloudflare/workers-editor-shared

npm i https://pkg.pr.new/@cloudflare/workers-editor-shared@13141

wrangler

npm i https://pkg.pr.new/wrangler@13141

commit: dbc7e28

@ask-bonk
Copy link
Copy Markdown
Contributor

ask-bonk bot commented Mar 31, 2026

LGTM

github run

@workers-devprod workers-devprod force-pushed the changeset-release/main branch from 38c9155 to d759635 Compare March 31, 2026 12:39
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 31, 2026

⚠️ Issues found

fix-remote-proxy-error-propagation.md

The changeset body is missing. The title alone — "Fix remote proxy worker not catching errors thrown by bindings during wrangler dev" — gives no context about what the root cause was, how it was fixed, or what the user-visible impact is. Per the guidelines, the body should have "one or more paragraphs explaining the reason for the change and anything notable about the approach."


two-baboons-wink.md

Same issue: no body. The single-line description is reasonable as a title but there is no body paragraph explaining why the normalization is needed, what broke without it, or on which platforms this was observed.


old-chefs-pull.md

Minor style nit: the title starts with fix: (conventional commit prefix). The README says changeset descriptions should either use a conventional commit prefix or start with a capital letter — not both mixed. The current title reads fix: Sort D1 migration files…, which is fine as a conventional commit style, but the colon-prefix is redundant alongside the proper imperative sentence that follows. This is a minor formatting inconsistency but not a blocker.


All other changesets

No issues found. Version types, descriptions, markdown headers, and experimental-feature call-outs all look correct.

@workers-devprod workers-devprod force-pushed the changeset-release/main branch 18 times, most recently from a010c16 to 2ea0a48 Compare April 1, 2026 14:18
@workers-devprod
Copy link
Copy Markdown
Contributor Author

workers-devprod commented Apr 1, 2026

Codeowners approval required for this PR:

  • ✅ @cloudflare/wrangler
Show detailed file reviewers

@workers-devprod workers-devprod force-pushed the changeset-release/main branch 3 times, most recently from a50a319 to b5fdfa5 Compare April 1, 2026 15:31
@petebacondarwin petebacondarwin removed the request for review from a team April 1, 2026 15:34
@petebacondarwin petebacondarwin removed their request for review April 1, 2026 15:34
@workers-devprod workers-devprod force-pushed the changeset-release/main branch from b5fdfa5 to d3eda96 Compare April 1, 2026 16:04
@workers-devprod workers-devprod requested review from a team and NuroDev and removed request for a team April 1, 2026 16:05
@workers-devprod workers-devprod force-pushed the changeset-release/main branch from d3eda96 to 9619f7b Compare April 1, 2026 23:02
@workers-devprod workers-devprod force-pushed the changeset-release/main branch from 9619f7b to a171dab Compare April 2, 2026 09:51
@ascorbic ascorbic enabled auto-merge April 2, 2026 11:46
@workers-devprod workers-devprod force-pushed the changeset-release/main branch from 76dd5bc to dbc7e28 Compare April 2, 2026 11:47
@ascorbic ascorbic added this pull request to the merge queue Apr 2, 2026
Merged via the queue into main with commit 0de6989 Apr 2, 2026
50 checks passed
@ascorbic ascorbic deleted the changeset-release/main branch April 2, 2026 12:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants