Skip to content

Commit

Permalink
Merge branch 'release-next'
Browse files Browse the repository at this point in the history
  • Loading branch information
brophdawg11 committed Jun 24, 2024
2 parents aacc2b9 + a569d76 commit 23aa844
Show file tree
Hide file tree
Showing 28 changed files with 2,711 additions and 208 deletions.
206 changes: 130 additions & 76 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,154 +13,161 @@ We manage release notes in this file instead of the paginated Github Releases Pa
<summary>Table of Contents</summary>

- [React Router Releases](#react-router-releases)
- [v6.23.1](#v6231)
- [v6.24.0](#v6240)
- [What's Changed](#whats-changed)
- [Lazy Route Discovery (a.k.a. "Fog of War")](#lazy-route-discovery-aka-fog-of-war)
- [Minor Changes](#minor-changes)
- [Patch Changes](#patch-changes)
- [v6.23.1](#v6231)
- [Patch Changes](#patch-changes-1)
- [v6.23.0](#v6230)
- [What's Changed](#whats-changed)
- [What's Changed](#whats-changed-1)
- [Data Strategy (unstable)](#data-strategy-unstable)
- [Skip Action Error Revalidation (unstable)](#skip-action-error-revalidation-unstable)
- [Minor Changes](#minor-changes)
- [Minor Changes](#minor-changes-1)
- [v6.22.3](#v6223)
- [Patch Changes](#patch-changes-1)
- [v6.22.2](#v6222)
- [Patch Changes](#patch-changes-2)
- [v6.22.1](#v6221)
- [v6.22.2](#v6222)
- [Patch Changes](#patch-changes-3)
- [v6.22.1](#v6221)
- [Patch Changes](#patch-changes-4)
- [v6.22.0](#v6220)
- [What's Changed](#whats-changed-1)
- [What's Changed](#whats-changed-2)
- [Core Web Vitals Technology Report Flag](#core-web-vitals-technology-report-flag)
- [Minor Changes](#minor-changes-1)
- [Patch Changes](#patch-changes-4)
- [v6.21.3](#v6213)
- [Minor Changes](#minor-changes-2)
- [Patch Changes](#patch-changes-5)
- [v6.21.2](#v6212)
- [v6.21.3](#v6213)
- [Patch Changes](#patch-changes-6)
- [v6.21.1](#v6211)
- [v6.21.2](#v6212)
- [Patch Changes](#patch-changes-7)
- [v6.21.1](#v6211)
- [Patch Changes](#patch-changes-8)
- [v6.21.0](#v6210)
- [What's Changed](#whats-changed-2)
- [What's Changed](#whats-changed-3)
- [`future.v7_relativeSplatPath`](#futurev7_relativesplatpath)
- [Partial Hydration](#partial-hydration)
- [Minor Changes](#minor-changes-2)
- [Patch Changes](#patch-changes-8)
- [v6.20.1](#v6201)
- [Patch Changes](#patch-changes-9)
- [v6.20.0](#v6200)
- [Minor Changes](#minor-changes-3)
- [Patch Changes](#patch-changes-9)
- [v6.20.1](#v6201)
- [Patch Changes](#patch-changes-10)
- [v6.19.0](#v6190)
- [What's Changed](#whats-changed-3)
- [`unstable_flushSync` API](#unstable_flushsync-api)
- [v6.20.0](#v6200)
- [Minor Changes](#minor-changes-4)
- [Patch Changes](#patch-changes-11)
- [v6.18.0](#v6180)
- [v6.19.0](#v6190)
- [What's Changed](#whats-changed-4)
- [New Fetcher APIs](#new-fetcher-apis)
- [Persistence Future Flag (`future.v7_fetcherPersist`)](#persistence-future-flag-futurev7_fetcherpersist)
- [`unstable_flushSync` API](#unstable_flushsync-api)
- [Minor Changes](#minor-changes-5)
- [Patch Changes](#patch-changes-12)
- [v6.17.0](#v6170)
- [v6.18.0](#v6180)
- [What's Changed](#whats-changed-5)
- [View Transitions 🚀](#view-transitions-)
- [New Fetcher APIs](#new-fetcher-apis)
- [Persistence Future Flag (`future.v7_fetcherPersist`)](#persistence-future-flag-futurev7_fetcherpersist)
- [Minor Changes](#minor-changes-6)
- [Patch Changes](#patch-changes-13)
- [v6.16.0](#v6160)
- [v6.17.0](#v6170)
- [What's Changed](#whats-changed-6)
- [View Transitions 🚀](#view-transitions-)
- [Minor Changes](#minor-changes-7)
- [Patch Changes](#patch-changes-14)
- [v6.15.0](#v6150)
- [v6.16.0](#v6160)
- [Minor Changes](#minor-changes-8)
- [Patch Changes](#patch-changes-15)
- [v6.14.2](#v6142)
- [v6.15.0](#v6150)
- [Minor Changes](#minor-changes-9)
- [Patch Changes](#patch-changes-16)
- [v6.14.1](#v6141)
- [v6.14.2](#v6142)
- [Patch Changes](#patch-changes-17)
- [v6.14.0](#v6140)
- [What's Changed](#whats-changed-6)
- [JSON/Text Submissions](#jsontext-submissions)
- [Minor Changes](#minor-changes-9)
- [v6.14.1](#v6141)
- [Patch Changes](#patch-changes-18)
- [v6.13.0](#v6130)
- [v6.14.0](#v6140)
- [What's Changed](#whats-changed-7)
- [JSON/Text Submissions](#jsontext-submissions)
- [Minor Changes](#minor-changes-10)
- [Patch Changes](#patch-changes-19)
- [v6.12.1](#v6121)
- [Patch Changes](#patch-changes-20)
- [v6.12.0](#v6120)
- [v6.13.0](#v6130)
- [What's Changed](#whats-changed-8)
- [`React.startTransition` support](#reactstarttransition-support)
- [v7\_startTransition](#v7_starttransition)
- [Minor Changes](#minor-changes-11)
- [Patch Changes](#patch-changes-20)
- [v6.12.1](#v6121)
- [Patch Changes](#patch-changes-21)
- [v6.11.2](#v6112)
- [v6.12.0](#v6120)
- [What's Changed](#whats-changed-9)
- [`React.startTransition` support](#reactstarttransition-support)
- [Minor Changes](#minor-changes-12)
- [Patch Changes](#patch-changes-22)
- [v6.11.1](#v6111)
- [v6.11.2](#v6112)
- [Patch Changes](#patch-changes-23)
- [v6.11.0](#v6110)
- [Minor Changes](#minor-changes-12)
- [v6.11.1](#v6111)
- [Patch Changes](#patch-changes-24)
- [v6.10.0](#v6100)
- [What's Changed](#whats-changed-9)
- [v6.11.0](#v6110)
- [Minor Changes](#minor-changes-13)
- [Patch Changes](#patch-changes-25)
- [v6.9.0](#v690)
- [v6.10.0](#v6100)
- [What's Changed](#whats-changed-10)
- [`Component`/`ErrorBoundary` route properties](#componenterrorboundary-route-properties)
- [Introducing Lazy Route Modules](#introducing-lazy-route-modules)
- [Minor Changes](#minor-changes-14)
- [future.v7\_normalizeFormMethod](#futurev7_normalizeformmethod)
- [Patch Changes](#patch-changes-26)
- [v6.8.2](#v682)
- [v6.9.0](#v690)
- [What's Changed](#whats-changed-11)
- [`Component`/`ErrorBoundary` route properties](#componenterrorboundary-route-properties)
- [Introducing Lazy Route Modules](#introducing-lazy-route-modules)
- [Minor Changes](#minor-changes-15)
- [Patch Changes](#patch-changes-27)
- [v6.8.1](#v681)
- [v6.8.2](#v682)
- [Patch Changes](#patch-changes-28)
- [v6.8.0](#v680)
- [Minor Changes](#minor-changes-15)
- [v6.8.1](#v681)
- [Patch Changes](#patch-changes-29)
- [v6.7.0](#v670)
- [v6.8.0](#v680)
- [Minor Changes](#minor-changes-16)
- [Patch Changes](#patch-changes-30)
- [v6.6.2](#v662)
- [v6.7.0](#v670)
- [Minor Changes](#minor-changes-17)
- [Patch Changes](#patch-changes-31)
- [v6.6.1](#v661)
- [v6.6.2](#v662)
- [Patch Changes](#patch-changes-32)
- [v6.6.0](#v660)
- [What's Changed](#whats-changed-11)
- [Minor Changes](#minor-changes-17)
- [v6.6.1](#v661)
- [Patch Changes](#patch-changes-33)
- [v6.5.0](#v650)
- [v6.6.0](#v660)
- [What's Changed](#whats-changed-12)
- [Minor Changes](#minor-changes-18)
- [Patch Changes](#patch-changes-34)
- [v6.4.5](#v645)
- [v6.5.0](#v650)
- [What's Changed](#whats-changed-13)
- [Minor Changes](#minor-changes-19)
- [Patch Changes](#patch-changes-35)
- [v6.4.4](#v644)
- [v6.4.5](#v645)
- [Patch Changes](#patch-changes-36)
- [v6.4.3](#v643)
- [v6.4.4](#v644)
- [Patch Changes](#patch-changes-37)
- [v6.4.2](#v642)
- [v6.4.3](#v643)
- [Patch Changes](#patch-changes-38)
- [v6.4.1](#v641)
- [v6.4.2](#v642)
- [Patch Changes](#patch-changes-39)
- [v6.4.1](#v641)
- [Patch Changes](#patch-changes-40)
- [v6.4.0](#v640)
- [What's Changed](#whats-changed-13)
- [What's Changed](#whats-changed-14)
- [Remix Data APIs](#remix-data-apis)
- [Patch Changes](#patch-changes-40)
- [Patch Changes](#patch-changes-41)
- [v6.3.0](#v630)
- [Minor Changes](#minor-changes-19)
- [Minor Changes](#minor-changes-20)
- [v6.2.2](#v622)
- [Patch Changes](#patch-changes-41)
- [v6.2.1](#v621)
- [Patch Changes](#patch-changes-42)
- [v6.2.0](#v620)
- [Minor Changes](#minor-changes-20)
- [v6.2.1](#v621)
- [Patch Changes](#patch-changes-43)
- [v6.1.1](#v611)
- [Patch Changes](#patch-changes-44)
- [v6.1.0](#v610)
- [v6.2.0](#v620)
- [Minor Changes](#minor-changes-21)
- [Patch Changes](#patch-changes-44)
- [v6.1.1](#v611)
- [Patch Changes](#patch-changes-45)
- [v6.0.2](#v602)
- [v6.1.0](#v610)
- [Minor Changes](#minor-changes-22)
- [Patch Changes](#patch-changes-46)
- [v6.0.1](#v601)
- [v6.0.2](#v602)
- [Patch Changes](#patch-changes-47)
- [v6.0.1](#v601)
- [Patch Changes](#patch-changes-48)
- [v6.0.0](#v600)

</details>
Expand All @@ -184,6 +191,53 @@ Date: YYYY-MM-DD
**Full Changelog**: [`v6.X.Y...v6.X.Y`](https://github.com/remix-run/react-router/compare/react-router@6.X.Y...react-router@6.X.Y)
-->

## v6.24.0

Date: 2024-06-24

### What's Changed

#### Lazy Route Discovery (a.k.a. "Fog of War")

We're really excited to release our new API for "Lazy Route Discovery" in `v6.24.0`! For some background information, please check out the original [RFC](https://github.com/remix-run/react-router/discussions/11113). The **tl;dr;** is that ever since we introduced the Data APIs in v6.4 via `<RouterProvider>`, we've been a little bummed that one of the tradeoffs was the lack of a compelling code-splitting story mirroring what we had in the `<BrowserRouter>`/`<Routes>` apps. We took a baby-step towards improving that story with `route.lazy` in `v6.9.0`, but with `v6.24.0` we've gone the rest of the way.

With "Fog of War", you can now load portions of the route tree lazily via the new `unstable_patchRoutesOnMiss` option passed to `createBrowserRouter` (and it's memory/hash counterparts). This gives you a way to hook into spots where React Router is unable to match a given path and patch new routes into the route tree during the navigation (or fetcher call).

Here's a very small example, but please refer to the [documentation](https://reactrouter.com/en/main/routers/create-browser-router#unstable_patchroutesonmiss) for more information and use cases:

```js
const router = createBrowserRouter(
[
{
id: "root",
path: "/",
Component: RootComponent,
},
],
{
async unstable_patchRoutesOnMiss({ path, patch }) {
if (path === "/a") {
// Load the `a` route (`{ path: 'a', Component: A }`)
let route = await getARoute();
// Patch the `a` route in as a new child of the `root` route
patch("root", [route]);
}
},
}
);
```

### Minor Changes

- Add support for Lazy Route Discovery (a.k.a. "Fog of War") ([#11626](https://github.com/remix-run/react-router/pull/11626))

### Patch Changes

- Fix `fetcher.submit` types - remove incorrect `navigate`/`fetcherKey`/`unstable_viewTransition` options because they are only relevant for `useSubmit` ([#11631](https://github.com/remix-run/react-router/pull/11631))
- Allow falsy `location.state` values passed to `<StaticRouter>` ([#11495](https://github.com/remix-run/react-router/pull/11495))

**Full Changelog**: [`v6.23.1...v6.24.0`](https://github.com/remix-run/react-router/compare/react-router@6.23.1...react-router@6.24.0)

## v6.23.1

Date: 2024-05-10
Expand Down
2 changes: 2 additions & 0 deletions contributors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,7 @@
- jonkoops
- jrakotoharisoa
- juanpprieto
- jungwoo3490
- kachun333
- Kakamotobi
- kantuni
Expand Down Expand Up @@ -196,6 +197,7 @@
- Nismit
- nnhjs
- noisypigeon
- Nurai1
- Obi-Dann
- OlegDev1
- omahs
Expand Down
Loading

0 comments on commit 23aa844

Please sign in to comment.