Skip to content

Commit fde6951

Browse files
committed
Merge branch 'dev' into release-next
2 parents 4bf819e + 5c7cc02 commit fde6951

File tree

158 files changed

+1868
-2058
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

158 files changed

+1868
-2058
lines changed

.changeset/little-cooks-pull.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
"react-router": patch
33
---
44

5-
Fix typegen for routes with a client loader but no server loader
5+
[PRERELEASE] Fix typegen for routes with a client loader but no server loader

.changeset/long-peas-doubt.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
"react-router": major
3+
---
4+
5+
Migrate Remix type generics to React Router
6+
7+
- These generics are provided for Remix v2 migration purposes
8+
- These generics and the APIs they exist on should be considered informally deprecated in favor of the new `Route.*` types
9+
- Anyone migrating from React Router v6 should probably not leverage these new generics and should migrate straight to the `Route.*` types
10+
- For React Router v6 users, these generics are new and should not impact your app, with one exception
11+
- `useFetcher` previously had an optional generic (used primarily by Remix v2) that expected the data type
12+
- This has been updated in v7 to expect the type of the function that generates the data (i.e., `typeof loader`/`typeof action`)
13+
- Therefore, you should update your usages:
14+
-`useFetcher<LoaderData>()`
15+
-`useFetcher<typeof loader>()`

.changeset/rare-plums-chew.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
"react-router": patch
55
---
66

7-
- Fix `react-router-serve` handling of prerendered HTML files by removing the `redirect: false` option so it now falls back on the default `redirect: true` behavior of redirecting from `/folder` -> `/folder/` which will then pick up `/folder/index.html` from disk. See https://expressjs.com/en/resources/middleware/serve-static.html
8-
- Proxy prerendered loader data into prerender pass for HTML files to avoid double-invocations of the loader at build time
7+
- [PRERELEASE] Fix `react-router-serve` handling of prerendered HTML files by removing the `redirect: false` option so it now falls back on the default `redirect: true` behavior of redirecting from `/folder` -> `/folder/` which will then pick up `/folder/index.html` from disk. See https://expressjs.com/en/resources/middleware/serve-static.html
8+
- [PRERELEASE] Proxy prerendered loader data into prerender pass for HTML files to avoid double-invocations of the loader at build time

.changeset/silver-cats-shave.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"react-router": patch
3+
---
4+
5+
Replace `substr` with `substring`

.changeset/sour-cycles-lie.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
"@react-router/dev": major
3+
"react-router": major
4+
---
5+
6+
- Consolidate types previously duplicated across `@remix-run/router`, `@remix-run/server-runtime`, and `@remix-run/react` now that they all live in `react-router`
7+
- Examples: `LoaderFunction`, `LoaderFunctionArgs`, `ActionFunction`, `ActionFunctionArgs`, `DataFunctionArgs`, `RouteManifest`, `LinksFunction`, `Route`, `EntryRoute`
8+
- The `RouteManifest` type used by the "remix" code is now slightly stricter because it is using the former `@remix-run/router` `RouteManifest`
9+
- `Record<string, Route> -> Record<string, Route | undefined>`
10+
- Removed `AppData` type in favor of inlining `unknown` in the few locations it was used
11+
- Removed `ServerRuntimeMeta*` types in favor of the `Meta*` types they were duplicated from

.changeset/strange-jeans-give.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
"react-router": patch
3+
---
4+
5+
Remove the deprecated `json` utility
6+
7+
- You can use [`Response.json`](https://developer.mozilla.org/en-US/docs/Web/API/Response/json_static) if you still need to construct JSON responses in your app

.changeset/tidy-pens-help.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
"@react-router/express": major
3+
"@react-router/node": major
4+
"@react-router/dev": major
5+
"react-router": major
6+
---
7+
8+
Drop support for Node 18, update minimum Node vestion to 20
9+
10+
- Remove `installGlobals()` as this should no longer be necessary

.changeset/wet-actors-act.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"react-router": major
3+
---
4+
5+
Update `cookie` dependency to `^1.0.1` - please see the [release notes](https://github.com/jshttp/cookie/releases) for any breaking changes

.github/workflows/integration-full.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
uses: ./.github/workflows/shared-integration.yml
3535
with:
3636
os: "ubuntu-latest"
37-
node_version: "[18, 20]"
37+
node_version: "[20, 22]"
3838
browser: '["chromium", "firefox"]'
3939

4040
integration-windows:
@@ -43,7 +43,7 @@ jobs:
4343
uses: ./.github/workflows/shared-integration.yml
4444
with:
4545
os: "windows-latest"
46-
node_version: "[18, 20]"
46+
node_version: "[20, 22]"
4747
browser: '["msedge"]'
4848

4949
integration-macos:
@@ -52,5 +52,5 @@ jobs:
5252
uses: ./.github/workflows/shared-integration.yml
5353
with:
5454
os: "macos-latest"
55-
node_version: "[18, 20]"
55+
node_version: "[20, 22]"
5656
browser: '["webkit"]'

.github/workflows/integration-pr-ubuntu.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,5 @@ jobs:
3131
uses: ./.github/workflows/shared-integration.yml
3232
with:
3333
os: "ubuntu-latest"
34-
node_version: "[20]"
34+
node_version: "[22]"
3535
browser: '["chromium"]'

.github/workflows/integration-pr-windows-macos.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
uses: ./.github/workflows/shared-integration.yml
2222
with:
2323
os: "ubuntu-latest"
24-
node_version: "[20]"
24+
node_version: "[22]"
2525
browser: '["firefox"]'
2626

2727
integration-msedge:
@@ -30,7 +30,7 @@ jobs:
3030
uses: ./.github/workflows/shared-integration.yml
3131
with:
3232
os: "windows-latest"
33-
node_version: "[20]"
33+
node_version: "[22]"
3434
browser: '["msedge"]'
3535

3636
integration-webkit:
@@ -39,5 +39,5 @@ jobs:
3939
uses: ./.github/workflows/shared-integration.yml
4040
with:
4141
os: "macos-latest"
42-
node_version: "[20]"
42+
node_version: "[22]"
4343
browser: '["webkit"]'

.github/workflows/shared-integration.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99
node_version:
1010
required: true
1111
# this is limited to string | boolean | number (https://github.community/t/can-action-inputs-be-arrays/16457)
12-
# but we want to pass an array (node_version: "[18, 20]"),
12+
# but we want to pass an array (node_version: "[20, 22]"),
1313
# so we'll need to manually stringify it for now
1414
type: string
1515
browser:

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ jobs:
2626
fail-fast: false
2727
matrix:
2828
node:
29-
- 18
3029
- 20
30+
- 22
3131

3232
runs-on: ubuntu-latest
3333

0 commit comments

Comments
 (0)