-
Notifications
You must be signed in to change notification settings - Fork 49.6k
[Fizz] Block on Suspensey Fonts during reveal #33342
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
+15
−2
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Comparing: 8ce15b0...1061fda Critical size changesIncludes critical production bundles, as well as any change greater than 2%:
Significant size changesIncludes any change greater than 0.2%: Expand to show
|
eps1lon
approved these changes
May 23, 2025
github-actions bot
pushed a commit
that referenced
this pull request
May 23, 2025
This is the same technique we do for the client except we don't check whether this is newly created font loading to keep code small. Unfortunately, we can't use this technique for Suspensey images. They'll need to block before we call `startViewTransition` in a separate refactor. This is due to a bug in Chrome where `img.decode()` doesn't resolve until `startViewTransition` does. DiffTrain build for [c0464ae](c0464ae)
github-actions bot
pushed a commit
to code/lib-react
that referenced
this pull request
May 23, 2025
This is the same technique we do for the client except we don't check whether this is newly created font loading to keep code small. Unfortunately, we can't use this technique for Suspensey images. They'll need to block before we call `startViewTransition` in a separate refactor. This is due to a bug in Chrome where `img.decode()` doesn't resolve until `startViewTransition` does. DiffTrain build for [c0464ae](facebook@c0464ae)
github-actions bot
pushed a commit
to code/lib-react
that referenced
this pull request
May 23, 2025
This is the same technique we do for the client except we don't check whether this is newly created font loading to keep code small. Unfortunately, we can't use this technique for Suspensey images. They'll need to block before we call `startViewTransition` in a separate refactor. This is due to a bug in Chrome where `img.decode()` doesn't resolve until `startViewTransition` does. DiffTrain build for [c0464ae](facebook@c0464ae)
17 tasks
mergify bot
added a commit
to robfrank/linklift
that referenced
this pull request
Oct 7, 2025
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 19.1.1 to 19.2.0. Release notes *Sourced from [react's releases](https://github.com/facebook/react/releases).* > 19.2.0 (Oct 1, 2025) > -------------------- > > Below is a list of all new features, APIs, and bug fixes. > > Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information. > > New React Features > ------------------ > > * [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children. > * [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event). > * [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over. > * [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools > > New React DOM Features > ---------------------- > > * Added resume APIs for partial pre-rendering with Web Streams: > + [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream. > + [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML. > * Added resume APIs for partial pre-rendering with Node Streams: > + [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream. > + [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML. > * Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs. > > Notable changes > --------------- > > * React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics. > * Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js > * Use underscore instead of `:` IDs generated by useId > > All Changes > ----------- > > ### React > > * `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([`@acdlite`](https://github.com/acdlite) [`@sebmarkbage`](https://github.com/sebmarkbage) and many others) > * Stringify context as "SomeContext" instead of "SomeContext.Provider" ([`@kassens`](https://github.com/kassens) [#33507](https://redirect.github.com/facebook/react/pull/33507)) > * Include stack of cause of React instrumentation errors with `%o` placeholder ([`@eps1lon`](https://github.com/eps1lon) [#34198](https://redirect.github.com/facebook/react/pull/34198)) > * Fix infinite `useDeferredValue` loop in popstate event ([`@acdlite`](https://github.com/acdlite) [#32821](https://redirect.github.com/facebook/react/pull/32821)) > * Fix a bug when an initial value was passed to `useDeferredValue` ([`@acdlite`](https://github.com/acdlite) [#34376](https://redirect.github.com/facebook/react/pull/34376)) > * Fix a crash when submitting forms with Client Actions ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33055](https://redirect.github.com/facebook/react/pull/33055)) > * Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([`@sebmarkbage`](https://github.com/sebmarkbage) [#32900](https://redirect.github.com/facebook/react/pull/32900)) > * Avoid stack overflow on wide trees during Hot Reload ([`@sophiebits`](https://github.com/sophiebits) [#34145](https://redirect.github.com/facebook/react/pull/34145)) > * Improve Owner and Component stacks in various places ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#33629](https://redirect.github.com/facebook/react/pull/33629), [#33724](https://redirect.github.com/facebook/react/pull/33724), [#32735](https://redirect.github.com/facebook/react/pull/32735), [#33723](https://redirect.github.com/facebook/react/pull/33723)) > * Add `cacheSignal` ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33557](https://redirect.github.com/facebook/react/pull/33557)) > > ### React DOM > > * Block on Suspensey Fonts during reveal of server-side-rendered content ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33342](https://redirect.github.com/facebook/react/pull/33342)) > * Use underscore instead of `:` for IDs generated by `useId` ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#32001](https://redirect.github.com/facebook/react/pull/32001), [facebook/react#33342](https://redirect.github.com/facebook/react/pull/33342)[#33099](https://redirect.github.com/facebook/react/pull/33099), [#33422](https://redirect.github.com/facebook/react/pull/33422)) > * Stop warning when ARIA 1.3 attributes are used ([`@Abdul-Omira`](https://github.com/Abdul-Omira) [#34264](https://redirect.github.com/facebook/react/pull/34264)) > * Allow `nonce` to be used on hoistable styles ([`@Andarist`](https://github.com/Andarist) [#32461](https://redirect.github.com/facebook/react/pull/32461)) > * Warn for using a React owned node as a Container if it also has text content ([`@sebmarkbage`](https://github.com/sebmarkbage) [#32774](https://redirect.github.com/facebook/react/pull/32774)) ... (truncated) Changelog *Sourced from [react's changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md).* > 19.2.0 (October 1st, 2025) > -------------------------- > > Below is a list of all new features, APIs, and bug fixes. > > Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information. > > ### New React Features > > * [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children. > * [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event). > * [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over. > * [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools > > ### New React DOM Features > > * Added resume APIs for partial pre-rendering with Web Streams: > + [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream. > + [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML. > * Added resume APIs for partial pre-rendering with Node Streams: > + [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream. > + [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML. > * Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs. > > ### Notable changes > > * React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics. > * Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js > * Use underscore instead of `:` IDs generated by useId > > ### All Changes > > #### React > > * `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([`@acdlite`](https://github.com/acdlite) [`@sebmarkbage`](https://github.com/sebmarkbage) and many others) > * Stringify context as "SomeContext" instead of "SomeContext.Provider" ([`@kassens`](https://github.com/kassens) [#33507](https://redirect.github.com/facebook/react/pull/33507)) > * Include stack of cause of React instrumentation errors with `%o` placeholder ([`@eps1lon`](https://github.com/eps1lon) [#34198](https://redirect.github.com/facebook/react/pull/34198)) > * Fix infinite `useDeferredValue` loop in popstate event ([`@acdlite`](https://github.com/acdlite) [#32821](https://redirect.github.com/facebook/react/pull/32821)) > * Fix a bug when an initial value was passed to `useDeferredValue` ([`@acdlite`](https://github.com/acdlite) [#34376](https://redirect.github.com/facebook/react/pull/34376)) > * Fix a crash when submitting forms with Client Actions ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33055](https://redirect.github.com/facebook/react/pull/33055)) > * Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([`@sebmarkbage`](https://github.com/sebmarkbage) [#32900](https://redirect.github.com/facebook/react/pull/32900)) > * Avoid stack overflow on wide trees during Hot Reload ([`@sophiebits`](https://github.com/sophiebits) [#34145](https://redirect.github.com/facebook/react/pull/34145)) > * Improve Owner and Component stacks in various places ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#33629](https://redirect.github.com/facebook/react/pull/33629), [#33724](https://redirect.github.com/facebook/react/pull/33724), [#32735](https://redirect.github.com/facebook/react/pull/32735), [#33723](https://redirect.github.com/facebook/react/pull/33723)) > * Add `cacheSignal` ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33557](https://redirect.github.com/facebook/react/pull/33557)) > > #### React DOM > > * Block on Suspensey Fonts during reveal of server-side-rendered content ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33342](https://redirect.github.com/facebook/react/pull/33342)) > * Use underscore instead of `:` for IDs generated by `useId` ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#32001](https://redirect.github.com/facebook/react/pull/32001), [facebook/react#33342](https://redirect.github.com/facebook/react/pull/33342)[#33099](https://redirect.github.com/facebook/react/pull/33099), [#33422](https://redirect.github.com/facebook/react/pull/33422)) > * Stop warning when ARIA 1.3 attributes are used ([`@Abdul-Omira`](https://github.com/Abdul-Omira) [#34264](https://redirect.github.com/facebook/react/pull/34264)) > * Allow `nonce` to be used on hoistable styles ([`@Andarist`](https://github.com/Andarist) [#32461](https://redirect.github.com/facebook/react/pull/32461)) ... (truncated) Commits * [`5667a41`](facebook/react@5667a41) Bump next prerelease version numbers ([#34639](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34639)) * [`8bb7241`](facebook/react@8bb7241) Bump useEffectEvent to Canary ([#34610](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34610)) * [`e3c9656`](facebook/react@e3c9656) Ensure Performance Track are Clamped and Don't overlap ([#34509](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34509)) * [`68f00c9`](facebook/react@68f00c9) Release Activity in Canary ([#34374](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34374)) * [`0e10ee9`](facebook/react@0e10ee9) [Reconciler] Set ProfileMode for Host Root Fiber by default in dev ([#34432](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34432)) * [`3bf8ab4`](facebook/react@3bf8ab4) Add missing Activity export to development mode ([#34439](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34439)) * [`1549bda`](facebook/react@1549bda) [Flight] Only assign `_store` in dev mode when creating lazy types ([#34354](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34354)) * [`bb6f0c8`](facebook/react@bb6f0c8) [Flight] Fix wrong missing key warning when static child is blocked ([#34350](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34350)) * [`05addfc`](facebook/react@05addfc) Update Flow to 0.266 ([#34271](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34271)) * [`ec5dd0a`](facebook/react@ec5dd0a) Update Flow to 0.257 ([#34253](https://github.com/facebook/react/tree/HEAD/packages/react/issues/34253)) * Additional commits viewable in [compare view](https://github.com/facebook/react/commits/v19.2.0/packages/react) [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
mergify bot
added a commit
to robfrank/linklift
that referenced
this pull request
Oct 7, 2025
Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 19.1.1 to 19.2.0. Release notes *Sourced from [react-dom's releases](https://github.com/facebook/react/releases).* > 19.2.0 (Oct 1, 2025) > -------------------- > > Below is a list of all new features, APIs, and bug fixes. > > Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information. > > New React Features > ------------------ > > * [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children. > * [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event). > * [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over. > * [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools > > New React DOM Features > ---------------------- > > * Added resume APIs for partial pre-rendering with Web Streams: > + [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream. > + [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML. > * Added resume APIs for partial pre-rendering with Node Streams: > + [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream. > + [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML. > * Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs. > > Notable changes > --------------- > > * React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics. > * Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js > * Use underscore instead of `:` IDs generated by useId > > All Changes > ----------- > > ### React > > * `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([`@acdlite`](https://github.com/acdlite) [`@sebmarkbage`](https://github.com/sebmarkbage) and many others) > * Stringify context as "SomeContext" instead of "SomeContext.Provider" ([`@kassens`](https://github.com/kassens) [#33507](https://redirect.github.com/facebook/react/pull/33507)) > * Include stack of cause of React instrumentation errors with `%o` placeholder ([`@eps1lon`](https://github.com/eps1lon) [#34198](https://redirect.github.com/facebook/react/pull/34198)) > * Fix infinite `useDeferredValue` loop in popstate event ([`@acdlite`](https://github.com/acdlite) [#32821](https://redirect.github.com/facebook/react/pull/32821)) > * Fix a bug when an initial value was passed to `useDeferredValue` ([`@acdlite`](https://github.com/acdlite) [#34376](https://redirect.github.com/facebook/react/pull/34376)) > * Fix a crash when submitting forms with Client Actions ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33055](https://redirect.github.com/facebook/react/pull/33055)) > * Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([`@sebmarkbage`](https://github.com/sebmarkbage) [#32900](https://redirect.github.com/facebook/react/pull/32900)) > * Avoid stack overflow on wide trees during Hot Reload ([`@sophiebits`](https://github.com/sophiebits) [#34145](https://redirect.github.com/facebook/react/pull/34145)) > * Improve Owner and Component stacks in various places ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#33629](https://redirect.github.com/facebook/react/pull/33629), [#33724](https://redirect.github.com/facebook/react/pull/33724), [#32735](https://redirect.github.com/facebook/react/pull/32735), [#33723](https://redirect.github.com/facebook/react/pull/33723)) > * Add `cacheSignal` ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33557](https://redirect.github.com/facebook/react/pull/33557)) > > ### React DOM > > * Block on Suspensey Fonts during reveal of server-side-rendered content ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33342](https://redirect.github.com/facebook/react/pull/33342)) > * Use underscore instead of `:` for IDs generated by `useId` ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#32001](https://redirect.github.com/facebook/react/pull/32001), [facebook/react#33342](https://redirect.github.com/facebook/react/pull/33342)[#33099](https://redirect.github.com/facebook/react/pull/33099), [#33422](https://redirect.github.com/facebook/react/pull/33422)) > * Stop warning when ARIA 1.3 attributes are used ([`@Abdul-Omira`](https://github.com/Abdul-Omira) [#34264](https://redirect.github.com/facebook/react/pull/34264)) > * Allow `nonce` to be used on hoistable styles ([`@Andarist`](https://github.com/Andarist) [#32461](https://redirect.github.com/facebook/react/pull/32461)) > * Warn for using a React owned node as a Container if it also has text content ([`@sebmarkbage`](https://github.com/sebmarkbage) [#32774](https://redirect.github.com/facebook/react/pull/32774)) ... (truncated) Changelog *Sourced from [react-dom's changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md).* > 19.2.0 (October 1st, 2025) > -------------------------- > > Below is a list of all new features, APIs, and bug fixes. > > Read the [React 19.2 release post](https://react.dev/blog/2025/10/01/react-19-2) for more information. > > ### New React Features > > * [`<Activity>`](https://react.dev/reference/react/Activity): A new API to hide and restore the UI and internal state of its children. > * [`useEffectEvent`](https://react.dev/reference/react/useEffectEvent) is a React Hook that lets you extract non-reactive logic into an [Effect Event](https://react.dev/learn/separating-events-from-effects#declaring-an-effect-event). > * [`cacheSignal`](https://react.dev/reference/react/cacheSignal) (for RSCs) lets your know when the `cache()` lifetime is over. > * [React Performance tracks](https://react.dev/reference/developer-tooling/react-performance-tracks) appear on the Performance panel’s timeline in your browser developer tools > > ### New React DOM Features > > * Added resume APIs for partial pre-rendering with Web Streams: > + [`resume`](https://react.dev/reference/react-dom/server/resume): to resume a prerender to a stream. > + [`resumeAndPrerender`](https://react.dev/reference/react-dom/static/resumeAndPrerender): to resume a prerender to HTML. > * Added resume APIs for partial pre-rendering with Node Streams: > + [`resumeToPipeableStream`](https://react.dev/reference/react-dom/server/resumeToPipeableStream): to resume a prerender to a stream. > + [`resumeAndPrerenderToNodeStream`](https://react.dev/reference/react-dom/static/resumeAndPrerenderToNodeStream): to resume a prerender to HTML. > * Updated [`prerender`](https://react.dev/reference/react-dom/static/prerender) APIs to return a `postponed` state that can be passed to the `resume` APIs. > > ### Notable changes > > * React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming `<ViewTransition>` Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics. > * Add Node Web Streams (`prerender`, `renderToReadableStream`) to server-side-rendering APIs for Node.js > * Use underscore instead of `:` IDs generated by useId > > ### All Changes > > #### React > > * `<Activity />` was developed over many years, starting before `ClassComponent.setState` ([`@acdlite`](https://github.com/acdlite) [`@sebmarkbage`](https://github.com/sebmarkbage) and many others) > * Stringify context as "SomeContext" instead of "SomeContext.Provider" ([`@kassens`](https://github.com/kassens) [#33507](https://redirect.github.com/facebook/react/pull/33507)) > * Include stack of cause of React instrumentation errors with `%o` placeholder ([`@eps1lon`](https://github.com/eps1lon) [#34198](https://redirect.github.com/facebook/react/pull/34198)) > * Fix infinite `useDeferredValue` loop in popstate event ([`@acdlite`](https://github.com/acdlite) [#32821](https://redirect.github.com/facebook/react/pull/32821)) > * Fix a bug when an initial value was passed to `useDeferredValue` ([`@acdlite`](https://github.com/acdlite) [#34376](https://redirect.github.com/facebook/react/pull/34376)) > * Fix a crash when submitting forms with Client Actions ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33055](https://redirect.github.com/facebook/react/pull/33055)) > * Hide/unhide the content of dehydrated suspense boundaries if they resuspend ([`@sebmarkbage`](https://github.com/sebmarkbage) [#32900](https://redirect.github.com/facebook/react/pull/32900)) > * Avoid stack overflow on wide trees during Hot Reload ([`@sophiebits`](https://github.com/sophiebits) [#34145](https://redirect.github.com/facebook/react/pull/34145)) > * Improve Owner and Component stacks in various places ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#33629](https://redirect.github.com/facebook/react/pull/33629), [#33724](https://redirect.github.com/facebook/react/pull/33724), [#32735](https://redirect.github.com/facebook/react/pull/32735), [#33723](https://redirect.github.com/facebook/react/pull/33723)) > * Add `cacheSignal` ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33557](https://redirect.github.com/facebook/react/pull/33557)) > > #### React DOM > > * Block on Suspensey Fonts during reveal of server-side-rendered content ([`@sebmarkbage`](https://github.com/sebmarkbage) [#33342](https://redirect.github.com/facebook/react/pull/33342)) > * Use underscore instead of `:` for IDs generated by `useId` ([`@sebmarkbage`](https://github.com/sebmarkbage), [`@eps1lon`](https://github.com/eps1lon): [#32001](https://redirect.github.com/facebook/react/pull/32001), [facebook/react#33342](https://redirect.github.com/facebook/react/pull/33342)[#33099](https://redirect.github.com/facebook/react/pull/33099), [#33422](https://redirect.github.com/facebook/react/pull/33422)) > * Stop warning when ARIA 1.3 attributes are used ([`@Abdul-Omira`](https://github.com/Abdul-Omira) [#34264](https://redirect.github.com/facebook/react/pull/34264)) > * Allow `nonce` to be used on hoistable styles ([`@Andarist`](https://github.com/Andarist) [#32461](https://redirect.github.com/facebook/react/pull/32461)) ... (truncated) Commits * [`8618113`](facebook/react@8618113) Bump scheduler version ([#34671](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34671)) * [`1bd1f01`](facebook/react@1bd1f01) Ship partial-prerendering APIs to Canary ([#34633](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34633)) * [`2f0649a`](facebook/react@2f0649a) [Fizz] Remove `nonce` option from resume-and-prerender APIs ([#34664](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34664)) * [`5667a41`](facebook/react@5667a41) Bump next prerelease version numbers ([#34639](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34639)) * [`e08f53b`](facebook/react@e08f53b) Match `react-dom/static` test entrypoints and published entrypoints ([#34599](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34599)) * [`8bb7241`](facebook/react@8bb7241) Bump useEffectEvent to Canary ([#34610](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34610)) * [`83c88ad`](facebook/react@83c88ad) Handle fabric root level fragment with compareDocumentPosition ([#34533](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34533)) * [`68f00c9`](facebook/react@68f00c9) Release Activity in Canary ([#34374](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34374)) * [`3168e08`](facebook/react@3168e08) [flags] enable opt-in for enableDefaultTransitionIndicator ([#34373](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/34373)) * [`3434ff4`](facebook/react@3434ff4) Add scrollIntoView to fragment instances ([#32814](https://github.com/facebook/react/tree/HEAD/packages/react-dom/issues/32814)) * Additional commits viewable in [compare view](https://github.com/facebook/react/commits/v19.2.0/packages/react-dom) [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
This was referenced Oct 7, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is the same technique we do for the client except we don't check whether this is newly created font loading to keep code small.
Unfortunately, we can't use this technique for Suspensey images. They'll need to block before we call
startViewTransition
in a separate refactor. This is due to a bug in Chrome whereimg.decode()
doesn't resolve untilstartViewTransition
does.