Skip to content

Commit 1896023

Browse files
committed
Merge branch 'main' into release-next
2 parents e54fbab + b5bdbf7 commit 1896023

File tree

8 files changed

+25
-13
lines changed

8 files changed

+25
-13
lines changed

DEVELOPMENT.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ You may need to make changes to a pre-release prior to publishing a final stable
4343
- Convert the `[email protected]` tag to a Release on Github with the name `v6.x.y`
4444
- Copy the relevant changelog entries from all packages into the Release Notes and adjust accordingly, matching the format used by prior releases
4545

46+
### Hotfix releases
47+
48+
Hotfix releases follow the same process as standard releases above, but the `release-*` branch should be branched off latest `main` instead of `dev`. Once the stable hotfix is published, the `release-*` branch should be merged back into both `main` and `dev` just like a normal release.
49+
4650
### Experimental releases
4751

4852
Experimental releases and hot-fixes do not need to be branched off of `dev`. Experimental releases can be branched from anywhere as they are not intended for general use.

contributors.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
- abhi-kr-2100
33
- AchThomas
44
- adamdotjs
5+
- adil62
56
- afzalsayed96
67
- Ajayff4
78
- alany411
@@ -14,7 +15,9 @@
1415
- awreese
1516
- aymanemadidi
1617
- bavardage
18+
- BDomzalski
1719
- bhbs
20+
- bobziroll
1821
- BrianT1414
1922
- brockross
2023
- brophdawg11
@@ -113,6 +116,7 @@
113116
- p13i
114117
- parched
115118
- paulsmithkc
119+
- pavsoldatov
116120
- pcattori
117121
- petersendidit
118122
- promet99
@@ -147,6 +151,7 @@
147151
- vijaypushkin
148152
- vikingviolinist
149153
- vishwast03
154+
- WalkAlone0325
150155
- willemarcel
151156
- williamsdyyz
152157
- xavier-lc

docs/components/link.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ A relative `<Link to>` value (that does not begin with `/`) resolves relative to
5656

5757
## `relative`
5858

59-
By default, links are relative to the route hierarchy, so `..` will go up one `Route` level. Occasionally, you may find that you have matching URL patterns that do not make sense to be nested, and you're prefer to use relative _path_ routing. You can opt into this behavior with `relative`:
59+
By default, links are relative to the route hierarchy, so `..` will go up one `Route` level. Occasionally, you may find that you have matching URL patterns that do not make sense to be nested, and you'd prefer to use relative _path_ routing. You can opt into this behavior with `relative`:
6060

6161
```jsx
6262
// Contact and EditContact do not share additional UI layout

docs/guides/deferred.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ Let's take a dive into how to accomplish this.
6565

6666
Start by adding `<Await />` for your slow data requests where you'd rather render a fallback UI. Let's do that for our example above:
6767

68-
```jsx lines=[1,5,10,20-33]
68+
```jsx lines=[3,9,13,24-40]
6969
import {
7070
Await,
7171
defer,

docs/hooks/use-fetchers.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,16 +44,19 @@ When the user clicks a checkbox, the submission goes to the action to change the
4444
function Task({ task }) {
4545
const { projectId, id } = task;
4646
const toggle = useFetcher();
47-
const checked =
48-
toggle.formData?.get("complete") || task.complete;
47+
const checked = toggle.formData
48+
? toggle.formData.get("complete") === "on"
49+
: task.complete;
4950

5051
return (
5152
<toggle.Form
5253
method="put"
53-
action={`/project/${projectId}/tasks/${id}`}
54+
action={`/projects/${projectId}/tasks/${id}`}
5455
>
56+
<input name="id" type="hidden" defaultValue={id} />
5557
<label>
5658
<input
59+
name="complete"
5760
type="checkbox"
5861
checked={checked}
5962
onChange={(e) => toggle.submit(e.target.form)}
@@ -98,15 +101,15 @@ function ProjectTaskCount({ project }) {
98101
const fetchers = useFetchers();
99102

100103
// Find this project's fetchers
101-
let projectFetchers = fetchers.filter((fetcher) => {
104+
const relevantFetchers = fetchers.filter((fetcher) => {
102105
return fetcher.formAction?.startsWith(
103-
`/projects/${project.id}/task`
106+
`/projects/${project.id}/tasks/`
104107
);
105108
});
106109

107110
// Store in a map for easy lookup
108111
const myFetchers = new Map(
109-
fetchers.map(({ formData }) => [
112+
relevantFetchers.map(({ formData }) => [
110113
formData.get("id"),
111114
formData.get("complete") === "on",
112115
])

docs/route/route.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ Please see the [errorElement][errorelement] documentation for more details.
278278

279279
[outlet]: ./outlet
280280
[remix]: https://remix.run
281-
[indexroute]: ../guides/index-route
281+
[indexroute]: ../start/concepts#index-routes
282282
[outlet]: ../components/outlet
283283
[useloaderdata]: ../hooks/use-loader-data
284284
[loader]: ./loader

docs/start/overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ See:
173173

174174
## Ranked Route Matching
175175

176-
When matching URLs to routes, React Router will rank the routes according the number of segments, static segments, dynamic segments, splats, etc. and pick the _most specific_ match.
176+
When matching URLs to routes, React Router will rank the routes according to the number of segments, static segments, dynamic segments, splats, etc. and pick the _most specific_ match.
177177

178178
For example, consider these two routes:
179179

docs/start/tutorial.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,12 @@ The `main.jsx` file is the entry point. Open it up and we'll put React Router on
6767

6868
👉 **Create and render a [browser router][createbrowserrouter] in `main.jsx`**
6969

70-
```jsx lines=[3-7,10-15,19] filename=src/main.jsx
70+
```jsx lines=[3-6,9-14,18] filename=src/main.jsx
7171
import React from "react";
7272
import ReactDOM from "react-dom/client";
7373
import {
7474
createBrowserRouter,
7575
RouterProvider,
76-
Route,
7776
} from "react-router-dom";
7877
import "./index.css";
7978

@@ -605,7 +604,8 @@ import {
605604
import { getContacts, createContact } from "../contacts";
606605

607606
export async function action() {
608-
await createContact();
607+
const contact = await createContact();
608+
return { contact };
609609
}
610610

611611
/* other code */

0 commit comments

Comments
 (0)