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/7] 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 c6be96fde..a77cf7a72 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/7] 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 0a3933949..adc6a8d37 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/7] 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 24d379589..1040e1aa7 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/7] 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 46636d4c9..17dd96159 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) From 3e6fec586f949d653235edf79bff058c6b36352a Mon Sep 17 00:00:00 2001 From: alinkedd Date: Mon, 14 Apr 2025 13:58:36 +0200 Subject: [PATCH 5/7] Translate Banner --- src/components/SocialBanner.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/SocialBanner.tsx b/src/components/SocialBanner.tsx index 6de57bd3a..e4c21896e 100644 --- a/src/components/SocialBanner.tsx +++ b/src/components/SocialBanner.tsx @@ -7,7 +7,7 @@ import {useRef, useEffect} from 'react'; import cn from 'classnames'; import {ExternalLink} from './ExternalLink'; -const bannerText = 'Join us for React Conf on Oct 7-8.'; +const bannerText = 'Доєднуйтеся 7-8 жовтня до React Conf.'; const bannerLink = 'https://conf.react.dev/'; const bannerLinkText = 'Детальніше.'; From 8dc3df6989e311223f806d315c1e6aad41d2fe6f Mon Sep 17 00:00:00 2001 From: alinkedd Date: Mon, 14 Apr 2025 21:49:54 +0200 Subject: [PATCH 6/7] Enhance utlc discord notification --- .github/workflows/discord_notify_utlc.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/discord_notify_utlc.yml b/.github/workflows/discord_notify_utlc.yml index ada464d64..3dfa408e4 100644 --- a/.github/workflows/discord_notify_utlc.yml +++ b/.github/workflows/discord_notify_utlc.yml @@ -16,9 +16,11 @@ jobs: uses: tsickert/discord-webhook@v6.0.0 with: webhook-url: ${{ secrets.DISCORD_WEBHOOK_URL_UTLC }} - embed-author-name: ${{ github.event.pull_request.user.login }} - embed-author-url: ${{ github.event.pull_request.user.html_url }} - embed-author-icon-url: ${{ github.event.pull_request.user.avatar_url }} - embed-title: '#${{ github.event.number }} (+${{github.event.pull_request.additions}} -${{github.event.pull_request.deletions}}): ${{ github.event.pull_request.title }}' + embed-author-name: ${{ github.event.sender.login }} + embed-author-url: ${{ github.event.sender.html_url }} + embed-author-icon-url: ${{ github.event.sender.avatar_url }} + embed-title: "${{ github.event.action == 'closed' && github.event.pull_request.merged == true && 'merged' || github.event.action }} #${{ github.event.number }}: ${{ github.event.pull_request.title }}" embed-description: ${{ github.event.pull_request.body }} embed-url: ${{ github.event.pull_request.html_url }} + embed-footer-text: > + diff: +${{github.event.pull_request.additions}} -${{github.event.pull_request.deletions}} From ea86b7b4eddbab8f14315b4d0b06937227aa5feb Mon Sep 17 00:00:00 2001 From: alinkedd Date: Mon, 14 Apr 2025 22:06:03 +0200 Subject: [PATCH 7/7] Trying to fix analyze comment workflow --- .github/workflows/analyze_comment.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/analyze_comment.yml b/.github/workflows/analyze_comment.yml index d43380ba8..b5b791a11 100644 --- a/.github/workflows/analyze_comment.yml +++ b/.github/workflows/analyze_comment.yml @@ -6,7 +6,8 @@ on: types: - completed -permissions: {} +permissions: + pull-requests: write jobs: comment: