From 6ead1fae680c3ead42614f62ffae51a57f559f4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yadiel=20V=C3=A9lez?= <16180439+hernan-yadiel@users.noreply.github.com> Date: Mon, 7 Apr 2025 06:35:20 -0400 Subject: [PATCH 1/4] Add note about `useId` being allowed in non-async Server Components (#7715) --- src/content/reference/react/useId.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/content/reference/react/useId.md b/src/content/reference/react/useId.md index c6be96fd..a77cf7a7 100644 --- a/src/content/reference/react/useId.md +++ b/src/content/reference/react/useId.md @@ -46,6 +46,8 @@ function PasswordField() { * `useId` **should not be used to generate keys** in a list. [Keys should be generated from your data.](/learn/rendering-lists#where-to-get-your-key) +* `useId` currently cannot be used in [async Server Components](/reference/rsc/server-components#async-components-with-server-components). + --- ## Usage {/*usage*/} From e148ffec822e82cf552de425a610be7f865fc273 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Bene=C5=A1?= Date: Tue, 8 Apr 2025 13:44:12 +0200 Subject: [PATCH 2/4] Add note about root.render microtask scheduling (#7717) Co-authored-by: Sebastian "Sebbie" Silbermann --- src/content/reference/react-dom/client/createRoot.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/content/reference/react-dom/client/createRoot.md b/src/content/reference/react-dom/client/createRoot.md index 0a393394..adc6a8d3 100644 --- a/src/content/reference/react-dom/client/createRoot.md +++ b/src/content/reference/react-dom/client/createRoot.md @@ -90,6 +90,15 @@ React will display `` in the `root`, and take over managing the DOM insid * If you call `render` on the same root more than once, React will update the DOM as necessary to reflect the latest JSX you passed. React will decide which parts of the DOM can be reused and which need to be recreated by ["matching it up"](/learn/preserving-and-resetting-state) with the previously rendered tree. Calling `render` on the same root again is similar to calling the [`set` function](/reference/react/useState#setstate) on the root component: React avoids unnecessary DOM updates. +* Although rendering is synchronous once it starts, `root.render(...)` is not. This means code after `root.render()` may run before any effects (`useLayoutEffect`, `useEffect`) of that specific render are fired. This is usually fine and rarely needs adjustment. In rare cases where effect timing matters, you can wrap `root.render(...)` in [`flushSync`](https://react.dev/reference/react-dom/client/flushSync) to ensure the initial render runs fully synchronously. + + ```js + const root = createRoot(document.getElementById('root')); + root.render(); + // 🚩 The HTML will not include the rendered yet: + console.log(document.body.innerHTML); + ``` + --- ### `root.unmount()` {/*root-unmount*/} From 420c2f6467752559f655fdbdd387369b95a51db3 Mon Sep 17 00:00:00 2001 From: Matt Carroll <7158882+mattcarrollcode@users.noreply.github.com> Date: Tue, 8 Apr 2025 14:24:54 -0700 Subject: [PATCH 3/4] Add React Conf banner (#7729) --- src/components/Layout/Page.tsx | 4 ++-- src/components/SocialBanner.tsx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/Layout/Page.tsx b/src/components/Layout/Page.tsx index 24d37958..1040e1aa 100644 --- a/src/components/Layout/Page.tsx +++ b/src/components/Layout/Page.tsx @@ -8,7 +8,7 @@ import {useRouter} from 'next/router'; import {SidebarNav} from './SidebarNav'; import {Footer} from './Footer'; import {Toc} from './Toc'; -// import SocialBanner from '../SocialBanner'; +import SocialBanner from '../SocialBanner'; import {DocsPageFooter} from 'components/DocsFooter'; import {Seo} from 'components/Seo'; import PageHeading from 'components/PageHeading'; @@ -137,7 +137,7 @@ export function Page({ /> )} - {/**/} + Date: Wed, 9 Apr 2025 06:11:12 -0700 Subject: [PATCH 4/4] Add React Conf to conferences.md and move past conferences (#7730) * Add React Conf conferences.md and move past conferences * Update conferences.md --- src/content/community/conferences.md | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/src/content/community/conferences.md b/src/content/community/conferences.md index 46636d4c..17dd9615 100644 --- a/src/content/community/conferences.md +++ b/src/content/community/conferences.md @@ -10,16 +10,6 @@ Do you know of a local React.js conference? Add it here! (Please keep the list c ## Upcoming Conferences {/*upcoming-conferences*/} -### React Paris 2025 {/*react-paris-2025*/} -March 20 - 21, 2025. In-person in Paris, France (hybrid event) - -[Website](https://react.paris/) - [Twitter](https://x.com/BeJS_) - -### React Native Connection 2025 {/*react-native-connection-2025*/} -April 3 (Reanimated Training) + April 4 (Conference), 2025. Paris, France. - -[Website](https://reactnativeconnection.io/) - [X](https://x.com/reactnativeconn) - [Bluesky](https://bsky.app/profile/reactnativeconnect.bsky.social) - ### CityJS London 2025 {/*cityjs-london*/} April 23 - 25, 2025. In-person in London, UK @@ -50,6 +40,11 @@ September 2-4, 2025. Wrocław, Poland. [Website](https://www.reactuniverseconf.com/) - [Twitter](https://twitter.com/react_native_eu) - [LinkedIn](https://www.linkedin.com/events/reactuniverseconf7163919537074118657/) +### React Conf 2025 {/*react-conf-2025*/} +October 7-8, 2025. Henderson, Nevada, USA and free livestream + +[Website](https://conf.react.dev/) - [Twitter](https://x.com/reactjs) - [Bluesky](https://bsky.app/profile/react.dev) + ### React India 2025 {/*react-india-2025*/} October 31 - November 01, 2025. In-person in Goa, India (hybrid event) + Oct 15 2025 - remote day @@ -58,6 +53,16 @@ October 31 - November 01, 2025. In-person in Goa, India (hybrid event) + Oct 15 ## Past Conferences {/*past-conferences*/} +### React Paris 2025 {/*react-paris-2025*/} +March 20 - 21, 2025. In-person in Paris, France (hybrid event) + +[Website](https://react.paris/) - [Twitter](https://x.com/BeJS_) + +### React Native Connection 2025 {/*react-native-connection-2025*/} +April 3 (Reanimated Training) + April 4 (Conference), 2025. Paris, France. + +[Website](https://reactnativeconnection.io/) - [X](https://x.com/reactnativeconn) - [Bluesky](https://bsky.app/profile/reactnativeconnect.bsky.social) + ### React Day Berlin 2024 {/*react-day-berlin-2024*/} December 13 & 16, 2024. In-person in Berlin, Germany + remote (hybrid event)