Skip to content

fix: Resolve Storybook HMR crash and worker stale state#859

Merged
justinvdm merged 27 commits intomainfrom
storybook
Nov 4, 2025
Merged

fix: Resolve Storybook HMR crash and worker stale state#859
justinvdm merged 27 commits intomainfrom
storybook

Conversation

@justinvdm
Copy link
Copy Markdown
Collaborator

@justinvdm justinvdm commented Nov 4, 2025

This change addresses two separate issues related to Vite's Hot Module Replacement (HMR) functionality.

Storybook HMR Crash

Problem

When using Storybook, saving a file would crash the development server with a "Maximum call stack size exceeded" error.

Context

The error was traced to the isInUseClientGraph function within our HMR plugin. This function was a legacy optimization from a pre-SSR-bridge architecture. In that earlier phase, module graphs for different environments were not clearly separated, so this check was needed to recursively guess if a changed module was part of a client-side bundle in order to avoid a disruptive full-page reload. However, it did not track visited nodes, causing it to enter an infinite loop when encountering module graphs with cycles, such as those created by Storybook.

Our current architecture now maintains separate and well-structured module graphs for each Vite environment (client, worker, and ssr). A key aspect of this design is the SSR subgraph, which ensures that client components are correctly incorporated into the worker's module graph for server-side rendering.

Because of this clear architectural separation, a file change is now handled by the hotUpdate hook within the specific environment it belongs to. The system no longer needs to manually traverse the graph to guess a module's context; the environment-specific plugin execution provides this information implicitly. This makes the old check redundant.

Solution

The isInUseClientGraph function and its calls have been removed. This eliminates the fragile, unnecessary check, which resolves the crash and simplifies the HMR plugin.

Worker HMR Stale State

Problem

When a file used by the worker environment was modified, HMR would not correctly update the server-side state. This resulted in the client receiving RSC payloads that were rendered using an outdated version of the worker's code.

Context

The investigation for the Storybook issue revealed that the HMR handler for the worker environment was not explicitly invalidating the changed module itself. While it handled related virtual modules in SSR case, it skipped the invalidation for the source file.

Solution

An invalidateModule call for the changed file has been added to the worker environment's HMR handler.

Testing

