Skip to content

Commit 6333541

Browse files
committed
Draft release notes
1 parent 9a62e35 commit 6333541

File tree

1 file changed

+139
-90
lines changed

1 file changed

+139
-90
lines changed

CHANGELOG.md

Lines changed: 139 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -13,177 +13,182 @@ We manage release notes in this file instead of the paginated Github Releases Pa
1313
<summary>Table of Contents</summary>
1414

1515
- [React Router Releases](#react-router-releases)
16-
- [v6.26.2](#v6262)
16+
- [v6.27.0](#v6270)
17+
- [What's Changed](#whats-changed)
18+
- [Stabilized APIs](#stabilized-apis)
19+
- [Minor Changes](#minor-changes)
1720
- [Patch Changes](#patch-changes)
18-
- [v6.26.1](#v6261)
21+
- [v6.26.2](#v6262)
1922
- [Patch Changes](#patch-changes-1)
20-
- [v6.26.0](#v6260)
21-
- [Minor Changes](#minor-changes)
23+
- [v6.26.1](#v6261)
2224
- [Patch Changes](#patch-changes-2)
23-
- [v6.25.1](#v6251)
25+
- [v6.26.0](#v6260)
26+
- [Minor Changes](#minor-changes-1)
2427
- [Patch Changes](#patch-changes-3)
28+
- [v6.25.1](#v6251)
29+
- [Patch Changes](#patch-changes-4)
2530
- [v6.25.0](#v6250)
26-
- [What's Changed](#whats-changed)
31+
- [What's Changed](#whats-changed-1)
2732
- [Stabilized `v7_skipActionErrorRevalidation`](#stabilized-v7_skipactionerrorrevalidation)
28-
- [Minor Changes](#minor-changes-1)
29-
- [Patch Changes](#patch-changes-4)
30-
- [v6.24.1](#v6241)
33+
- [Minor Changes](#minor-changes-2)
3134
- [Patch Changes](#patch-changes-5)
35+
- [v6.24.1](#v6241)
36+
- [Patch Changes](#patch-changes-6)
3237
- [v6.24.0](#v6240)
33-
- [What's Changed](#whats-changed-1)
38+
- [What's Changed](#whats-changed-2)
3439
- [Lazy Route Discovery (a.k.a. "Fog of War")](#lazy-route-discovery-aka-fog-of-war)
35-
- [Minor Changes](#minor-changes-2)
36-
- [Patch Changes](#patch-changes-6)
37-
- [v6.23.1](#v6231)
40+
- [Minor Changes](#minor-changes-3)
3841
- [Patch Changes](#patch-changes-7)
42+
- [v6.23.1](#v6231)
43+
- [Patch Changes](#patch-changes-8)
3944
- [v6.23.0](#v6230)
40-
- [What's Changed](#whats-changed-2)
45+
- [What's Changed](#whats-changed-3)
4146
- [Data Strategy (unstable)](#data-strategy-unstable)
4247
- [Skip Action Error Revalidation (unstable)](#skip-action-error-revalidation-unstable)
43-
- [Minor Changes](#minor-changes-3)
48+
- [Minor Changes](#minor-changes-4)
4449
- [v6.22.3](#v6223)
45-
- [Patch Changes](#patch-changes-8)
46-
- [v6.22.2](#v6222)
4750
- [Patch Changes](#patch-changes-9)
48-
- [v6.22.1](#v6221)
51+
- [v6.22.2](#v6222)
4952
- [Patch Changes](#patch-changes-10)
53+
- [v6.22.1](#v6221)
54+
- [Patch Changes](#patch-changes-11)
5055
- [v6.22.0](#v6220)
51-
- [What's Changed](#whats-changed-3)
56+
- [What's Changed](#whats-changed-4)
5257
- [Core Web Vitals Technology Report Flag](#core-web-vitals-technology-report-flag)
53-
- [Minor Changes](#minor-changes-4)
54-
- [Patch Changes](#patch-changes-11)
55-
- [v6.21.3](#v6213)
58+
- [Minor Changes](#minor-changes-5)
5659
- [Patch Changes](#patch-changes-12)
57-
- [v6.21.2](#v6212)
60+
- [v6.21.3](#v6213)
5861
- [Patch Changes](#patch-changes-13)
59-
- [v6.21.1](#v6211)
62+
- [v6.21.2](#v6212)
6063
- [Patch Changes](#patch-changes-14)
64+
- [v6.21.1](#v6211)
65+
- [Patch Changes](#patch-changes-15)
6166
- [v6.21.0](#v6210)
62-
- [What's Changed](#whats-changed-4)
67+
- [What's Changed](#whats-changed-5)
6368
- [`future.v7_relativeSplatPath`](#futurev7_relativesplatpath)
6469
- [Partial Hydration](#partial-hydration)
65-
- [Minor Changes](#minor-changes-5)
66-
- [Patch Changes](#patch-changes-15)
67-
- [v6.20.1](#v6201)
68-
- [Patch Changes](#patch-changes-16)
69-
- [v6.20.0](#v6200)
7070
- [Minor Changes](#minor-changes-6)
71+
- [Patch Changes](#patch-changes-16)
72+
- [v6.20.1](#v6201)
7173
- [Patch Changes](#patch-changes-17)
72-
- [v6.19.0](#v6190)
73-
- [What's Changed](#whats-changed-5)
74-
- [`unstable_flushSync` API](#unstable_flushsync-api)
74+
- [v6.20.0](#v6200)
7575
- [Minor Changes](#minor-changes-7)
7676
- [Patch Changes](#patch-changes-18)
77-
- [v6.18.0](#v6180)
77+
- [v6.19.0](#v6190)
7878
- [What's Changed](#whats-changed-6)
79-
- [New Fetcher APIs](#new-fetcher-apis)
80-
- [Persistence Future Flag (`future.v7_fetcherPersist`)](#persistence-future-flag-futurev7_fetcherpersist)
79+
- [`unstable_flushSync` API](#unstable_flushsync-api)
8180
- [Minor Changes](#minor-changes-8)
8281
- [Patch Changes](#patch-changes-19)
83-
- [v6.17.0](#v6170)
82+
- [v6.18.0](#v6180)
8483
- [What's Changed](#whats-changed-7)
85-
- [View Transitions 🚀](#view-transitions-)
84+
- [New Fetcher APIs](#new-fetcher-apis)
85+
- [Persistence Future Flag (`future.v7_fetcherPersist`)](#persistence-future-flag-futurev7_fetcherpersist)
8686
- [Minor Changes](#minor-changes-9)
8787
- [Patch Changes](#patch-changes-20)
88-
- [v6.16.0](#v6160)
88+
- [v6.17.0](#v6170)
89+
- [What's Changed](#whats-changed-8)
90+
- [View Transitions 🚀](#view-transitions-)
8991
- [Minor Changes](#minor-changes-10)
9092
- [Patch Changes](#patch-changes-21)
91-
- [v6.15.0](#v6150)
93+
- [v6.16.0](#v6160)
9294
- [Minor Changes](#minor-changes-11)
9395
- [Patch Changes](#patch-changes-22)
94-
- [v6.14.2](#v6142)
96+
- [v6.15.0](#v6150)
97+
- [Minor Changes](#minor-changes-12)
9598
- [Patch Changes](#patch-changes-23)
96-
- [v6.14.1](#v6141)
99+
- [v6.14.2](#v6142)
97100
- [Patch Changes](#patch-changes-24)
98-
- [v6.14.0](#v6140)
99-
- [What's Changed](#whats-changed-8)
100-
- [JSON/Text Submissions](#jsontext-submissions)
101-
- [Minor Changes](#minor-changes-12)
101+
- [v6.14.1](#v6141)
102102
- [Patch Changes](#patch-changes-25)
103-
- [v6.13.0](#v6130)
103+
- [v6.14.0](#v6140)
104104
- [What's Changed](#whats-changed-9)
105-
- [`future.v7_startTransition`](#futurev7_starttransition)
105+
- [JSON/Text Submissions](#jsontext-submissions)
106106
- [Minor Changes](#minor-changes-13)
107107
- [Patch Changes](#patch-changes-26)
108-
- [v6.12.1](#v6121)
109-
- [Patch Changes](#patch-changes-27)
110-
- [v6.12.0](#v6120)
108+
- [v6.13.0](#v6130)
111109
- [What's Changed](#whats-changed-10)
112-
- [`React.startTransition` support](#reactstarttransition-support)
110+
- [`future.v7_startTransition`](#futurev7_starttransition)
113111
- [Minor Changes](#minor-changes-14)
112+
- [Patch Changes](#patch-changes-27)
113+
- [v6.12.1](#v6121)
114114
- [Patch Changes](#patch-changes-28)
115-
- [v6.11.2](#v6112)
115+
- [v6.12.0](#v6120)
116+
- [What's Changed](#whats-changed-11)
117+
- [`React.startTransition` support](#reactstarttransition-support)
118+
- [Minor Changes](#minor-changes-15)
116119
- [Patch Changes](#patch-changes-29)
117-
- [v6.11.1](#v6111)
120+
- [v6.11.2](#v6112)
118121
- [Patch Changes](#patch-changes-30)
119-
- [v6.11.0](#v6110)
120-
- [Minor Changes](#minor-changes-15)
122+
- [v6.11.1](#v6111)
121123
- [Patch Changes](#patch-changes-31)
122-
- [v6.10.0](#v6100)
123-
- [What's Changed](#whats-changed-11)
124+
- [v6.11.0](#v6110)
124125
- [Minor Changes](#minor-changes-16)
125-
- [`future.v7_normalizeFormMethod`](#futurev7_normalizeformmethod)
126126
- [Patch Changes](#patch-changes-32)
127-
- [v6.9.0](#v690)
127+
- [v6.10.0](#v6100)
128128
- [What's Changed](#whats-changed-12)
129-
- [`Component`/`ErrorBoundary` route properties](#componenterrorboundary-route-properties)
130-
- [Introducing Lazy Route Modules](#introducing-lazy-route-modules)
131129
- [Minor Changes](#minor-changes-17)
130+
- [`future.v7_normalizeFormMethod`](#futurev7_normalizeformmethod)
132131
- [Patch Changes](#patch-changes-33)
133-
- [v6.8.2](#v682)
132+
- [v6.9.0](#v690)
133+
- [What's Changed](#whats-changed-13)
134+
- [`Component`/`ErrorBoundary` route properties](#componenterrorboundary-route-properties)
135+
- [Introducing Lazy Route Modules](#introducing-lazy-route-modules)
136+
- [Minor Changes](#minor-changes-18)
134137
- [Patch Changes](#patch-changes-34)
135-
- [v6.8.1](#v681)
138+
- [v6.8.2](#v682)
136139
- [Patch Changes](#patch-changes-35)
137-
- [v6.8.0](#v680)
138-
- [Minor Changes](#minor-changes-18)
140+
- [v6.8.1](#v681)
139141
- [Patch Changes](#patch-changes-36)
140-
- [v6.7.0](#v670)
142+
- [v6.8.0](#v680)
141143
- [Minor Changes](#minor-changes-19)
142144
- [Patch Changes](#patch-changes-37)
143-
- [v6.6.2](#v662)
145+
- [v6.7.0](#v670)
146+
- [Minor Changes](#minor-changes-20)
144147
- [Patch Changes](#patch-changes-38)
145-
- [v6.6.1](#v661)
148+
- [v6.6.2](#v662)
146149
- [Patch Changes](#patch-changes-39)
147-
- [v6.6.0](#v660)
148-
- [What's Changed](#whats-changed-13)
149-
- [Minor Changes](#minor-changes-20)
150+
- [v6.6.1](#v661)
150151
- [Patch Changes](#patch-changes-40)
151-
- [v6.5.0](#v650)
152+
- [v6.6.0](#v660)
152153
- [What's Changed](#whats-changed-14)
153154
- [Minor Changes](#minor-changes-21)
154155
- [Patch Changes](#patch-changes-41)
155-
- [v6.4.5](#v645)
156+
- [v6.5.0](#v650)
157+
- [What's Changed](#whats-changed-15)
158+
- [Minor Changes](#minor-changes-22)
156159
- [Patch Changes](#patch-changes-42)
157-
- [v6.4.4](#v644)
160+
- [v6.4.5](#v645)
158161
- [Patch Changes](#patch-changes-43)
159-
- [v6.4.3](#v643)
162+
- [v6.4.4](#v644)
160163
- [Patch Changes](#patch-changes-44)
161-
- [v6.4.2](#v642)
164+
- [v6.4.3](#v643)
162165
- [Patch Changes](#patch-changes-45)
163-
- [v6.4.1](#v641)
166+
- [v6.4.2](#v642)
164167
- [Patch Changes](#patch-changes-46)
168+
- [v6.4.1](#v641)
169+
- [Patch Changes](#patch-changes-47)
165170
- [v6.4.0](#v640)
166-
- [What's Changed](#whats-changed-15)
171+
- [What's Changed](#whats-changed-16)
167172
- [Remix Data APIs](#remix-data-apis)
168-
- [Patch Changes](#patch-changes-47)
173+
- [Patch Changes](#patch-changes-48)
169174
- [v6.3.0](#v630)
170-
- [Minor Changes](#minor-changes-22)
175+
- [Minor Changes](#minor-changes-23)
171176
- [v6.2.2](#v622)
172-
- [Patch Changes](#patch-changes-48)
173-
- [v6.2.1](#v621)
174177
- [Patch Changes](#patch-changes-49)
175-
- [v6.2.0](#v620)
176-
- [Minor Changes](#minor-changes-23)
178+
- [v6.2.1](#v621)
177179
- [Patch Changes](#patch-changes-50)
178-
- [v6.1.1](#v611)
179-
- [Patch Changes](#patch-changes-51)
180-
- [v6.1.0](#v610)
180+
- [v6.2.0](#v620)
181181
- [Minor Changes](#minor-changes-24)
182+
- [Patch Changes](#patch-changes-51)
183+
- [v6.1.1](#v611)
182184
- [Patch Changes](#patch-changes-52)
183-
- [v6.0.2](#v602)
185+
- [v6.1.0](#v610)
186+
- [Minor Changes](#minor-changes-25)
184187
- [Patch Changes](#patch-changes-53)
185-
- [v6.0.1](#v601)
188+
- [v6.0.2](#v602)
186189
- [Patch Changes](#patch-changes-54)
190+
- [v6.0.1](#v601)
191+
- [Patch Changes](#patch-changes-55)
187192
- [v6.0.0](#v600)
188193

189194
</details>
@@ -207,6 +212,50 @@ Date: YYYY-MM-DD
207212
**Full Changelog**: [`v6.X.Y...v6.X.Y`](https://github.com/remix-run/react-router/compare/[email protected]@6.X.Y)
208213
-->
209214

215+
## v6.27.0
216+
217+
Date: 2024-10-10
218+
219+
### What's Changed
220+
221+
#### Stabilized APIs
222+
223+
This release stabilizes a handful of "unstable" APIs in preparation for the pending React Router v7 release (see [these](https://remix.run/blog/merging-remix-and-react-router9) [posts](https://remix.run/blog/incremental-path-to-react-19) for more info):
224+
225+
- `unstable_dataStrategy` (`createBrowserRouter` and friends)
226+
- `unstable_patchRoutesOnNavigation` (`createBrowserRouter` and friends)
227+
- `unstable_flushSync` (`useSubmit`, `fetcher.load`, `fetcher.submit`)
228+
- `unstable_viewTransition` (`<Link>`, `<Form>`, `useNavigate`, `useSubmit`)
229+
230+
### Minor Changes
231+
232+
- Stabilize `unstable_patchRoutesOnNavigation` ([#11973](https://github.com/remix-run/react-router/pull/11973))
233+
- Add new `PatchRoutesOnNavigationFunctionArgs` type for convenience ([#11967](https://github.com/remix-run/react-router/pull/11967))
234+
- Stabilize `unstable_dataStrategy` ([#11974](https://github.com/remix-run/react-router/pull/11974))
235+
- Stabilize the `unstable_flushSync` option for navigations and fetchers ([#11989](https://github.com/remix-run/react-router/pull/11989))
236+
- Stabilize the `unstable_viewTransition` option for navigations and the corresponding `unstable_useViewTransitionState` hook ([#11989](https://github.com/remix-run/react-router/pull/11989))
237+
238+
### Patch Changes
239+
240+
- Fix bug when submitting to the current contextual route (parent route with an index child) when an `?index` param already exists from a prior submission ([#12003](https://github.com/remix-run/react-router/pull/12003))
241+
- Fix `useFormAction` bug - when removing `?index` param it would not keep other non-Remix `index` params ([#12003](https://github.com/remix-run/react-router/pull/12003))
242+
- Fix bug with fetchers not persisting `preventScrollReset` through redirects during concurrent fetches ([#11999](https://github.com/remix-run/react-router/pull/11999))
243+
- Avoid unnecessary `console.error` on fetcher abort due to back-to-back revalidation calls ([#12050](https://github.com/remix-run/react-router/pull/12050))
244+
- Fix bugs with `partialHydration` when hydrating with errors ([#12070](https://github.com/remix-run/react-router/pull/12070))
245+
- Remove internal cache to fix issues with interrupted `patchRoutesOnNavigation` calls ([#12055](https://github.com/remix-run/react-router/pull/12055))
246+
- ⚠️ This may be a breaking change if you were relying on this behavior in the `unstable_` API
247+
- We used to cache in-progress calls to `patchRoutesOnNavigation` internally so that multiple navigations with the same start/end would only execute the function once and use the same promise
248+
- However, this approach was at odds with `patch` short circuiting if a navigation was interrupted (and the `request.signal` aborted) since the first invocation's `patch` would no-op
249+
- This cache also made some assumptions as to what a valid cache key might be - and is oblivious to any other application-state changes that may have occurred
250+
- So, the cache has been removed because in _most_ cases, repeated calls to something like `import()` for async routes will already be cached automatically - and if not it's easy enough for users to implement this cache in userland
251+
- Remove internal `discoveredRoutes` FIFO queue from `unstable_patchRoutesOnNavigation` ([#11977](https://github.com/remix-run/react-router/pull/11977))
252+
- ⚠️ This may be a breaking change if you were relying on this behavior in the `unstable_` API
253+
- This was originally implemented as an optimization but it proved to be a bit too limiting
254+
- If you need this optimization you can implement your own cache inside `patchRoutesOnNavigation`
255+
- Fix types for `RouteObject` within `PatchRoutesOnNavigationFunction`'s `patch` method so it doesn't expect agnostic route objects passed to `patch` ([#11967](https://github.com/remix-run/react-router/pull/11967))
256+
257+
**Full Changelog**: [`v6.26.2...v6.27.0`](https://github.com/remix-run/react-router/compare/[email protected]@6.27.0)
258+
210259
## v6.26.2
211260

212261
Date: 2024-09-09

0 commit comments

Comments
 (0)