From 2a27074cb36afc4841de8c19d730d244ffc3d2f3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 17:29:18 +0000 Subject: [PATCH] chore: Update version for release (pre) --- .changeset/pre.json | 32 ++++++- packages/create-react-router/CHANGELOG.md | 2 + packages/create-react-router/package.json | 2 +- packages/react-router-architect/CHANGELOG.md | 8 ++ packages/react-router-architect/package.json | 2 +- packages/react-router-cloudflare/CHANGELOG.md | 7 ++ packages/react-router-cloudflare/package.json | 2 +- packages/react-router-dev/CHANGELOG.md | 84 +++++++++++++++++++ packages/react-router-dev/package.json | 2 +- packages/react-router-dom/CHANGELOG.md | 7 ++ packages/react-router-dom/package.json | 2 +- packages/react-router-express/CHANGELOG.md | 8 ++ packages/react-router-express/package.json | 2 +- packages/react-router-fs-routes/CHANGELOG.md | 7 ++ packages/react-router-fs-routes/package.json | 2 +- packages/react-router-node/CHANGELOG.md | 7 ++ packages/react-router-node/package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- packages/react-router-serve/CHANGELOG.md | 9 ++ packages/react-router-serve/package.json | 2 +- packages/react-router/CHANGELOG.md | 57 +++++++++++++ packages/react-router/package.json | 2 +- 23 files changed, 245 insertions(+), 12 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 93b204f22d..5f0e1b3001 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -28,5 +28,35 @@ "@playground/split-route-modules-spa": "0.0.0", "@playground/vite-plugin-cloudflare": "0.0.0" }, - "changesets": [] + "changesets": [ + "afraid-games-rush", + "angry-students-pay", + "breezy-pets-hug", + "bright-experts-grab", + "cold-seals-count", + "curvy-lobsters-accept", + "curvy-queens-hug", + "dirty-balloons-stare", + "eighty-mangos-move", + "fast-planets-matter", + "forty-ants-teach", + "healthy-readers-kick", + "large-lobsters-grin", + "late-hats-yell", + "little-cups-deliver", + "ninety-snails-shout", + "odd-tools-work", + "pink-candles-allow", + "proud-needles-destroy", + "rude-cobras-warn", + "silly-ligers-dress", + "six-squids-tickle", + "sour-eggs-give", + "stupid-kiwis-laugh", + "ten-pears-wash", + "thirty-bugs-jump", + "tough-dancers-own", + "twenty-snakes-love", + "witty-brooms-work" + ] } diff --git a/packages/create-react-router/CHANGELOG.md b/packages/create-react-router/CHANGELOG.md index f60efec0a6..c40662e56d 100644 --- a/packages/create-react-router/CHANGELOG.md +++ b/packages/create-react-router/CHANGELOG.md @@ -1,5 +1,7 @@ # `create-react-router` +## 7.6.0-pre.0 + ## 7.5.3 _No changes_ diff --git a/packages/create-react-router/package.json b/packages/create-react-router/package.json index 7ee3f48939..1553709e11 100644 --- a/packages/create-react-router/package.json +++ b/packages/create-react-router/package.json @@ -1,6 +1,6 @@ { "name": "create-react-router", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Create a new React Router app", "homepage": "https://reactrouter.com", "bugs": { diff --git a/packages/react-router-architect/CHANGELOG.md b/packages/react-router-architect/CHANGELOG.md index 62c3f93227..b81ac23fb0 100644 --- a/packages/react-router-architect/CHANGELOG.md +++ b/packages/react-router-architect/CHANGELOG.md @@ -1,5 +1,13 @@ # `@react-router/architect` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + - `@react-router/node@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-architect/package.json b/packages/react-router-architect/package.json index 2c3b0c6241..b4efc9d225 100644 --- a/packages/react-router-architect/package.json +++ b/packages/react-router-architect/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/architect", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Architect server request handler for React Router", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router-cloudflare/CHANGELOG.md b/packages/react-router-cloudflare/CHANGELOG.md index 9d00dc827f..1c36447865 100644 --- a/packages/react-router-cloudflare/CHANGELOG.md +++ b/packages/react-router-cloudflare/CHANGELOG.md @@ -1,5 +1,12 @@ # `@react-router/cloudflare` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-cloudflare/package.json b/packages/react-router-cloudflare/package.json index 56909f2e74..d44b21bf42 100644 --- a/packages/react-router-cloudflare/package.json +++ b/packages/react-router-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/cloudflare", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Cloudflare platform abstractions for React Router", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router-dev/CHANGELOG.md b/packages/react-router-dev/CHANGELOG.md index 875b0059e9..8f65e63d20 100644 --- a/packages/react-router-dev/CHANGELOG.md +++ b/packages/react-router-dev/CHANGELOG.md @@ -1,5 +1,89 @@ # `@react-router/dev` +## 7.6.0-pre.0 + +### Minor Changes + +- Added a new `react-router.config.ts` `routeDiscovery` option to configure Lazy Route Discovery behavior. ([#13451](https://github.com/remix-run/react-router/pull/13451)) + + - By default, Lazy Route Discovery is enabled and makes manifest requests to the `/__manifest` path: + - `routeDiscovery: { mode: "lazy", manifestPath: "/__manifest" }` + - You can modify the manifest path used: + - `routeDiscovery: { mode: "lazy", manifestPath: "/custom-manifest" }` + - Or you can disable this feature entirely and include all routes in the manifest on initial document load: + - `routeDiscovery: { mode: "initial" }` + +- Automatic types for future flags ([#13506](https://github.com/remix-run/react-router/pull/13506)) + + Some future flags alter the way types should work in React Router. + Previously, you had to remember to manually opt-in to the new types. + + For example, for `unstable_middleware`: + + ```ts + // react-router.config.ts + + // Step 1: Enable middleware + export default { + future: { + unstable_middleware: true, + }, + }; + + // Step 2: Enable middleware types + declare module "react-router" { + interface Future { + unstable_middleware: true; // 👈 Enable middleware types + } + } + ``` + + It was up to you to keep the runtime future flags synced with the types for those future flags. + This was confusing and error-prone. + + Now, React Router will automatically enable types for future flags. + That means you only need to specify the runtime future flag: + + ```ts + // react-router.config.ts + + // Step 1: Enable middleware + export default { + future: { + unstable_middleware: true, + }, + }; + + // No step 2! That's it! + ``` + + Behind the scenes, React Router will generate the corresponding `declare module` into `.react-router/types`. + Currently this is done in `.react-router/types/+register.ts` but this is an implementation detail that may change in the future. + +### Patch Changes + +- Support project root directories without a `package.json` if it exists in a parent directory ([#13472](https://github.com/remix-run/react-router/pull/13472)) +- When providing a custom Vite config path via the CLI `--config`/`-c` flag, default the project root directory to the directory containing the Vite config when not explicitly provided ([#13472](https://github.com/remix-run/react-router/pull/13472)) +- In a `routes.ts` context, ensure the `--mode` flag is respected for `import.meta.env.MODE` ([#13485](https://github.com/remix-run/react-router/pull/13485)) + + Previously, `import.meta.env.MODE` within a `routes.ts` context was always `"development"` for the `dev` and `typegen --watch` commands, but otherwise resolved to `"production"`. These defaults are still in place, but if a `--mode` flag is provided, this will now take precedence. + +- Ensure consistent project root directory resolution logic in CLI commands ([#13472](https://github.com/remix-run/react-router/pull/13472)) +- When executing `react-router.config.ts` and `routes.ts` with `vite-node`, ensure that PostCSS config files are ignored ([#13489](https://github.com/remix-run/react-router/pull/13489)) +- When extracting critical CSS during development, ensure it's loaded from the client environment to avoid issues with plugins that handle the SSR environment differently ([#13503](https://github.com/remix-run/react-router/pull/13503)) +- When `future.unstable_viteEnvironmentApi` is enabled, ensure that `build.assetsDir` in Vite config is respected when `environments.client.build.assetsDir` is not configured ([#13491](https://github.com/remix-run/react-router/pull/13491)) +- Fix "Status message is not supported by HTTP/2" error during dev when using HTTPS ([#13460](https://github.com/remix-run/react-router/pull/13460)) +- Update config when `react-router.config.ts` is created or deleted during development. ([#12319](https://github.com/remix-run/react-router/pull/12319)) +- Skip unnecessary `routes.ts` evaluation before Vite build is started ([#13513](https://github.com/remix-run/react-router/pull/13513)) +- Fix `TS2300: Duplicate identifier` errors caused by generated types ([#13499](https://github.com/remix-run/react-router/pull/13499)) + + Previously, routes that had the same full path would cause duplicate entries in the generated types for `href` (`.react-router/types/+register.ts`), causing type checking errors. + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + - `@react-router/node@7.6.0-pre.0` + - `@react-router/serve@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-dev/package.json b/packages/react-router-dev/package.json index 444e31748a..336d6e10fe 100644 --- a/packages/react-router-dev/package.json +++ b/packages/react-router-dev/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/dev", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Dev tools and CLI for React Router", "homepage": "https://reactrouter.com", "bugs": { diff --git a/packages/react-router-dom/CHANGELOG.md b/packages/react-router-dom/CHANGELOG.md index 2d946d2aa7..562cba0382 100644 --- a/packages/react-router-dom/CHANGELOG.md +++ b/packages/react-router-dom/CHANGELOG.md @@ -1,5 +1,12 @@ # react-router-dom +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-dom/package.json b/packages/react-router-dom/package.json index ccb072d942..f45deae729 100644 --- a/packages/react-router-dom/package.json +++ b/packages/react-router-dom/package.json @@ -1,6 +1,6 @@ { "name": "react-router-dom", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Declarative routing for React web applications", "keywords": [ "react", diff --git a/packages/react-router-express/CHANGELOG.md b/packages/react-router-express/CHANGELOG.md index 255b5217e4..ebe7a2d7f5 100644 --- a/packages/react-router-express/CHANGELOG.md +++ b/packages/react-router-express/CHANGELOG.md @@ -1,5 +1,13 @@ # `@react-router/express` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + - `@react-router/node@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-express/package.json b/packages/react-router-express/package.json index 95584c1efe..fcd99dca3a 100644 --- a/packages/react-router-express/package.json +++ b/packages/react-router-express/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/express", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Express server request handler for React Router", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router-fs-routes/CHANGELOG.md b/packages/react-router-fs-routes/CHANGELOG.md index b0c9a26957..60a8315d4e 100644 --- a/packages/react-router-fs-routes/CHANGELOG.md +++ b/packages/react-router-fs-routes/CHANGELOG.md @@ -1,5 +1,12 @@ # `@react-router/fs-routes` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `@react-router/dev@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-fs-routes/package.json b/packages/react-router-fs-routes/package.json index 1006fe00b9..e992b5306e 100644 --- a/packages/react-router-fs-routes/package.json +++ b/packages/react-router-fs-routes/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/fs-routes", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "File system routing conventions for React Router, for use within routes.ts", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router-node/CHANGELOG.md b/packages/react-router-node/CHANGELOG.md index 735cb8addf..644e7783b4 100644 --- a/packages/react-router-node/CHANGELOG.md +++ b/packages/react-router-node/CHANGELOG.md @@ -1,5 +1,12 @@ # `@react-router/node` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-node/package.json b/packages/react-router-node/package.json index 41fc9fbba3..ed879b301b 100644 --- a/packages/react-router-node/package.json +++ b/packages/react-router-node/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/node", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Node.js platform abstractions for React Router", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router-remix-routes-option-adapter/CHANGELOG.md b/packages/react-router-remix-routes-option-adapter/CHANGELOG.md index e222d94829..531e42111f 100644 --- a/packages/react-router-remix-routes-option-adapter/CHANGELOG.md +++ b/packages/react-router-remix-routes-option-adapter/CHANGELOG.md @@ -1,5 +1,12 @@ # `@react-router/remix-config-routes-adapter` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `@react-router/dev@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-remix-routes-option-adapter/package.json b/packages/react-router-remix-routes-option-adapter/package.json index eb46152db8..0b1442fc0b 100644 --- a/packages/react-router-remix-routes-option-adapter/package.json +++ b/packages/react-router-remix-routes-option-adapter/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/remix-routes-option-adapter", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Adapter for Remix's \"routes\" config option, for use within routes.ts", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router-serve/CHANGELOG.md b/packages/react-router-serve/CHANGELOG.md index 64a4ef30e1..7c11cb3b98 100644 --- a/packages/react-router-serve/CHANGELOG.md +++ b/packages/react-router-serve/CHANGELOG.md @@ -1,5 +1,14 @@ # `@react-router/serve` +## 7.6.0-pre.0 + +### Patch Changes + +- Updated dependencies: + - `react-router@7.6.0-pre.0` + - `@react-router/node@7.6.0-pre.0` + - `@react-router/express@7.6.0-pre.0` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router-serve/package.json b/packages/react-router-serve/package.json index 401a5fb3e9..a5f16e6ec3 100644 --- a/packages/react-router-serve/package.json +++ b/packages/react-router-serve/package.json @@ -1,6 +1,6 @@ { "name": "@react-router/serve", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Production application server for React Router", "bugs": { "url": "https://github.com/remix-run/react-router/issues" diff --git a/packages/react-router/CHANGELOG.md b/packages/react-router/CHANGELOG.md index 939f41a92b..515d090c73 100644 --- a/packages/react-router/CHANGELOG.md +++ b/packages/react-router/CHANGELOG.md @@ -1,5 +1,62 @@ # `react-router` +## 7.6.0-pre.0 + +### Minor Changes + +- Added a new `react-router.config.ts` `routeDiscovery` option to configure Lazy Route Discovery behavior. ([#13451](https://github.com/remix-run/react-router/pull/13451)) + + - By default, Lazy Route Discovery is enabled and makes manifest requests to the `/__manifest` path: + - `routeDiscovery: { mode: "lazy", manifestPath: "/__manifest" }` + - You can modify the manifest path used: + - `routeDiscovery: { mode: "lazy", manifestPath: "/custom-manifest" }` + - Or you can disable this feature entirely and include all routes in the manifest on initial document load: + - `routeDiscovery: { mode: "initial" }` + +- Add support for route component props in `createRoutesStub`. This allows you to unit test your route components using the props instead of the hooks: ([#13528](https://github.com/remix-run/react-router/pull/13528)) + + ```tsx + let RoutesStub = createRoutesStub([ + { + path: "/", + Component({ loaderData }) { + let data = loaderData as { message: string }; + return
Message: {data.message}
; + }, + loader() { + return { message: "hello" }; + }, + }, + ]); + + render(); + + await waitFor(() => screen.findByText("Message: hello")); + ``` + +### Patch Changes + +- Fix `react-router` module augmentation for `NodeNext` ([#13498](https://github.com/remix-run/react-router/pull/13498)) +- Don't bundle `react-router` in `react-router/dom` CJS export ([#13497](https://github.com/remix-run/react-router/pull/13497)) +- Fix bug where a submitting `fetcher` would get stuck in a `loading` state if a revalidating `loader` redirected ([#12873](https://github.com/remix-run/react-router/pull/12873)) +- Fix hydration error if a server `loader` returned `undefined` ([#13496](https://github.com/remix-run/react-router/pull/13496)) +- Fix initial load 404 scenarios in data mode ([#13500](https://github.com/remix-run/react-router/pull/13500)) +- Stabilize `useRevalidator`'s `revalidate` function ([#13542](https://github.com/remix-run/react-router/pull/13542)) +- Preserve status code if a `clientAction` throws a `data()` result in framework mode ([#13522](https://github.com/remix-run/react-router/pull/13522)) +- Be defensive against leading double slashes in paths to avoid `Invalid URL` errors from the URL constructor ([#13510](https://github.com/remix-run/react-router/pull/13510)) + + - Note we do not sanitize/normalize these paths - we only detect them so we can avoid the error that would be thrown by `new URL("//", window.location.origin)` + +- Remove `Navigator` declaration for `navigator.connection.saveData` to avoid messing with any other types beyond `saveData` in userland ([#13512](https://github.com/remix-run/react-router/pull/13512)) +- Fix `handleError` `params` values on `.data` requests for routes with a dynamic param as the last URL segment ([#13481](https://github.com/remix-run/react-router/pull/13481)) +- Don't trigger an `ErrorBoundary` UI before the reload when we detect a manifest verison mismatch in Lazy Route Discovery ([#13480](https://github.com/remix-run/react-router/pull/13480)) +- Inline `turbo-stream@2.4.1` dependency and fix decoding ordering of Map/Set instances ([#13518](https://github.com/remix-run/react-router/pull/13518)) +- Only render dev warnings in DEV mode ([#13461](https://github.com/remix-run/react-router/pull/13461)) +- UNSTABLE: Fix a few bugs with error bubbling in middleware use-cases ([#13538](https://github.com/remix-run/react-router/pull/13538)) +- Short circuit post-processing on aborted `dataStrategy` requests ([#13521](https://github.com/remix-run/react-router/pull/13521)) + + - This resolves non-user-facing console errors of the form `Cannot read properties of undefined (reading 'result')` + ## 7.5.3 ### Patch Changes diff --git a/packages/react-router/package.json b/packages/react-router/package.json index 9f33548f18..596d167401 100644 --- a/packages/react-router/package.json +++ b/packages/react-router/package.json @@ -1,6 +1,6 @@ { "name": "react-router", - "version": "7.5.3", + "version": "7.6.0-pre.0", "description": "Declarative routing for React", "keywords": [ "react",