A comprehensive, automated HMR test suite was started but has been deferred to a future ticket (#858) to prioritize shipping these fixes and returning sooner to other priorities.

The changes have been validated through a combination of existing E2E tests and manual testing:

  • Existing E2E Coverage: The requestInfo playground test already provides automated coverage for the primary HMR scenarios involving server and client component updates.
  • Manual Verification: I have manually tested these fixes across multiple projects, confirming that HMR now functions correctly for:
    • The Storybook playground (resolving the original crash).
    • Direct changes to worker.tsx.
    • Global CSS updates via ?url imports.
    • CSS Module updates.
    • Server component updates
    • Client component updates
    • Server functions

JasonTame and others added 21 commits October 4, 2025 09:38
fix(docs): update database url on overview page
chore(deps): fix(deps): update docs-and-infra-deps

## Manual changes
### GitHub Actions Failures

The upgrade of `actions/setup-node` to `v5` caused CI workflows to fail. The new version of the action attempts to automatically detect and set up `pnpm`, but it was running before `corepack` was enabled in our workflow steps. This resulted in an error where the `pnpm` executable could not be found.

The fix involved reordering the workflow steps to run `corepack enable` *before* the `actions/setup-node` step. This ensures `pnpm` is available in the environment when the action needs it. This change was applied to all relevant CI workflows.

### Cloudflare Pages Deployment Failure

The docs site deployment began failing during the `astro build` process with a module compatibility error (`Dynamic require of "path" is not supported`).

The failure was traced to the `@fujocoded/expressive-code-output` package, which was updated from `0.0.1` to `0.1.0`. An investigation of the package's contents revealed a build issue: the `exports` map in its `package.json` had its `import` and `require` conditions swapped. The entry for ESM consumers incorrectly pointed to a file containing CommonJS `require()` calls.

Given the packaging bug and an unstable versioning history observed in the dependency's repository, the package was downgraded back to the last known stable version, `0.0.1`, to ensure the docs site builds correctly.

## Automated changes

This PR contains the following updates:

| Package | Change | Age | Confidence | Type | Update |
|---|---|---|---|---|---|
| [@antfu/eslint-config](https://redirect.github.com/antfu/eslint-config) | [`^2.21.1` -> `^5.0.0`](https://renovatebot.com/diffs/npm/@antfu%2feslint-config/2.27.3/5.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@antfu%2feslint-config/5.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@antfu%2feslint-config/2.27.3/5.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | major |
| [@astrojs/mdx](https://docs.astro.build/en/guides/integrations-guide/mdx/) ([source](https://redirect.github.com/withastro/astro/tree/HEAD/packages/integrations/mdx)) | [`4.3.5` -> `4.3.6`](https://renovatebot.com/diffs/npm/@astrojs%2fmdx/4.3.5/4.3.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@astrojs%2fmdx/4.3.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@astrojs%2fmdx/4.3.5/4.3.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@astrojs/starlight](https://starlight.astro.build) ([source](https://redirect.github.com/withastro/starlight/tree/HEAD/packages/starlight)) | [`^0.35.2` -> `^0.36.0`](https://renovatebot.com/diffs/npm/@astrojs%2fstarlight/0.35.2/0.36.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@astrojs%2fstarlight/0.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@astrojs%2fstarlight/0.35.2/0.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@base-ui-components/react](https://base-ui.com) ([source](https://redirect.github.com/mui/base-ui/tree/HEAD/packages/react)) | [`1.0.0-beta.3` -> `1.0.0-beta.4`](https://renovatebot.com/diffs/npm/@base-ui-components%2freact/1.0.0-beta.3/1.0.0-beta.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@base-ui-components%2freact/1.0.0-beta.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@base-ui-components%2freact/1.0.0-beta.3/1.0.0-beta.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| @​fujocoded/expressive-code-output | [`^0.0.1` -> `^0.1.0`](https://renovatebot.com/diffs/npm/@fujocoded%2fexpressive-code-output/0.0.1/0.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@fujocoded%2fexpressive-code-output/0.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@fujocoded%2fexpressive-code-output/0.0.1/0.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@manypkg/cli](https://redirect.github.com/Thinkmill/manypkg) ([source](https://redirect.github.com/Thinkmill/manypkg/tree/HEAD/packages/cli)) | [`^0.21.4` -> `^0.25.0`](https://renovatebot.com/diffs/npm/@manypkg%2fcli/0.21.4/0.25.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@manypkg%2fcli/0.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@manypkg%2fcli/0.21.4/0.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@simplewebauthn/browser](https://redirect.github.com/MasterKale/SimpleWebAuthn/tree/master/packages/browser#readme) ([source](https://redirect.github.com/MasterKale/SimpleWebAuthn/tree/HEAD/packages/browser)) | [`13.2.0` -> `13.2.2`](https://renovatebot.com/diffs/npm/@simplewebauthn%2fbrowser/13.2.0/13.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@simplewebauthn%2fbrowser/13.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@simplewebauthn%2fbrowser/13.2.0/13.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@simplewebauthn/server](https://redirect.github.com/MasterKale/SimpleWebAuthn/tree/master/packages/server#readme) ([source](https://redirect.github.com/MasterKale/SimpleWebAuthn/tree/HEAD/packages/server)) | [`13.2.0` -> `13.2.2`](https://renovatebot.com/diffs/npm/@simplewebauthn%2fserver/13.2.0/13.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@simplewebauthn%2fserver/13.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@simplewebauthn%2fserver/13.2.0/13.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@tailwindcss/typography](https://redirect.github.com/tailwindlabs/tailwindcss-typography) | [`0.5.18` -> `0.5.19`](https://renovatebot.com/diffs/npm/@tailwindcss%2ftypography/0.5.18/0.5.19) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tailwindcss%2ftypography/0.5.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tailwindcss%2ftypography/0.5.18/0.5.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@tailwindcss/vite](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite)) | [`4.1.13` -> `4.1.14`](https://renovatebot.com/diffs/npm/@tailwindcss%2fvite/4.1.13/4.1.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tailwindcss%2fvite/4.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tailwindcss%2fvite/4.1.13/4.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`22.14.0` -> `22.18.8`](https://renovatebot.com/diffs/npm/@types%2fnode/22.14.0/22.18.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/22.18.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/22.14.0/22.18.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`^20.14.2` -> `^22.0.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.19.17/22.18.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/22.18.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.19.17/22.18.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | major |
| [actions/checkout](https://redirect.github.com/actions/checkout) | `v4` -> `v5` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/actions%2fcheckout/v5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/actions%2fcheckout/v4/v5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | action | major |
| [actions/setup-node](https://redirect.github.com/actions/setup-node) | `v4` -> `v5` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/actions%2fsetup-node/v5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/actions%2fsetup-node/v4/v5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | action | major |
| [astro](https://astro.build) ([source](https://redirect.github.com/withastro/astro/tree/HEAD/packages/astro)) | [`5.13.7` -> `5.14.1`](https://renovatebot.com/diffs/npm/astro/5.13.7/5.14.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/astro/5.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/astro/5.13.7/5.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [astro-embed](https://astro-embed.netlify.app/) ([source](https://redirect.github.com/delucis/astro-embed/tree/HEAD/packages/astro-embed)) | [`0.9.0` -> `0.9.1`](https://renovatebot.com/diffs/npm/astro-embed/0.9.0/0.9.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/astro-embed/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/astro-embed/0.9.0/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [eslint](https://eslint.org) ([source](https://redirect.github.com/eslint/eslint)) | [`9.36.0` -> `9.37.0`](https://renovatebot.com/diffs/npm/eslint/9.36.0/9.37.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/eslint/9.37.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint/9.36.0/9.37.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [knip](https://knip.dev) ([source](https://redirect.github.com/webpro-nl/knip/tree/HEAD/packages/knip)) | [`~5.26.0` -> `~5.64.0`](https://renovatebot.com/diffs/npm/knip/5.26.0/5.64.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/knip/5.64.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/knip/5.26.0/5.64.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [kysely](https://kysely.dev) ([source](https://redirect.github.com/kysely-org/kysely)) | [`^0.27.4` -> `^0.28.0`](https://renovatebot.com/diffs/npm/kysely/0.27.6/0.28.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/kysely/0.28.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/kysely/0.27.6/0.28.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) | `22.14.0` -> `22.20.0` | [![age](https://developer.mend.io/api/mc/badges/age/node-version/node/v22.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/node-version/node/v22.14.0/v22.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [pnpm](https://pnpm.io) ([source](https://redirect.github.com/pnpm/pnpm/tree/HEAD/pnpm)) | [`10.0.0` -> `10.18.0`](https://renovatebot.com/diffs/npm/pnpm/10.0.0/10.18.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/pnpm/10.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/pnpm/10.0.0/10.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | packageManager | minor |
| [pnpm](https://pnpm.io) ([source](https://redirect.github.com/pnpm/pnpm/tree/HEAD/pnpm)) | [`10.17.1` -> `10.18.0`](https://renovatebot.com/diffs/npm/pnpm/10.17.1/10.18.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/pnpm/10.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/pnpm/10.17.1/10.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [prettier](https://prettier.io) ([source](https://redirect.github.com/prettier/prettier)) | [`3.5.3` -> `3.6.2`](https://renovatebot.com/diffs/npm/prettier/3.5.3/3.6.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.5.3/3.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [react-hook-form](https://react-hook-form.com) ([source](https://redirect.github.com/react-hook-form/react-hook-form)) | [`7.63.0` -> `7.64.0`](https://renovatebot.com/diffs/npm/react-hook-form/7.63.0/7.64.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-hook-form/7.64.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hook-form/7.63.0/7.64.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [recharts](https://redirect.github.com/recharts/recharts) | [`2.15.4` -> `3.2.1`](https://renovatebot.com/diffs/npm/recharts/2.15.4/3.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/recharts/3.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/recharts/2.15.4/3.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | major |
| [renovatebot/github-action](https://redirect.github.com/renovatebot/github-action) | `v40.2.2` -> `v43.0.14` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/renovatebot%2fgithub-action/v43.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/renovatebot%2fgithub-action/v40.2.2/v43.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | action | major |
| [resend](https://redirect.github.com/resendlabs/resend-node) | [`6.1.0` -> `6.1.2`](https://renovatebot.com/diffs/npm/resend/6.1.0/6.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/resend/6.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/resend/6.1.0/6.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [shadcn](https://redirect.github.com/shadcn/ui) ([source](https://redirect.github.com/shadcn/ui/tree/HEAD/packages/shadcn)) | [`3.3.1` -> `3.4.0`](https://renovatebot.com/diffs/npm/shadcn/3.3.1/3.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shadcn/3.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shadcn/3.3.1/3.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [sharp](https://sharp.pixelplumbing.com) ([source](https://redirect.github.com/lovell/sharp), [changelog](https://redirect.github.com/lovell/sharp/blob/main/docs/src/content/docs/changelog.md)) | [`^0.32.6` -> `^0.34.0`](https://renovatebot.com/diffs/npm/sharp/0.32.6/0.34.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/sharp/0.34.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/sharp/0.32.6/0.34.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [starlight-llms-txt](https://delucis.github.io/starlight-llms-txt/) ([source](https://redirect.github.com/delucis/starlight-llms-txt/tree/HEAD/packages/starlight-llms-txt)) | [`^0.5.1` -> `^0.6.0`](https://renovatebot.com/diffs/npm/starlight-llms-txt/0.5.1/0.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/starlight-llms-txt/0.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/starlight-llms-txt/0.5.1/0.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.1.13` -> `4.1.14`](https://renovatebot.com/diffs/npm/tailwindcss/4.1.13/4.1.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.1.13/4.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tsx](https://tsx.is) ([source](https://redirect.github.com/privatenumber/tsx)) | [`4.19.4` -> `4.20.6`](https://renovatebot.com/diffs/npm/tsx/4.19.4/4.20.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tsx/4.20.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tsx/4.19.4/4.20.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [typescript](https://www.typescriptlang.org/) ([source](https://redirect.github.com/microsoft/TypeScript)) | [`5.8.3` -> `5.9.3`](https://renovatebot.com/diffs/npm/typescript/5.8.3/5.9.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.9.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.8.3/5.9.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`3.1.1` -> `3.2.4`](https://renovatebot.com/diffs/npm/vitest/3.1.1/3.2.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/3.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/3.1.1/3.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`4.35.0` -> `4.42.0`](https://renovatebot.com/diffs/npm/wrangler/4.35.0/4.42.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/4.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/4.35.0/4.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

This PR updates the following dependencies:

---

### Release Notes

<details>
<summary>antfu/eslint-config (@&#8203;antfu/eslint-config)</summary>

### [`v5.4.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.4.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.4.0...v5.4.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.4.0...v5.4.1)

### [`v5.4.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.4.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.3.0...v5.4.0)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.3.0...v5.4.0)

### [`v5.3.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.3.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.2.2...v5.3.0)

#####    🐞 Bug Fixes

- Use ecmaVersion 'latest' per eslint's docs recommendation. fixes support for import attributes  -  by [@&#8203;romansp](https://redirect.github.com/romansp) in [#&#8203;756](https://redirect.github.com/antfu/eslint-config/issues/756) [<samp>(2031b)</samp>](https://redirect.github.com/antfu/eslint-config/commit/2031bf7)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.2.2...v5.3.0)

### [`v5.2.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.2.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.2.1...v5.2.2)

#####    🚀 Features

- Add sort support of Bun catalogs  -  by [@&#8203;letstri](https://redirect.github.com/letstri) in [#&#8203;754](https://redirect.github.com/antfu/eslint-config/issues/754) [<samp>(800d8)</samp>](https://redirect.github.com/antfu/eslint-config/commit/800d84f)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.2.1...v5.2.2)

### [`v5.2.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.2.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.2.0...v5.2.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.2.0...v5.2.1)

### [`v5.2.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.2.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.1.0...v5.2.0)

#####    🚀 Features

- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(ca1b4)</samp>](https://redirect.github.com/antfu/eslint-config/commit/ca1b4c9)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.1.0...v5.2.0)

### [`v5.1.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.1.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v5.0.0...v5.1.0)

#####    🚀 Features

- Add eslint-plugin-jsx-a11y via jsx.a11y option  -  by [@&#8203;ccpu](https://redirect.github.com/ccpu) in [#&#8203;743](https://redirect.github.com/antfu/eslint-config/issues/743) [<samp>(aeeeb)</samp>](https://redirect.github.com/antfu/eslint-config/commit/aeeeb14)
- Upgrade `eslint-plugin-jsdoc` to v52  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(80e4a)</samp>](https://redirect.github.com/antfu/eslint-config/commit/80e4a8a)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v5.0.0...v5.1.0)

### [`v5.0.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v5.0.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.19.0...v5.0.0)

#####    🚨 Breaking Changes

- Rename `@next/next` to `next`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(fc2e6)</samp>](https://redirect.github.com/antfu/eslint-config/commit/fc2e6e0)

#####    🐞 Bug Fixes

- Update `TypedFlatConfigItem` to provide rules auto-completion  -  by [@&#8203;astrochemx](https://redirect.github.com/astrochemx) in [#&#8203;742](https://redirect.github.com/antfu/eslint-config/issues/742) [<samp>(aa975)</samp>](https://redirect.github.com/antfu/eslint-config/commit/aa97582)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.19.0...v5.0.0)

### [`v4.19.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.19.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.18.0...v4.19.0)

#####    🚀 Features

- Add Next.js support  -  by [@&#8203;Peek-A-Booo](https://redirect.github.com/Peek-A-Booo) in [#&#8203;731](https://redirect.github.com/antfu/eslint-config/issues/731) [<samp>(8f9b4)</samp>](https://redirect.github.com/antfu/eslint-config/commit/8f9b45c)
- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(58282)</samp>](https://redirect.github.com/antfu/eslint-config/commit/58282d4)

#####    🐞 Bug Fixes

- Enhance TypedFlatConfigItem type and improve timeout handling in tests  -  by [@&#8203;ccpu](https://redirect.github.com/ccpu) in [#&#8203;738](https://redirect.github.com/antfu/eslint-config/issues/738) [<samp>(3d486)</samp>](https://redirect.github.com/antfu/eslint-config/commit/3d486ce)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.18.0...v4.19.0)

### [`v4.18.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.18.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.17.0...v4.18.0)

#####    🚀 Features

- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(ae7dc)</samp>](https://redirect.github.com/antfu/eslint-config/commit/ae7dcb1)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.17.0...v4.18.0)

### [`v4.17.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.17.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.16.2...v4.17.0)

#####    🚀 Features

- Support sort jsconfig  -  by [@&#8203;pacexy](https://redirect.github.com/pacexy) in [#&#8203;733](https://redirect.github.com/antfu/eslint-config/issues/733) [<samp>(5dff7)</samp>](https://redirect.github.com/antfu/eslint-config/commit/5dff7e4)
- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(f5f3f)</samp>](https://redirect.github.com/antfu/eslint-config/commit/f5f3f0d)

#####    🐞 Bug Fixes

- Update GLOB\_SVELTE to include .js/.ts extensions  -  by [@&#8203;agafonovim](https://redirect.github.com/agafonovim) in [#&#8203;734](https://redirect.github.com/antfu/eslint-config/issues/734) [<samp>(46ead)</samp>](https://redirect.github.com/antfu/eslint-config/commit/46ead62)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.16.2...v4.17.0)

### [`v4.16.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.16.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.16.1...v4.16.2)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.16.1...v4.16.2)

### [`v4.16.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.16.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.16.0...v4.16.1)

#####    🐞 Bug Fixes

- Update `eslint-plugin-command`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(195da)</samp>](https://redirect.github.com/antfu/eslint-config/commit/195da0e)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.16.0...v4.16.1)

### [`v4.16.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.16.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.15.0...v4.16.0)

#####    🚀 Features

- Update allow exports for react-router projects  -  by [@&#8203;yyyanghj](https://redirect.github.com/yyyanghj) and [@&#8203;antfu](https://redirect.github.com/antfu) in [#&#8203;725](https://redirect.github.com/antfu/eslint-config/issues/725) [<samp>(83eec)</samp>](https://redirect.github.com/antfu/eslint-config/commit/83eece7)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.15.0...v4.16.0)

### [`v4.15.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.15.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.14.1...v4.15.0)

#####    🚀 Features

- Don't use deprecated option  -  by [@&#8203;9romise](https://redirect.github.com/9romise) in [#&#8203;719](https://redirect.github.com/antfu/eslint-config/issues/719) [<samp>(4e0f8)</samp>](https://redirect.github.com/antfu/eslint-config/commit/4e0f82d)
- Bring import plugin back  -  by [@&#8203;9romise](https://redirect.github.com/9romise) in [#&#8203;723](https://redirect.github.com/antfu/eslint-config/issues/723) [<samp>(ad23f)</samp>](https://redirect.github.com/antfu/eslint-config/commit/ad23f06)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.14.1...v4.15.0)

### [`v4.14.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.14.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.14.0...v4.14.1)

#####    🐞 Bug Fixes

- Cleanup disable usages  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(f73ad)</samp>](https://redirect.github.com/antfu/eslint-config/commit/f73ad5d)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.14.0...v4.14.1)

### [`v4.14.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.14.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.13.3...v4.14.0)

#####    🐞 Bug Fixes

- Remove `eslint-plugin-import-x`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(db5a3)</samp>](https://redirect.github.com/antfu/eslint-config/commit/db5a31d)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.13.3...v4.14.0)

### [`v4.13.3`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.13.3)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.13.2...v4.13.3)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.13.2...v4.13.3)

### [`v4.13.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.13.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.13.1...v4.13.2)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.13.1...v4.13.2)

### [`v4.13.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.13.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.13.0...v4.13.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.13.0...v4.13.1)

### [`v4.13.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.13.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.12.1...v4.13.0)

#####    🚀 Features

- Upgrade `unicorn` to v59  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e545c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/e545c00)

#####    🐞 Bug Fixes

- **sort**: Add imports key before exports for pkg.json  -  by [@&#8203;johannpinson](https://redirect.github.com/johannpinson) in [#&#8203;712](https://redirect.github.com/antfu/eslint-config/issues/712) [<samp>(dc628)</samp>](https://redirect.github.com/antfu/eslint-config/commit/dc6288a)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.12.1...v4.13.0)

### [`v4.12.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.12.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.12.0...v4.12.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.12.0...v4.12.1)

### [`v4.12.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.12.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.11.0...v4.12.0)

#####    🚀 Features

- Sync the recommended rules of react plugins  -  by [@&#8203;Rel1cx](https://redirect.github.com/Rel1cx) in [#&#8203;697](https://redirect.github.com/antfu/eslint-config/issues/697) [<samp>(7c24c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/7c24ce7)
- Allow `unicorn` and `svelte` to overrides rules  -  by [@&#8203;oliver139](https://redirect.github.com/oliver139) in [#&#8203;701](https://redirect.github.com/antfu/eslint-config/issues/701) [<samp>(af93c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/af93c10)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.11.0...v4.12.0)

### [`v4.11.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.11.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.10.2...v4.11.0)

#####    🚀 Features

- Support type augmentation for rule options  -  by [@&#8203;nwidynski](https://redirect.github.com/nwidynski) in [#&#8203;695](https://redirect.github.com/antfu/eslint-config/issues/695) [<samp>(89882)</samp>](https://redirect.github.com/antfu/eslint-config/commit/898828d)
- Add ts 5.8 flags for tsconfig sorting  -  by [@&#8203;nwidynski](https://redirect.github.com/nwidynski) in [#&#8203;694](https://redirect.github.com/antfu/eslint-config/issues/694) [<samp>(99470)</samp>](https://redirect.github.com/antfu/eslint-config/commit/99470cc)
- Sync the recommended rules of react plugins  -  by [@&#8203;Rel1cx](https://redirect.github.com/Rel1cx) in [#&#8203;693](https://redirect.github.com/antfu/eslint-config/issues/693) [<samp>(ea15e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/ea15e1d)
- **vue-a11y**: Add vue accessibility plugin support  -  by [@&#8203;oliver139](https://redirect.github.com/oliver139) in [#&#8203;686](https://redirect.github.com/antfu/eslint-config/issues/686) [<samp>(6e483)</samp>](https://redirect.github.com/antfu/eslint-config/commit/6e483d5)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.10.2...v4.11.0)

### [`v4.10.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.10.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.10.1...v4.10.2)

#####    🐞 Bug Fixes

- **cli**: Version infer, close [#&#8203;687](https://redirect.github.com/antfu/eslint-config/issues/687)  -  by [@&#8203;antfu](https://redirect.github.com/antfu) in [#&#8203;687](https://redirect.github.com/antfu/eslint-config/issues/687) [<samp>(fcdfb)</samp>](https://redirect.github.com/antfu/eslint-config/commit/fcdfb8f)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.10.1...v4.10.2)

### [`v4.10.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.10.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.10.0...v4.10.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.10.0...v4.10.1)

### [`v4.10.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.10.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.9.0...v4.10.0)

#####    🚀 Features

- Update pnpm plugin  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(7e6e8)</samp>](https://redirect.github.com/antfu/eslint-config/commit/7e6e8f5)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.9.0...v4.10.0)

### [`v4.9.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.9.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.8.1...v4.9.0)

#####    🚀 Features

- Sort all pnpm-workspace keys  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(79a2c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/79a2caf)
- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(6b12e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/6b12ef0)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.8.1...v4.9.0)

### [`v4.8.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.8.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.7.0...v4.8.1)

#####    🚀 Features

- Add more pnpm-package-yaml keys sorting  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(69071)</samp>](https://redirect.github.com/antfu/eslint-config/commit/69071f1)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.8.0...v4.8.1)

### [`v4.7.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.7.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.6.0...v4.7.0)

#####    🚀 Features

- **yaml**: Sort keys for pnpm workspace  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(2ae8f)</samp>](https://redirect.github.com/antfu/eslint-config/commit/2ae8f1c)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.6.0...v4.7.0)

### [`v4.6.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.6.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.5.1...v4.6.0)

#####    🚀 Features

- Introduce experimental `pnpmCatalogs` support  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(d410d)</samp>](https://redirect.github.com/antfu/eslint-config/commit/d410d14)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.5.1...v4.6.0)

### [`v4.5.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.5.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.5.0...v4.5.1)

#####    🐞 Bug Fixes

- **unicorn**: Move `no-instanceof-array` to `no-instanceof-builtins`  -  by [@&#8203;9romise](https://redirect.github.com/9romise) in [#&#8203;674](https://redirect.github.com/antfu/eslint-config/issues/674) [<samp>(b9549)</samp>](https://redirect.github.com/antfu/eslint-config/commit/b9549ae)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.5.0...v4.5.1)

### [`v4.5.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.5.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.4.0...v4.5.0)

#####    🚀 Features

- Update `eslint-plugin-vue` to v10  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(4dc4e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/4dc4e0c)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.4.0...v4.5.0)

### [`v4.4.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.4.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.3.0...v4.4.0)

#####    🚀 Features

- Enforce `generator-star` and `yield-star` spacing  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e5dac)</samp>](https://redirect.github.com/antfu/eslint-config/commit/e5dacc5)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.3.0...v4.4.0)

### [`v4.3.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.3.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.2.1...v4.3.0)

#####    🚀 Features

- Update `unicorn` to v57, `eslint-stylistic` to v4  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(c1873)</samp>](https://redirect.github.com/antfu/eslint-config/commit/c187318)

#####    🏎 Performance

- Migrate from `yargs` to `cac`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(4344a)</samp>](https://redirect.github.com/antfu/eslint-config/commit/4344a13)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.2.1...v4.3.0)

### [`v4.2.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.2.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.2.0...v4.2.1)

#####    🚀 Features

- Replace picocolors with ansis  -  by [@&#8203;webdiscus](https://redirect.github.com/webdiscus) in [#&#8203;665](https://redirect.github.com/antfu/eslint-config/issues/665) [<samp>(99888)</samp>](https://redirect.github.com/antfu/eslint-config/commit/998887c)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.2.0...v4.2.1)

### [`v4.2.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.2.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.1.1...v4.2.0)

#####    🚀 Features

- Upgrade `@stylistic` to v4.0  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(41c21)</samp>](https://redirect.github.com/antfu/eslint-config/commit/41c21a1)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.1.1...v4.2.0)

### [`v4.1.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.1.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.1.0...v4.1.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.1.0...v4.1.1)

### [`v4.1.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.1.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.0.1...v4.1.0)

#####    🚀 Features

- Add `fixStyle` to `ts/consistent-type-imports`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(22bf2)</samp>](https://redirect.github.com/antfu/eslint-config/commit/22bf2bd)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.0.1...v4.1.0)

### [`v4.0.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.0.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v4.0.0...v4.0.1)

#####    🚀 Features

- Update deps and snapshot  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(24ad9)</samp>](https://redirect.github.com/antfu/eslint-config/commit/24ad953)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v4.0.0...v4.0.1)

### [`v4.0.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v4.0.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.16.0...v4.0.0)

#####    🚨 Breaking Changes

- Drop CJS build  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(216fa)</samp>](https://redirect.github.com/antfu/eslint-config/commit/216fa10)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.16.0...v4.0.0)

### [`v3.16.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.16.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.15.0...v3.16.0)

#####    🚀 Features

- Change editor rules from disable to non-fixable  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(a98cc)</samp>](https://redirect.github.com/antfu/eslint-config/commit/a98ccc8)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.15.0...v3.16.0)

### [`v3.15.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.15.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.14.0...v3.15.0)

#####    🚀 Features

- Turn off `prefer-const` in editor  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(12dd5)</samp>](https://redirect.github.com/antfu/eslint-config/commit/12dd5b5)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.14.0...v3.15.0)

### [`v3.14.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.14.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.13.0...v3.14.0)

#####    🚀 Features

- Add recommended rules from [@&#8203;eslint-react/web-api](https://redirect.github.com/eslint-react/web-api)  -  by [@&#8203;p-dubovitsky](https://redirect.github.com/p-dubovitsky) in [#&#8203;655](https://redirect.github.com/antfu/eslint-config/issues/655) [<samp>(3568e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/3568eac)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.13.0...v3.14.0)

### [`v3.13.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.13.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.12.2...v3.13.0)

#####    🚀 Features

- Support React Router 7 in react-refresh rules  -  by [@&#8203;oltodo](https://redirect.github.com/oltodo) in [#&#8203;652](https://redirect.github.com/antfu/eslint-config/issues/652) [<samp>(1a41e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/1a41e55)
- **cli**: Add validation for svelte files  -  by [@&#8203;zhuchentong](https://redirect.github.com/zhuchentong) in [#&#8203;653](https://redirect.github.com/antfu/eslint-config/issues/653) [<samp>(facfb)</samp>](https://redirect.github.com/antfu/eslint-config/commit/facfb43)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.12.2...v3.13.0)

### [`v3.12.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.12.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.12.1...v3.12.2)

#####    🚀 Features

- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(921c6)</samp>](https://redirect.github.com/antfu/eslint-config/commit/921c6fb)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.12.1...v3.12.2)

### [`v3.12.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.12.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.12.0...v3.12.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.12.0...v3.12.1)

### [`v3.12.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.12.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.11.2...v3.12.0)

#####    🚀 Features

- Update `@eslint-react/eslint-plugin` to ^1.19.0  -  by [@&#8203;Rel1cx](https://redirect.github.com/Rel1cx) in [#&#8203;642](https://redirect.github.com/antfu/eslint-config/issues/642) [<samp>(a0a82)</samp>](https://redirect.github.com/antfu/eslint-config/commit/a0a82e4)
- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(f2853)</samp>](https://redirect.github.com/antfu/eslint-config/commit/f28536b)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.11.2...v3.12.0)

### [`v3.11.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.11.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.11.1...v3.11.2)

#####    🐞 Bug Fixes

- **perfectionist**: Revert bahaviour change on import sorting since v3.10  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(00c41)</samp>](https://redirect.github.com/antfu/eslint-config/commit/00c4194)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.11.1...v3.11.2)

### [`v3.11.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.11.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.11.0...v3.11.1)

#####    🐞 Bug Fixes

- Recover typegen for builtin rules, close [#&#8203;639](https://redirect.github.com/antfu/eslint-config/issues/639)  -  by [@&#8203;antfu](https://redirect.github.com/antfu) in [#&#8203;639](https://redirect.github.com/antfu/eslint-config/issues/639) [<samp>(d9b10)</samp>](https://redirect.github.com/antfu/eslint-config/commit/d9b10e1)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.11.0...v3.11.1)

### [`v3.11.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.11.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.10.0...v3.11.0)

#####    🐞 Bug Fixes

- Disable `antfu/no-top-level-await` for Astro  -  by [@&#8203;kidonng](https://redirect.github.com/kidonng) in [#&#8203;638](https://redirect.github.com/antfu/eslint-config/issues/638) [<samp>(40ee7)</samp>](https://redirect.github.com/antfu/eslint-config/commit/40ee74a)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.10.0...v3.11.0)

### [`v3.10.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.10.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.9.2...v3.10.0)

#####    🚀 Features

- Upgrade `perfectionist` to v4  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(667c4)</samp>](https://redirect.github.com/antfu/eslint-config/commit/667c448)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.9.2...v3.10.0)

### [`v3.9.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.9.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.9.1...v3.9.2)

#####    🚀 Features

- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e33dc)</samp>](https://redirect.github.com/antfu/eslint-config/commit/e33dc72)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.9.1...v3.9.2)

### [`v3.9.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.9.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.8.0...v3.9.1)

#####    🐞 Bug Fixes

- Update quotes config  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(31610)</samp>](https://redirect.github.com/antfu/eslint-config/commit/31610b2)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.9.0...v3.9.1)

### [`v3.8.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.8.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.7.3...v3.8.0)

#####    🚀 Features

- Support json5 in vscode  -  by [@&#8203;zzxming](https://redirect.github.com/zzxming) in [#&#8203;623](https://redirect.github.com/antfu/eslint-config/issues/623) [<samp>(f11ab)</samp>](https://redirect.github.com/antfu/eslint-config/commit/f11ab09)
- Update deps  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e5e79)</samp>](https://redirect.github.com/antfu/eslint-config/commit/e5e79c5)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.7.3...v3.8.0)

### [`v3.7.3`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.7.3)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.7.2...v3.7.3)

#####    🐞 Bug Fixes

- Properly disable top-level-await rule for tests  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e914a)</samp>](https://redirect.github.com/antfu/eslint-config/commit/e914ae4)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.7.2...v3.7.3)

### [`v3.7.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.7.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.7.1...v3.7.2)

#####    🚀 Features

- Merge prettier plugins with options  -  by [@&#8203;suppayami](https://redirect.github.com/suppayami) in [#&#8203;614](https://redirect.github.com/antfu/eslint-config/issues/614) [<samp>(04e57)</samp>](https://redirect.github.com/antfu/eslint-config/commit/04e576c)

#####    🐞 Bug Fixes

- Disable `antfu/no-top-level-await` for markdown snippets  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(a984c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/a984c89)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.7.1...v3.7.2)

### [`v3.7.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.7.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.7.0...v3.7.1)

#####    🚀 Features

- Disable rules for config files  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(a434e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/a434edf)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.7.0...v3.7.1)

### [`v3.7.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.7.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.6.2...v3.7.0)

#####    🚀 Features

- Enable `antfu/no-top-level-await`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(a08aa)</samp>](https://redirect.github.com/antfu/eslint-config/commit/a08aa0b)

#####    🐞 Bug Fixes

- Disable `explicit-function-return-type` in markdown code  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(60ffd)</samp>](https://redirect.github.com/antfu/eslint-config/commit/60ffdbe)
- Disable `ts/explicit-function-return-type` in vue files  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(1788d)</samp>](https://redirect.github.com/antfu/eslint-config/commit/1788d23)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.6.2...v3.7.0)

### [`v3.6.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.6.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.6.1...v3.6.2)

#####    🐞 Bug Fixes

- Glob for disables  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(8ba8e)</samp>](https://redirect.github.com/antfu/eslint-config/commit/8ba8e8c)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.6.1...v3.6.2)

### [`v3.6.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.6.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.6.0...v3.6.1)

#####    🐞 Bug Fixes

- Add Next.js router segment config  -  by [@&#8203;zhangyu1818](https://redirect.github.com/zhangyu1818) in [#&#8203;608](https://redirect.github.com/antfu/eslint-config/issues/608) [<samp>(f025c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/f025c1e)
- Sync js rule options to ts, close [#&#8203;609](https://redirect.github.com/antfu/eslint-config/issues/609)  -  by [@&#8203;lvjiaxuan](https://redirect.github.com/lvjiaxuan) in [#&#8203;610](https://redirect.github.com/antfu/eslint-config/issues/610) and [#&#8203;609](https://redirect.github.com/antfu/eslint-config/issues/609) [<samp>(20763)</samp>](https://redirect.github.com/antfu/eslint-config/commit/207634c)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.6.0...v3.6.1)

### [`v3.6.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.6.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.5.1...v3.6.0)

#####    🐞 Bug Fixes

- `perfectionist/sort-imports` sort types always on top  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e2839)</samp>](https://redirect.github.com/antfu/eslint-config/commit/e283983)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.5.1...v3.6.0)

### [`v3.5.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.5.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.5.0...v3.5.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.5.0...v3.5.1)

### [`v3.5.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.5.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.4.1...v3.5.0)

#####    🚀 Features

- Update [@&#8203;eslint/markdown](https://redirect.github.com/eslint/markdown) to v6  -  by [@&#8203;ocavue](https://redirect.github.com/ocavue) in [#&#8203;606](https://redirect.github.com/antfu/eslint-config/issues/606) [<samp>(b9052)</samp>](https://redirect.github.com/antfu/eslint-config/commit/b9052f8)

#####    🐞 Bug Fixes

- Disable `unicorn/consistent-function-scoping`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(5363d)</samp>](https://redirect.github.com/antfu/eslint-config/commit/5363d53)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.4.1...v3.5.0)

### [`v3.4.1`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.4.1)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.4.0...v3.4.1)

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.4.0...v3.4.1)

### [`v3.4.0`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.4.0)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.3.2...v3.4.0)

#####    🚀 Features

- Upgrade eslint, remove `@types/eslint`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(21e9c)</samp>](https://redirect.github.com/antfu/eslint-config/commit/21e9c7b)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.3.2...v3.4.0)

### [`v3.3.2`](https://redirect.github.com/antfu/eslint-config/releases/tag/v3.3.2)

[Compare Source](https://redirect.github.com/antfu/eslint-config/compare/v3.3.1...v3.3.2)

#####    🐞 Bug Fixes

- Add `side-effect` in `perfectionist/sort-imports`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(298f3)</samp>](https://redirect.github.com/antfu/eslint-config/commit/298f3aa)

#####     [View changes on GitHub](https://redirect.github.com/antfu/eslint-config/compare/v3.3.1...v3.3.2)

### [`v3.3.1`](https://redirect.github.c

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "at 00:00 on sunday" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/redwoodjs/sdk).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
### Manual Changes

This PR required a manual adjustment to the `sdk` package to resolve a dependency conflict.

#### Problem

The automated update to `vite@7.1.9` in the `starter` project caused a TypeScript error during the build. The error indicated a type mismatch between two different versions of Vite's plugin API (`vite@7.1.6` and `vite@7.1.9`).

#### Root Cause

The `sdk` package had a pinned `devDependency` on `vite: "7.1.6"`. When the `starter` project's dependencies were updated, `pnpm` installed `vite@7.1.9` for the `starter` project but kept `vite@7.1.6` for the `sdk`. This resulted in the TypeScript compiler loading two conflicting sets of types, causing the build to fail.

#### Solution

The `devDependency` for `vite` in `sdk/package.json` was updated from `"7.1.6"` to `"~7.1.9"`. This change allows `pnpm` to resolve a single, compatible version of `vite` across the workspace, which resolves the type conflict.


### Automated changes
chore(deps): fix(deps): update starter-peer-deps

This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [@cloudflare/vite-plugin](https://redirect.github.com/cloudflare/workers-sdk/tree/main/packages/vite-plugin-cloudflare#readme) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/vite-plugin-cloudflare)) | [`1.13.3` -> `1.13.10`](https://renovatebot.com/diffs/npm/@cloudflare%2fvite-plugin/1.13.3/1.13.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@cloudflare%2fvite-plugin/1.13.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@cloudflare%2fvite-plugin/1.13.3/1.13.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@cloudflare/workers-types](https://redirect.github.com/cloudflare/workerd) | [`4.20250921.0` -> `4.20251004.0`](https://renovatebot.com/diffs/npm/@cloudflare%2fworkers-types/4.20250921.0/4.20251004.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@cloudflare%2fworkers-types/4.20251004.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@cloudflare%2fworkers-types/4.20250921.0/4.20251004.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react)) | [`19.2.0-canary-d415fd3e-20250919` -> `19.3.0-canary-4fdf7cf2-20251003`](https://renovatebot.com/diffs/npm/react/19.2.0-canary-d415fd3e-20250919/19.3.0-canary-4fdf7cf2-20251003) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react/19.3.0-canary-4fdf7cf2-20251003?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react/19.2.0-canary-d415fd3e-20250919/19.3.0-canary-4fdf7cf2-20251003?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-dom](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react-dom)) | [`19.2.0-canary-d415fd3e-20250919` -> `19.3.0-canary-4fdf7cf2-20251003`](https://renovatebot.com/diffs/npm/react-dom/19.2.0-canary-d415fd3e-20250919/19.3.0-canary-4fdf7cf2-20251003) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-dom/19.3.0-canary-4fdf7cf2-20251003?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-dom/19.2.0-canary-d415fd3e-20250919/19.3.0-canary-4fdf7cf2-20251003?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-server-dom-webpack](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react-server-dom-webpack)) | [`19.2.0-canary-d415fd3e-20250919` -> `19.3.0-canary-4fdf7cf2-20251003`](https://renovatebot.com/diffs/npm/react-server-dom-webpack/19.2.0-canary-d415fd3e-20250919/19.3.0-canary-4fdf7cf2-20251003) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-server-dom-webpack/19.3.0-canary-4fdf7cf2-20251003?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-server-dom-webpack/19.2.0-canary-d415fd3e-20250919/19.3.0-canary-4fdf7cf2-20251003?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`7.1.6` -> `7.1.9`](https://renovatebot.com/diffs/npm/vite/7.1.6/7.1.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/7.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/7.1.6/7.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`4.38.0` -> `4.42.0`](https://renovatebot.com/diffs/npm/wrangler/4.38.0/4.42.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/4.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/4.38.0/4.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

This PR updates the following dependencies:

---

### Release Notes

<details>
<summary>cloudflare/workers-sdk (@&#8203;cloudflare/vite-plugin)</summary>

### [`v1.13.10`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#11310)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.9...@cloudflare/vite-plugin@1.13.10)

##### Patch Changes

- [#&#8203;10825](https://redirect.github.com/cloudflare/workers-sdk/pull/10825) [`4c509ec`](https://redirect.github.com/cloudflare/workers-sdk/commit/4c509ec640f78737661dddfbf072ba60e3eee866) Thanks [@&#8203;penalosa](https://redirect.github.com/penalosa)! - Support containers defined for Vite auxiliary Workers

- Updated dependencies \[[`103fbf0`](https://redirect.github.com/cloudflare/workers-sdk/commit/103fbf0c7207818acbb58919ce6c36d0ccd878a3), [`2594130`](https://redirect.github.com/cloudflare/workers-sdk/commit/259413027f2d0c77041c121ce946fb3131de3241), [`59d5911`](https://redirect.github.com/cloudflare/workers-sdk/commit/59d5911a9106dec41fe3e6af742a20efa1b8ba0b)]:
  - wrangler\@&#8203;4.42.0
  - [@&#8203;cloudflare/unenv-preset](https://redirect.github.com/cloudflare/unenv-preset)@&#8203;2.7.6

### [`v1.13.9`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#1139)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.8...@cloudflare/vite-plugin@1.13.9)

##### Patch Changes

- [#&#8203;10673](https://redirect.github.com/cloudflare/workers-sdk/pull/10673) [`bffd2a9`](https://redirect.github.com/cloudflare/workers-sdk/commit/bffd2a9c93455f0d23d5a70d587bb851d1031e59) Thanks [@&#8203;jamesopstad](https://redirect.github.com/jamesopstad)! - Only forward `/cdn-cgi/handler/` routes to trigger handlers.

- Updated dependencies \[[`4c06766`](https://redirect.github.com/cloudflare/workers-sdk/commit/4c06766be5211a77a7dc4d06a7d2a813161b75eb), [`21a0bef`](https://redirect.github.com/cloudflare/workers-sdk/commit/21a0befcbe7d28cc0568ad9c21cfba243078e5e2), [`d3aee31`](https://redirect.github.com/cloudflare/workers-sdk/commit/d3aee31fa2130f6268bcc5bd4ed70a22db741c18), [`c8d5282`](https://redirect.github.com/cloudflare/workers-sdk/commit/c8d5282781adf527ad4acfe74001e93affd7af34), [`59e8ef0`](https://redirect.github.com/cloudflare/workers-sdk/commit/59e8ef069422d0629d937efb4d7cf3d010061676), [`79a6b7d`](https://redirect.github.com/cloudflare/workers-sdk/commit/79a6b7dd811fea5a413b084fcd281915a418a85a), [`7a4d0da`](https://redirect.github.com/cloudflare/workers-sdk/commit/7a4d0da31a01a81f7e0534f80c9d632cb5f93d60), [`bffd2a9`](https://redirect.github.com/cloudflare/workers-sdk/commit/bffd2a9c93455f0d23d5a70d587bb851d1031e59), [`62656bd`](https://redirect.github.com/cloudflare/workers-sdk/commit/62656bd8863e650e498552d5dff5f281f5506c4e), [`886e577`](https://redirect.github.com/cloudflare/workers-sdk/commit/886e577f5722ddffeba015d2213228d20430066f), [`7f2386e`](https://redirect.github.com/cloudflare/workers-sdk/commit/7f2386e4d48a81d18a3d756c6e17fdcb22d996bb), [`8d7f32e`](https://redirect.github.com/cloudflare/workers-sdk/commit/8d7f32ebd3a46724c7266a6a216cf78614e090e5), [`f9d37db`](https://redirect.github.com/cloudflare/workers-sdk/commit/f9d37dbf43e5382ea86416a053517ea61028a942), [`835d6f7`](https://redirect.github.com/cloudflare/workers-sdk/commit/835d6f7bf7f6191074cdfe19bb8d6446db52852d), [`79a6b7d`](https://redirect.github.com/cloudflare/workers-sdk/commit/79a6b7dd811fea5a413b084fcd281915a418a85a)]:
  - wrangler\@&#8203;4.41.0
  - miniflare\@&#8203;4.20251001.0

### [`v1.13.8`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#1138)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.7...@cloudflare/vite-plugin@1.13.8)

##### Patch Changes

- [#&#8203;10593](https://redirect.github.com/cloudflare/workers-sdk/pull/10593) [`2ff7e6d`](https://redirect.github.com/cloudflare/workers-sdk/commit/2ff7e6d11585b359fbbaf7bb489e4c660c006254) Thanks [@&#8203;BlankParticle](https://redirect.github.com/BlankParticle)! - fix: restore original url before passing request to miniflare in vite dev

- [#&#8203;10774](https://redirect.github.com/cloudflare/workers-sdk/pull/10774) [`ed04ed3`](https://redirect.github.com/cloudflare/workers-sdk/commit/ed04ed36b4f6933fd9f76c9209ba3da87bb04e61) Thanks [@&#8203;dario-piotrowicz](https://redirect.github.com/dario-piotrowicz)! - fix vite plugin not working when projects are in a path that contains a non-ascii character

- Updated dependencies \[[`ff82d80`](https://redirect.github.com/cloudflare/workers-sdk/commit/ff82d80a2c5798f6a18653ac1351cc662b4b35ba), [`7a6381c`](https://redirect.github.com/cloudflare/workers-sdk/commit/7a6381c4f9494dd871f70c305763d22e7049a0be), [`6ff41a6`](https://redirect.github.com/cloudflare/workers-sdk/commit/6ff41a68877ae593e2550fc789a7d91166cfe94f), [`0c208e1`](https://redirect.github.com/cloudflare/workers-sdk/commit/0c208e1321676f81e8432567112483572b61bda6), [`2432022`](https://redirect.github.com/cloudflare/workers-sdk/commit/24320222be2cb46b391a93f0c8952037a4dd4633), [`d0801b1`](https://redirect.github.com/cloudflare/workers-sdk/commit/d0801b1fd47e19a7f08a11f039a4a0664b347df1), [`325d22e`](https://redirect.github.com/cloudflare/workers-sdk/commit/325d22ea52b992d6881d21fbb59ad32ecfb03e8f), [`8d07576`](https://redirect.github.com/cloudflare/workers-sdk/commit/8d07576b8161e865e54da166887f3eb95ec6581e), [`0a554f9`](https://redirect.github.com/cloudflare/workers-sdk/commit/0a554f9323bb323c97dd07cfb5805ea5d20b371d), [`6244a9e`](https://redirect.github.com/cloudflare/workers-sdk/commit/6244a9eb75fbccc4f143e935362486a36bd27cad), [`d09cab3`](https://redirect.github.com/cloudflare/workers-sdk/commit/d09cab3b86149a67c471401daa64ff631cfb4e49)]:
  - wrangler\@&#8203;4.40.3
  - miniflare\@&#8203;4.20250927.0
  - [@&#8203;cloudflare/unenv-preset](https://redirect.github.com/cloudflare/unenv-preset)@&#8203;2.7.5

### [`v1.13.7`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#1137)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.6...@cloudflare/vite-plugin@1.13.7)

##### Patch Changes

- Updated dependencies \[[`b455281`](https://redirect.github.com/cloudflare/workers-sdk/commit/b45528102031350ef60048839e5e64252e8784b3)]:
  - wrangler\@&#8203;4.40.2

### [`v1.13.6`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#1136)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.5...@cloudflare/vite-plugin@1.13.6)

##### Patch Changes

- Updated dependencies \[[`a57149f`](https://redirect.github.com/cloudflare/workers-sdk/commit/a57149fc6b44bdc956637b67d1d26b42f7f9d6dd)]:
  - wrangler\@&#8203;4.40.1

### [`v1.13.5`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#1135)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.4...@cloudflare/vite-plugin@1.13.5)

##### Patch Changes

- Updated dependencies \[[`a7ac751`](https://redirect.github.com/cloudflare/workers-sdk/commit/a7ac751f82ba844d0a37cdcdead7600c05def810), [`06e9a48`](https://redirect.github.com/cloudflare/workers-sdk/commit/06e9a484cf1f91857c867fd0c43ebd7378e324b7), [`81fd733`](https://redirect.github.com/cloudflare/workers-sdk/commit/81fd7336c0e9f14fd848777492475a579968cc5e)]:
  - wrangler\@&#8203;4.40.0
  - miniflare\@&#8203;4.20250924.0

### [`v1.13.4`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/vite-plugin-cloudflare/CHANGELOG.md#1134)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/@cloudflare/vite-plugin@1.13.3...@cloudflare/vite-plugin@1.13.4)

##### Patch Changes

- [#&#8203;10677](https://redirect.github.com/cloudflare/workers-sdk/pull/10677) [`d7aa0ae`](https://redirect.github.com/cloudflare/workers-sdk/commit/d7aa0ae2f13d3ee8a0d4a4418db707473af8e592) Thanks [@&#8203;edmundhung](https://redirect.github.com/edmundhung)! - Support Hyperdrive local connection strings from `.env` files

  You can now define your Hyperdrive local connection string in a `.env` file using the `CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_<BINDING_NAME>` variable.

  ```sh
  CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_PROD_DB="postgres://user:password@127.0.0.1:5432/testdb"
  ```

- Updated dependencies \[[`555a6da`](https://redirect.github.com/cloudflare/workers-sdk/commit/555a6da0fbda6e792264b59984687e336c179619), [`262393a`](https://redirect.github.com/cloudflare/workers-sdk/commit/262393aded9a1a8133e61f3438ffca7853cb8fcb), [`3ec1f65`](https://redirect.github.com/cloudflare/workers-sdk/commit/3ec1f6578170f1716951a36fa6af2aee29a92030), [`a434352`](https://redirect.github.com/cloudflare/workers-sdk/commit/a434352c61ebd178b41651b505bbbc56a4578ce9), [`328e687`](https://redirect.github.com/cloudflare/workers-sdk/commit/328e68729f6bfadee5db12cc04cf8607d83a42ec), [`97a72cc`](https://redirect.github.com/cloudflare/workers-sdk/commit/97a72ccd6ccf57b0c6c62566e638666ea1f0cf71), [`b4a4311`](https://redirect.github.com/cloudflare/workers-sdk/commit/b4a4311295f8bb29e72e1c3c622cd91fb382e0ab), [`dc1d0d6`](https://redirect.github.com/cloudflare/workers-sdk/commit/dc1d0d6f9c8ccb0714f4b3143f0d0caa8b43f753), [`acd48ed`](https://redirect.github.com/cloudflare/workers-sdk/commit/acd48ed01739e32d179f98e210fba8c602860891), [`55a10a3`](https://redirect.github.com/cloudflare/workers-sdk/commit/55a10a3a6e032748e84f823600eb586f8d48e161)]:
  - miniflare\@&#8203;4.20250923.0
  - wrangler\@&#8203;4.39.0

</details>

<details>
<summary>cloudflare/workerd (@&#8203;cloudflare/workers-types)</summary>

### [`v4.20251004.0`](https://redirect.github.com/cloudflare/workerd/compare/ca434e0f62d9d0fb690fe0c16f4d4d5b74063416...6e86f5d1607c1cec7ba8c49f55bf3cfed0e50b55)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/ca434e0f62d9d0fb690fe0c16f4d4d5b74063416...6e86f5d1607c1cec7ba8c49f55bf3cfed0e50b55)

### [`v4.20251003.0`](https://redirect.github.com/cloudflare/workerd/compare/56af39ccc49bf91dcb4f5e0217bba73103f67a50...ca434e0f62d9d0fb690fe0c16f4d4d5b74063416)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/56af39ccc49bf91dcb4f5e0217bba73103f67a50...ca434e0f62d9d0fb690fe0c16f4d4d5b74063416)

### [`v4.20251001.0`](https://redirect.github.com/cloudflare/workerd/compare/1b94658b65b6a537ac80caced8083c2fbf330a29...56af39ccc49bf91dcb4f5e0217bba73103f67a50)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/1b94658b65b6a537ac80caced8083c2fbf330a29...56af39ccc49bf91dcb4f5e0217bba73103f67a50)

### [`v4.20250927.0`](https://redirect.github.com/cloudflare/workerd/compare/f70f9ddffdc039f3bf65457d7676d94759643743...1b94658b65b6a537ac80caced8083c2fbf330a29)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/f70f9ddffdc039f3bf65457d7676d94759643743...1b94658b65b6a537ac80caced8083c2fbf330a29)

### [`v4.20250926.0`](https://redirect.github.com/cloudflare/workerd/compare/c9116354454265cf09a472771646d848e3e0fa9f...f70f9ddffdc039f3bf65457d7676d94759643743)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/c9116354454265cf09a472771646d848e3e0fa9f...f70f9ddffdc039f3bf65457d7676d94759643743)

### [`v4.20250924.0`](https://redirect.github.com/cloudflare/workerd/compare/014ae2c19c404332c94b45d9481c50787f44b46d...c9116354454265cf09a472771646d848e3e0fa9f)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/014ae2c19c404332c94b45d9481c50787f44b46d...c9116354454265cf09a472771646d848e3e0fa9f)

### [`v4.20250923.0`](https://redirect.github.com/cloudflare/workerd/compare/9224be88acb313719693d283a44511c2165d7fb0...014ae2c19c404332c94b45d9481c50787f44b46d)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/9224be88acb313719693d283a44511c2165d7fb0...014ae2c19c404332c94b45d9481c50787f44b46d)

### [`v4.20250922.0`](https://redirect.github.com/cloudflare/workerd/compare/1db98ae93ad97c00283e87bbeb14c93f10c1dae6...9224be88acb313719693d283a44511c2165d7fb0)

[Compare Source](https://redirect.github.com/cloudflare/workerd/compare/1db98ae93ad97c00283e87bbeb14c93f10c1dae6...9224be88acb313719693d283a44511c2165d7fb0)

</details>

<details>
<summary>facebook/react (react)</summary>

### [`v19.3.0-canary-4fdf7cf2-20251003`](https://redirect.github.com/facebook/react/compare/v19.2.0...4fdf7cf249ecb205d20b65b5208d113ea664cb9a)

[Compare Source](https://redirect.github.com/facebook/react/compare/v19.2.0...4fdf7cf249ecb205d20b65b5208d113ea664cb9a)

### [`v19.2.0`](https://redirect.github.com/facebook/react/blob/HEAD/CHANGELOG.md#1920-October-1st-2025)

[Compare Source](https://redirect.github.com/facebook/react/compare/fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd...v19.2.0)

Below is a list of all new features, APIs, and bug fixes.

Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information.

##### New React Features

- [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children.
- [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event).
- [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over.
- [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools

##### New React DOM Features

- Added resume APIs for partial pre-rendering with Web Streams:
  - [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream.
  - [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML.
- Added resume APIs for partial pre-rendering with Node Streams:
  - [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream.
  - [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML.
- Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs.

##### Notable changes

- React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics.
- Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js
- Use underscore instead of `:` IDs generated by useId

##### All Changes

##### React

- `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([@&#8203;acdlite](https://redirect.github.com/acdlite) [@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) and many others)
- Stringify context as "SomeContext" instead of "SomeContext.Provider" ([@&#8203;kassens](https://redirect.github.com/kassens) [#&#8203;33507](https://redirect.github.com/facebook/react/pull/33507))
- Include stack of cause of React instrumentation errors with `%o` placeholder ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;34198](https://redirect.github.com/facebook/react/pull/34198))
- Fix infinite `useDeferredValue` loop in popstate event ([@&#8203;acdlite](https://redirect.github.com/acdlite) [#&#8203;32821](https://redirect.github.com/facebook/react/pull/32821))
- Fix a bug when an initial value was passed to `useDeferredValue` ([@&#8203;acdlite](https://redirect.github.com/acdlite) [#&#8203;34376](https://redirect.github.com/facebook/react/pull/34376))
- Fix a crash when submitting forms with Client Actions ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33055](https://redirect.github.com/facebook/react/pull/33055))
- Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;32900](https://redirect.github.com/facebook/react/pull/32900))
- Avoid stack overflow on wide trees during Hot Reload ([@&#8203;sophiebits](https://redirect.github.com/sophiebits) [#&#8203;34145](https://redirect.github.com/facebook/react/pull/34145))
- Improve Owner and Component stacks in various places ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage), [@&#8203;eps1lon](https://redirect.github.com/eps1lon): [#&#8203;33629](https://redirect.github.com/facebook/react/pull/33629), [#&#8203;33724](https://redirect.github.com/facebook/react/pull/33724), [#&#8203;32735](https://redirect.github.com/facebook/react/pull/32735), [#&#8203;33723](https://redirect.github.com/facebook/react/pull/33723))
- Add `cacheSignal` ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33557](https://redirect.github.com/facebook/react/pull/33557))

##### React DOM

- Block on Suspensey Fonts during reveal of server-side-rendered content ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33342](https://redirect.github.com/facebook/react/pull/33342))
- Use underscore instead of `:` for IDs generated by `useId` ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage), [@&#8203;eps1lon](https://redirect.github.com/eps1lon): [#&#8203;32001](https://redirect.github.com/facebook/react/pull/32001), [#&#8203;33342](https://redirect.github.com/facebook/react/pull/33342)[#&#8203;33099](https://redirect.github.com/facebook/react/pull/33099), [#&#8203;33422](https://redirect.github.com/facebook/react/pull/33422))
- Stop warning when ARIA 1.3 attributes are used ([@&#8203;Abdul-Omira](https://redirect.github.com/Abdul-Omira) [#&#8203;34264](https://redirect.github.com/facebook/react/pull/34264))
- Allow `nonce` to be used on hoistable styles ([@&#8203;Andarist](https://redirect.github.com/Andarist) [#&#8203;32461](https://redirect.github.com/facebook/react/pull/32461))
- Warn for using a React owned node as a Container if it also has text content ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;32774](https://redirect.github.com/facebook/react/pull/32774))
- s/HTML/text for for error messages if text hydration mismatches ([@&#8203;rickhanlonii](https://redirect.github.com/rickhanlonii) [#&#8203;32763](https://redirect.github.com/facebook/react/pull/32763))
- Fix a bug with `React.use` inside `React.lazy`-ed Component ([@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) [#&#8203;33941](https://redirect.github.com/facebook/react/pull/33941))
- Enable the `progressiveChunkSize` option for server-side-rendering APIs ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33027](https://redirect.github.com/facebook/react/pull/33027))
- Fix a bug with deeply nested Suspense inside Suspense fallback when server-side-rendering ([@&#8203;gnoff](https://redirect.github.com/gnoff) [#&#8203;33467](https://redirect.github.com/facebook/react/pull/33467))
- Avoid hanging when suspending after aborting while rendering ([@&#8203;gnoff](https://redirect.github.com/gnoff) [#&#8203;34192](https://redirect.github.com/facebook/react/pull/34192))
- Add Node Web Streams to server-side-rendering APIs for Node.js ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33475](https://redirect.github.com/facebook/react/pull/33475))

##### React Server Components

- Preload `<img>` and `<link>` using hints before they're rendered ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;34604](https://redirect.github.com/facebook/react/pull/34604))
- Log error if production elements are rendered during development ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;34189](https://redirect.github.com/facebook/react/pull/34189))
- Fix a bug when returning a Temporary reference (e.g. a Client Reference) from Server Functions ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;34084](https://redirect.github.com/facebook/react/pull/34084), [@&#8203;denk0403](https://redirect.github.com/denk0403) [#&#8203;33761](https://redirect.github.com/facebook/react/pull/33761))
- Pass line/column to `filterStackFrame` ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;33707](https://redirect.github.com/facebook/react/pull/33707))
- Support Async Modules in Turbopack Server References ([@&#8203;lubieowoce](https://redirect.github.com/lubieowoce) [#&#8203;34531](https://redirect.github.com/facebook/react/pull/34531))
- Add support for .mjs file extension in Webpack ([@&#8203;jennyscript](https://redirect.github.com/jennyscript) [#&#8203;33028](https://redirect.github.com/facebook/react/pull/33028))
- Fix a wrong missing key warning ([@&#8203;unstubbable](https://redirect.github.com/unstubbable) [#&#8203;34350](https://redirect.github.com/facebook/react/pull/34350))
- Make console log resolve in predictable order ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33665](https://redirect.github.com/facebook/react/pull/33665))

##### React Reconciler

- [createContainer](https://redirect.github.com/facebook/react/blob/v19.2.0/packages/react-reconciler/src/ReactFiberReconciler.js#L255-L261) and [createHydrationContainer](https://redirect.github.com/facebook/react/blob/v19.2.0/packages/react-reconciler/src/ReactFiberReconciler.js#L305-L312) had their parameter order adjusted after `on*` handlers to account for upcoming experimental APIs

### [`v19.2.0-canary-fa3feba6-20250623`](https://redirect.github.com/facebook/react/compare/f9ae0a4c2edc9ad93507b550f2aeb60119955336...fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd)

[Compare Source](https://redirect.github.com/facebook/react/compare/f9ae0a4c2edc9ad93507b550f2aeb60119955336...fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd)

### [`v19.2.0-canary-f9ae0a4c-20250527`](https://redirect.github.com/facebook/react/compare/f739642745577a8e4dcb9753836ac3589b9c590a...f9ae0a4c2edc9ad93507b550f2aeb60119955336)

[Compare Source](https://redirect.github.com/facebook/react/compare/f739642745577a8e4dcb9753836ac3589b9c590a...f9ae0a4c2edc9ad93507b550f2aeb60119955336)

### [`v19.2.0-canary-f7396427-20250501`](https://redirect.github.com/facebook/react/compare/f508edc83fa1eb316a974c274b4411f081d6e94d...f739642745577a8e4dcb9753836ac3589b9c590a)

[Compare Source](https://redirect.github.com/facebook/react/compare/f508edc83fa1eb316a974c274b4411f081d6e94d...f739642745577a8e4dcb9753836ac3589b9c590a)

### [`v19.2.0-canary-f508edc8-20250818`](https://redirect.github.com/facebook/react/compare/f3a803617ec4ba9d14bf5205ffece28ed1496a1d...f508edc83fa1eb316a974c274b4411f081d6e94d)

[Compare Source](https://redirect.github.com/facebook/react/compare/f3a803617ec4ba9d14bf5205ffece28ed1496a1d...f508edc83fa1eb316a974c274b4411f081d6e94d)

### [`v19.2.0-canary-f3a80361-20250911`](https://redirect.github.com/facebook/react/compare/f1e70b5e0aeffeba634f05a1524bf083f0340d5a...f3a803617ec4ba9d14bf5205ffece28ed1496a1d)

[Compare Source](https://redirect.github.com/facebook/react/compare/f1e70b5e0aeffeba634f05a1524bf083f0340d5a...f3a803617ec4ba9d14bf5205ffece28ed1496a1d)

### [`v19.2.0-canary-f1e70b5e-20250811`](https://redirect.github.com/facebook/react/compare/f1222f76521fa7645badaa0c972ad4b2b1dc0b78...f1e70b5e0aeffeba634f05a1524bf083f0340d5a)

[Compare Source](https://redirect.github.com/facebook/react/compare/f1222f76521fa7645badaa0c972ad4b2b1dc0b78...f1e70b5e0aeffeba634f05a1524bf083f0340d5a)

### [`v19.2.0-canary-f1222f76-20250812`](https://redirect.github.com/facebook/react/compare/ef8b6fa257aba6c4a07b5cdb152859704aa045bc...f1222f76521fa7645badaa0c972ad4b2b1dc0b78)

[Compare Source](https://redirect.github.com/facebook/react/compare/ef8b6fa257aba6c4a07b5cdb152859704aa045bc...f1222f76521fa7645badaa0c972ad4b2b1dc0b78)

### [`v19.2.0-canary-ef8b6fa2-20250702`](https://redirect.github.com/facebook/react/compare/ef8894452b826f905d69e61435c6f2c30731bfa6...ef8b6fa257aba6c4a07b5cdb152859704aa045bc)

[Compare Source](https://redirect.github.com/facebook/react/compare/ef8894452b826f905d69e61435c6f2c30731bfa6...ef8b6fa257aba6c4a07b5cdb152859704aa045bc)

### [`v19.2.0-canary-ef889445-20250930`](https://redirect.github.com/facebook/react/compare/edac0dded99d56e7d66a88da83e874761e3e937a...ef8894452b826f905d69e61435c6f2c30731bfa6)

[Compare Source](https://redirect.github.com/facebook/react/compare/edac0dded99d56e7d66a88da83e874761e3e937a...ef8894452b826f905d69e61435c6f2c30731bfa6)

### [`v19.2.0-canary-edac0dde-20250723`](https://redirect.github.com/facebook/react/compare/eaee5308cc68232c4380e62dc73f512b2c50ab96...edac0dded99d56e7d66a88da83e874761e3e937a)

[Compare Source](https://redirect.github.com/facebook/react/compare/eaee5308cc68232c4380e62dc73f512b2c50ab96...edac0dded99d56e7d66a88da83e874761e3e937a)

### [`v19.2.0-canary-eaee5308-20250728`](https://redirect.github.com/facebook/react/compare/ea05b750a5374458fc8c74ea0918059c818d1167...eaee5308cc68232c4380e62dc73f512b2c50ab96)

[Compare Source](https://redirect.github.com/facebook/react/compare/ea05b750a5374458fc8c74ea0918059c818d1167...eaee5308cc68232c4380e62dc73f512b2c50ab96)

### [`v19.2.0-canary-ea05b750-20250408`](https://redirect.github.com/facebook/react/compare/e9db3cc2d4175849578418a37f33a6fde5b3c6d8...ea05b750a5374458fc8c74ea0918059c818d1167)

[Compare Source](https://redirect.github.com/facebook/react/compare/e9db3cc2d4175849578418a37f33a6fde5b3c6d8...ea05b750a5374458fc8c74ea0918059c818d1167)

### [`v19.2.0-canary-e9db3cc2-20250501`](https://redirect.github.com/facebook/react/compare/e9638c33d7e79162516b89da31549af4090997a5...e9db3cc2d4175849578418a37f33a6fde5b3c6d8)

[Compare Source](https://redirect.github.com/facebook/react/compare/e9638c33d7e79162516b89da31549af4090997a5...e9db3cc2d4175849578418a37f33a6fde5b3c6d8)

### [`v19.2.0-canary-e9638c33-20250721`](https://redirect.github.com/facebook/react/compare/e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82...e9638c33d7e79162516b89da31549af4090997a5)

[Compare Source](https://redirect.github.com/facebook/react/compare/e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82...e9638c33d7e79162516b89da31549af4090997a5)

### [`v19.2.0-canary-e6dc25da-20250709`](https://redirect.github.com/facebook/react/compare/e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371...e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82)

[Compare Source](https://redirect.github.com/facebook/react/compare/e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371...e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82)

### [`v19.2.0-canary-e5dd82a7-20250401`](https://redirect.github.com/facebook/react/compare/e2332183591ff3a5657c3322a21bcdcccae32088...e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371)

[Compare Source](https://redirect.github.com/facebook/react/compare/e2332183591ff3a5657c3322a21bcdcccae32088...e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371)

### [`v19.2.0-canary-e2332183-20250924`](https://redirect.github.com/facebook/react/compare/dffacc7b8094576c19790fe8341996f743ba4a89...e2332183591ff3a5657c3322a21bcdcccae32088)

[Compare Source](https://redirect.github.com/facebook/react/compare/dffacc7b8094576c19790fe8341996f743ba4a89...e2332183591ff3a5657c3322a21bcdcccae32088)

### [`v19.2.0-canary-dffacc7b-20250717`](https://redirect.github.com/facebook/react/compare/df38ac9a3b9a5ea43c1d07c00d090a448acfd56c...dffacc7b8094576c19790fe8341996f743ba4a89)

[Compare Source](https://redirect.github.com/facebook/react/compare/df38ac9a3b9a5ea43c1d07c00d090a448acfd56c...dffacc7b8094576c19790fe8341996f743ba4a89)

### [`v19.2.0-canary-df38ac9a-20250926`](https://redirect.github.com/facebook/react/compare/de5a1b203e342e7f5d64216d68d8d49e709660e3...df38ac9a3b9a5ea43c1d07c00d090a448acfd56c)

[Compare Source](https://redirect.github.com/facebook/react/compare/de5a1b203e342e7f5d64216d68d8d49e709660e3...df38ac9a3b9a5ea43c1d07c00d090a448acfd56c)

### [`v19.2.0-canary-de5a1b20-20250905`](https://redirect.github.com/facebook/react/compare/d92056efb3dc7f1f5579934ea46132a658d418f4...de5a1b203e342e7f5d64216d68d8d49e709660e3)

[Compare Source](https://redirect.github.com/facebook/react/compare/d92056efb3dc7f1f5579934ea46132a658d418f4...de5a1b203e342e7f5d64216d68d8d49e709660e3)

### [`v19.2.0-canary-d92056ef-20250627`](https://redirect.github.com/facebook/react/compare/d85f86cf017151bcf5908d593c3899d876656a01...d92056efb3dc7f1f5579934ea46132a658d418f4)

[Compare Source](https://redirect.github.com/facebook/react/compare/d85f86cf017151bcf5908d593c3899d876656a01...d92056efb3dc7f1f5579934ea46132a658d418f4)

### [`v19.2.0-canary-d85f86cf-20250514`](https://redirect.github.com/facebook/react/compare/d85ec5f5bd778d09214e3429e7fd043c4a152242...d85f86cf017151bcf5908d593c3899d876656a01)

[Compare Source](https://redirect.github.com/facebook/react/compare/d85ec5f5bd778d09214e3429e7fd043c4a152242...d85f86cf017151bcf5908d593c3899d876656a01)

### [`v19.2.0-canary-d85ec5f5-20250716`](https://redirect.github.com/facebook/react/compare/d415fd3ed716f02f463232341ab21e909e0058ca...d85ec5f5bd778d09214e3429e7fd043c4a152242)

[Compare Source](https://redirect.github.com/facebook/react/compare/d415fd3ed716f02f463232341ab21e909e0058ca...d85ec5f5bd778d09214e3429e7fd043c4a152242)

</details>

<details>
<summary>facebook/react (react-dom)</summary>

### [`v19.3.0-canary-4fdf7cf2-20251003`](https://redirect.github.com/facebook/react/compare/v19.2.0...4fdf7cf249ecb205d20b65b5208d113ea664cb9a)

[Compare Source](https://redirect.github.com/facebook/react/compare/v19.2.0...4fdf7cf249ecb205d20b65b5208d113ea664cb9a)

### [`v19.2.0`](https://redirect.github.com/facebook/react/blob/HEAD/CHANGELOG.md#1920-October-1st-2025)

[Compare Source](https://redirect.github.com/facebook/react/compare/fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd...v19.2.0)

Below is a list of all new features, APIs, and bug fixes.

Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information.

##### New React Features

- [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children.
- [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event).
- [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over.
- [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools

##### New React DOM Features

- Added resume APIs for partial pre-rendering with Web Streams:
  - [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream.
  - [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML.
- Added resume APIs for partial pre-rendering with Node Streams:
  - [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream.
  - [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML.
- Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs.

##### Notable changes

- React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics.
- Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js
- Use underscore instead of `:` IDs generated by useId

##### All Changes

##### React

- `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([@&#8203;acdlite](https://redirect.github.com/acdlite) [@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) and many others)
- Stringify context as "SomeContext" instead of "SomeContext.Provider" ([@&#8203;kassens](https://redirect.github.com/kassens) [#&#8203;33507](https://redirect.github.com/facebook/react/pull/33507))
- Include stack of cause of React instrumentation errors with `%o` placeholder ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;34198](https://redirect.github.com/facebook/react/pull/34198))
- Fix infinite `useDeferredValue` loop in popstate event ([@&#8203;acdlite](https://redirect.github.com/acdlite) [#&#8203;32821](https://redirect.github.com/facebook/react/pull/32821))
- Fix a bug when an initial value was passed to `useDeferredValue` ([@&#8203;acdlite](https://redirect.github.com/acdlite) [#&#8203;34376](https://redirect.github.com/facebook/react/pull/34376))
- Fix a crash when submitting forms with Client Actions ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33055](https://redirect.github.com/facebook/react/pull/33055))
- Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;32900](https://redirect.github.com/facebook/react/pull/32900))
- Avoid stack overflow on wide trees during Hot Reload ([@&#8203;sophiebits](https://redirect.github.com/sophiebits) [#&#8203;34145](https://redirect.github.com/facebook/react/pull/34145))
- Improve Owner and Component stacks in various places ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage), [@&#8203;eps1lon](https://redirect.github.com/eps1lon): [#&#8203;33629](https://redirect.github.com/facebook/react/pull/33629), [#&#8203;33724](https://redirect.github.com/facebook/react/pull/33724), [#&#8203;32735](https://redirect.github.com/facebook/react/pull/32735), [#&#8203;33723](https://redirect.github.com/facebook/react/pull/33723))
- Add `cacheSignal` ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33557](https://redirect.github.com/facebook/react/pull/33557))

##### React DOM

- Block on Suspensey Fonts during reveal of server-side-rendered content ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33342](https://redirect.github.com/facebook/react/pull/33342))
- Use underscore instead of `:` for IDs generated by `useId` ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage), [@&#8203;eps1lon](https://redirect.github.com/eps1lon): [#&#8203;32001](https://redirect.github.com/facebook/react/pull/32001), [#&#8203;33342](https://redirect.github.com/facebook/react/pull/33342)[#&#8203;33099](https://redirect.github.com/facebook/react/pull/33099), [#&#8203;33422](https://redirect.github.com/facebook/react/pull/33422))
- Stop warning when ARIA 1.3 attributes are used ([@&#8203;Abdul-Omira](https://redirect.github.com/Abdul-Omira) [#&#8203;34264](https://redirect.github.com/facebook/react/pull/34264))
- Allow `nonce` to be used on hoistable styles ([@&#8203;Andarist](https://redirect.github.com/Andarist) [#&#8203;32461](https://redirect.github.com/facebook/react/pull/32461))
- Warn for using a React owned node as a Container if it also has text content ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;32774](https://redirect.github.com/facebook/react/pull/32774))
- s/HTML/text for for error messages if text hydration mismatches ([@&#8203;rickhanlonii](https://redirect.github.com/rickhanlonii) [#&#8203;32763](https://redirect.github.com/facebook/react/pull/32763))
- Fix a bug with `React.use` inside `React.lazy`-ed Component ([@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) [#&#8203;33941](https://redirect.github.com/facebook/react/pull/33941))
- Enable the `progressiveChunkSize` option for server-side-rendering APIs ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33027](https://redirect.github.com/facebook/react/pull/33027))
- Fix a bug with deeply nested Suspense inside Suspense fallback when server-side-rendering ([@&#8203;gnoff](https://redirect.github.com/gnoff) [#&#8203;33467](https://redirect.github.com/facebook/react/pull/33467))
- Avoid hanging when suspending after aborting while rendering ([@&#8203;gnoff](https://redirect.github.com/gnoff) [#&#8203;34192](https://redirect.github.com/facebook/react/pull/34192))
- Add Node Web Streams to server-side-rendering APIs for Node.js ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33475](https://redirect.github.com/facebook/react/pull/33475))

##### React Server Components

- Preload `<img>` and `<link>` using hints before they're rendered ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;34604](https://redirect.github.com/facebook/react/pull/34604))
- Log error if production elements are rendered during development ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;34189](https://redirect.github.com/facebook/react/pull/34189))
- Fix a bug when returning a Temporary reference (e.g. a Client Reference) from Server Functions ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;34084](https://redirect.github.com/facebook/react/pull/34084), [@&#8203;denk0403](https://redirect.github.com/denk0403) [#&#8203;33761](https://redirect.github.com/facebook/react/pull/33761))
- Pass line/column to `filterStackFrame` ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;33707](https://redirect.github.com/facebook/react/pull/33707))
- Support Async Modules in Turbopack Server References ([@&#8203;lubieowoce](https://redirect.github.com/lubieowoce) [#&#8203;34531](https://redirect.github.com/facebook/react/pull/34531))
- Add support for .mjs file extension in Webpack ([@&#8203;jennyscript](https://redirect.github.com/jennyscript) [#&#8203;33028](https://redirect.github.com/facebook/react/pull/33028))
- Fix a wrong missing key warning ([@&#8203;unstubbable](https://redirect.github.com/unstubbable) [#&#8203;34350](https://redirect.github.com/facebook/react/pull/34350))
- Make console log resolve in predictable order ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33665](https://redirect.github.com/facebook/react/pull/33665))

##### React Reconciler

- [createContainer](https://redirect.github.com/facebook/react/blob/v19.2.0/packages/react-reconciler/src/ReactFiberReconciler.js#L255-L261) and [createHydrationContainer](https://redirect.github.com/facebook/react/blob/v19.2.0/packages/react-reconciler/src/ReactFiberReconciler.js#L305-L312) had their parameter order adjusted after `on*` handlers to account for upcoming experimental APIs

### [`v19.2.0-canary-fa3feba6-20250623`](https://redirect.github.com/facebook/react/compare/f9ae0a4c2edc9ad93507b550f2aeb60119955336...fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd)

[Compare Source](https://redirect.github.com/facebook/react/compare/f9ae0a4c2edc9ad93507b550f2aeb60119955336...fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd)

### [`v19.2.0-canary-f9ae0a4c-20250527`](https://redirect.github.com/facebook/react/compare/f739642745577a8e4dcb9753836ac3589b9c590a...f9ae0a4c2edc9ad93507b550f2aeb60119955336)

[Compare Source](https://redirect.github.com/facebook/react/compare/f739642745577a8e4dcb9753836ac3589b9c590a...f9ae0a4c2edc9ad93507b550f2aeb60119955336)

### [`v19.2.0-canary-f7396427-20250501`](https://redirect.github.com/facebook/react/compare/f508edc83fa1eb316a974c274b4411f081d6e94d...f739642745577a8e4dcb9753836ac3589b9c590a)

[Compare Source](https://redirect.github.com/facebook/react/compare/f508edc83fa1eb316a974c274b4411f081d6e94d...f739642745577a8e4dcb9753836ac3589b9c590a)

### [`v19.2.0-canary-f508edc8-20250818`](https://redirect.github.com/facebook/react/compare/f3a803617ec4ba9d14bf5205ffece28ed1496a1d...f508edc83fa1eb316a974c274b4411f081d6e94d)

[Compare Source](https://redirect.github.com/facebook/react/compare/f3a803617ec4ba9d14bf5205ffece28ed1496a1d...f508edc83fa1eb316a974c274b4411f081d6e94d)

### [`v19.2.0-canary-f3a80361-20250911`](https://redirect.github.com/facebook/react/compare/f1e70b5e0aeffeba634f05a1524bf083f0340d5a...f3a803617ec4ba9d14bf5205ffece28ed1496a1d)

[Compare Source](https://redirect.github.com/facebook/react/compare/f1e70b5e0aeffeba634f05a1524bf083f0340d5a...f3a803617ec4ba9d14bf5205ffece28ed1496a1d)

### [`v19.2.0-canary-f1e70b5e-20250811`](https://redirect.github.com/facebook/react/compare/f1222f76521fa7645badaa0c972ad4b2b1dc0b78...f1e70b5e0aeffeba634f05a1524bf083f0340d5a)

[Compare Source](https://redirect.github.com/facebook/react/compare/f1222f76521fa7645badaa0c972ad4b2b1dc0b78...f1e70b5e0aeffeba634f05a1524bf083f0340d5a)

### [`v19.2.0-canary-f1222f76-20250812`](https://redirect.github.com/facebook/react/compare/ef8b6fa257aba6c4a07b5cdb152859704aa045bc...f1222f76521fa7645badaa0c972ad4b2b1dc0b78)

[Compare Source](https://redirect.github.com/facebook/react/compare/ef8b6fa257aba6c4a07b5cdb152859704aa045bc...f1222f76521fa7645badaa0c972ad4b2b1dc0b78)

### [`v19.2.0-canary-ef8b6fa2-20250702`](https://redirect.github.com/facebook/react/compare/ef8894452b826f905d69e61435c6f2c30731bfa6...ef8b6fa257aba6c4a07b5cdb152859704aa045bc)

[Compare Source](https://redirect.github.com/facebook/react/compare/ef8894452b826f905d69e61435c6f2c30731bfa6...ef8b6fa257aba6c4a07b5cdb152859704aa045bc)

### [`v19.2.0-canary-ef889445-20250930`](https://redirect.github.com/facebook/react/compare/edac0dded99d56e7d66a88da83e874761e3e937a...ef8894452b826f905d69e61435c6f2c30731bfa6)

[Compare Source](https://redirect.github.com/facebook/react/compare/edac0dded99d56e7d66a88da83e874761e3e937a...ef8894452b826f905d69e61435c6f2c30731bfa6)

### [`v19.2.0-canary-edac0dde-20250723`](https://redirect.github.com/facebook/react/compare/eaee5308cc68232c4380e62dc73f512b2c50ab96...edac0dded99d56e7d66a88da83e874761e3e937a)

[Compare Source](https://redirect.github.com/facebook/react/compare/eaee5308cc68232c4380e62dc73f512b2c50ab96...edac0dded99d56e7d66a88da83e874761e3e937a)

### [`v19.2.0-canary-eaee5308-20250728`](https://redirect.github.com/facebook/react/compare/ea05b750a5374458fc8c74ea0918059c818d1167...eaee5308cc68232c4380e62dc73f512b2c50ab96)

[Compare Source](https://redirect.github.com/facebook/react/compare/ea05b750a5374458fc8c74ea0918059c818d1167...eaee5308cc68232c4380e62dc73f512b2c50ab96)

### [`v19.2.0-canary-ea05b750-20250408`](https://redirect.github.com/facebook/react/compare/e9db3cc2d4175849578418a37f33a6fde5b3c6d8...ea05b750a5374458fc8c74ea0918059c818d1167)

[Compare Source](https://redirect.github.com/facebook/react/compare/e9db3cc2d4175849578418a37f33a6fde5b3c6d8...ea05b750a5374458fc8c74ea0918059c818d1167)

### [`v19.2.0-canary-e9db3cc2-20250501`](https://redirect.github.com/facebook/react/compare/e9638c33d7e79162516b89da31549af4090997a5...e9db3cc2d4175849578418a37f33a6fde5b3c6d8)

[Compare Source](https://redirect.github.com/facebook/react/compare/e9638c33d7e79162516b89da31549af4090997a5...e9db3cc2d4175849578418a37f33a6fde5b3c6d8)

### [`v19.2.0-canary-e9638c33-20250721`](https://redirect.github.com/facebook/react/compare/e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82...e9638c33d7e79162516b89da31549af4090997a5)

[Compare Source](https://redirect.github.com/facebook/react/compare/e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82...e9638c33d7e79162516b89da31549af4090997a5)

### [`v19.2.0-canary-e6dc25da-20250709`](https://redirect.github.com/facebook/react/compare/e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371...e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82)

[Compare Source](https://redirect.github.com/facebook/react/compare/e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371...e6dc25daea3d949fa5eae3bdffb8b6b79e30fc82)

### [`v19.2.0-canary-e5dd82a7-20250401`](https://redirect.github.com/facebook/react/compare/e2332183591ff3a5657c3322a21bcdcccae32088...e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371)

[Compare Source](https://redirect.github.com/facebook/react/compare/e2332183591ff3a5657c3322a21bcdcccae32088...e5dd82a79dd41c9df8d903ca7ab7b3a977bc3371)

### [`v19.2.0-canary-e2332183-20250924`](https://redirect.github.com/facebook/react/compare/dffacc7b8094576c19790fe8341996f743ba4a89...e2332183591ff3a5657c3322a21bcdcccae32088)

[Compare Source](https://redirect.github.com/facebook/react/compare/dffacc7b8094576c19790fe8341996f743ba4a89...e2332183591ff3a5657c3322a21bcdcccae32088)

### [`v19.2.0-canary-dffacc7b-20250717`](https://redirect.github.com/facebook/react/compare/df38ac9a3b9a5ea43c1d07c00d090a448acfd56c...dffacc7b8094576c19790fe8341996f743ba4a89)

[Compare Source](https://redirect.github.com/facebook/react/compare/df38ac9a3b9a5ea43c1d07c00d090a448acfd56c...dffacc7b8094576c19790fe8341996f743ba4a89)

### [`v19.2.0-canary-df38ac9a-20250926`](https://redirect.github.com/facebook/react/compare/de5a1b203e342e7f5d64216d68d8d49e709660e3...df38ac9a3b9a5ea43c1d07c00d090a448acfd56c)

[Compare Source](https://redirect.github.com/facebook/react/compare/de5a1b203e342e7f5d64216d68d8d49e709660e3...df38ac9a3b9a5ea43c1d07c00d090a448acfd56c)

### [`v19.2.0-canary-de5a1b20-20250905`](https://redirect.github.com/facebook/react/compare/d92056efb3dc7f1f5579934ea46132a658d418f4...de5a1b203e342e7f5d64216d68d8d49e709660e3)

[Compare Source](https://redirect.github.com/facebook/react/compare/d92056efb3dc7f1f5579934ea46132a658d418f4...de5a1b203e342e7f5d64216d68d8d49e709660e3)

### [`v19.2.0-canary-d92056ef-20250627`](https://redirect.github.com/facebook/react/compare/d85f86cf017151bcf5908d593c3899d876656a01...d92056efb3dc7f1f5579934ea46132a658d418f4)

[Compare Source](https://redirect.github.com/facebook/react/compare/d85f86cf017151bcf5908d593c3899d876656a01...d92056efb3dc7f1f5579934ea46132a658d418f4)

### [`v19.2.0-canary-d85f86cf-20250514`](https://redirect.github.com/facebook/react/compare/d85ec5f5bd778d09214e3429e7fd043c4a152242...d85f86cf017151bcf5908d593c3899d876656a01)

[Compare Source](https://redirect.github.com/facebook/react/compare/d85ec5f5bd778d09214e3429e7fd043c4a152242...d85f86cf017151bcf5908d593c3899d876656a01)

### [`v19.2.0-canary-d85ec5f5-20250716`](https://redirect.github.com/facebook/react/compare/d415fd3ed716f02f463232341ab21e909e0058ca...d85ec5f5bd778d09214e3429e7fd043c4a152242)

[Compare Source](https://redirect.github.com/facebook/react/compare/d415fd3ed716f02f463232341ab21e909e0058ca...d85ec5f5bd778d09214e3429e7fd043c4a152242)

</details>

<details>
<summary>facebook/react (react-server-dom-webpack)</summary>

### [`v19.3.0-canary-4fdf7cf2-20251003`](https://redirect.github.com/facebook/react/compare/v19.2.0...4fdf7cf249ecb205d20b65b5208d113ea664cb9a)

[Compare Source](https://redirect.github.com/facebook/react/compare/v19.2.0...4fdf7cf249ecb205d20b65b5208d113ea664cb9a)

### [`v19.2.0`](https://redirect.github.com/facebook/react/blob/HEAD/CHANGELOG.md#1920-October-1st-2025)

[Compare Source](https://redirect.github.com/facebook/react/compare/fa3feba6720c96ca10fb42d5f53a9b4fa9aa6ccd...v19.2.0)

Below is a list of all new features, APIs, and bug fixes.

Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information.

##### New React Features

- [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children.
- [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event).
- [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over.
- [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools

##### New React DOM Features

- Added resume APIs for partial pre-rendering with Web Streams:
  - [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream.
  - [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML.
- Added resume APIs for partial pre-rendering with Node Streams:
  - [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream.
  - [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML.
- Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs.

##### Notable changes

- React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics.
- Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js
- Use underscore instead of `:` IDs generated by useId

##### All Changes

##### React

- `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([@&#8203;acdlite](https://redirect.github.com/acdlite) [@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) and many others)
- Stringify context as "SomeContext" instead of "SomeContext.Provider" ([@&#8203;kassens](https://redirect.github.com/kassens) [#&#8203;33507](https://redirect.github.com/facebook/react/pull/33507))
- Include stack of cause of React instrumentation errors with `%o` placeholder ([@&#8203;eps1lon](https://redirect.github.com/eps1lon) [#&#8203;34198](https://redirect.github.com/facebook/react/pull/34198))
- Fix infinite `useDeferredValue` loop in popstate event ([@&#8203;acdlite](https://redirect.github.com/acdlite) [#&#8203;32821](https://redirect.github.com/facebook/react/pull/32821))
- Fix a bug when an initial value was passed to `useDeferredValue` ([@&#8203;acdlite](https://redirect.github.com/acdlite) [#&#8203;34376](https://redirect.github.com/facebook/react/pull/34376))
- Fix a crash when submitting forms with Client Actions ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33055](https://redirect.github.com/facebook/react/pull/33055))
- Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;32900](https://redirect.github.com/facebook/react/pull/32900))
- Avoid stack overflow on wide trees during Hot Reload ([@&#8203;sophiebits](https://redirect.github.com/sophiebits) [#&#8203;34145](https://redirect.github.com/facebook/react/pull/34145))
- Improve Owner and Component stacks in various places ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage), [@&#8203;eps1lon](https://redirect.github.com/eps1lon): [#&#8203;33629](https://redirect.github.com/facebook/react/pull/33629), [#&#8203;33724](https://redirect.github.com/facebook/react/pull/33724), [#&#8203;32735](https://redirect.github.com/facebook/react/pull/32735), [#&#8203;33723](https://redirect.github.com/facebook/react/pull/33723))
- Add `cacheSignal` ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33557](https://redirect.github.com/facebook/react/pull/33557))

##### React DOM

- Block on Suspensey Fonts during reveal of server-side-rendered content ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage) [#&#8203;33342](https://redirect.github.com/facebook/react/pull/33342))
- Use underscore instead of `:` for IDs generated by `useId` ([@&#8203;sebmarkbage](https://redirect.github.com/sebmarkbage), [@&#8203;eps1lon](https://redirect.github.com/eps1lon): [#&#8203;32

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/redwoodjs/sdk).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages bot commented Nov 4, 2025

Deploying redwood-sdk-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 6b2132a
Status: ✅  Deploy successful!
Preview URL: https://539de3c8.redwood-sdk-docs.pages.dev
Branch Preview URL: https://storybook.redwood-sdk-docs.pages.dev

View logs

@justinvdm justinvdm marked this pull request as draft November 4, 2025 05:01
@justinvdm justinvdm marked this pull request as ready for review November 4, 2025 15:34
@justinvdm justinvdm merged commit 6fbfe11 into main Nov 4, 2025
6 checks passed
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.

3 participants