Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Oct 20, 2025

Bumps react and @types/react. These dependencies needed to be updated together.
Updates react from 18.3.1 to 19.2.0

Release notes

Sourced from react's 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 for more information.

New React Features

  • <Activity>: A new API to hide and restore the UI and internal state of its children.
  • useEffectEvent is a React Hook that lets you extract non-reactive logic into an Effect Event.
  • cacheSignal (for RSCs) lets your know when the cache() lifetime is over.
  • 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:
  • Added resume APIs for partial pre-rendering with Node Streams:
  • Updated 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

React DOM

... (truncated)

Changelog

Sourced from react's changelog.

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 for more information.

New React Features

  • <Activity>: A new API to hide and restore the UI and internal state of its children.
  • useEffectEvent is a React Hook that lets you extract non-reactive logic into an Effect Event.
  • cacheSignal (for RSCs) lets your know when the cache() lifetime is over.
  • 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:
  • Added resume APIs for partial pre-rendering with Node Streams:
  • Updated 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

React DOM

... (truncated)

Commits

Updates @types/react from 18.3.12 to 19.2.2

Commits

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 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 <dependency name> 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)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Oct 20, 2025
@dependabot dependabot bot requested review from a team as code owners October 20, 2025 04:15
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Oct 20, 2025
@fossabot
Copy link

fossabot bot commented Oct 20, 2025

fossabot is Thinking

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Oct 20, 2025

Deploying after-town-hall with  Cloudflare Pages  Cloudflare Pages

Latest commit: cd7f89e
Status:🚫  Build failed.

View logs

@fossabot
Copy link

fossabot bot commented Oct 20, 2025

Needs Review

I recommend reviewing this upgrade before merging because React has been upgraded to version 19.2.0 while react-dom remains at 18.3.1, creating a major version mismatch. Although the codebase is already using the modern createRoot API and functional components with hooks (avoiding all deprecated APIs), the version mismatch between React core and react-dom requires upgrading react-dom to version 19.x to ensure compatibility. Additionally, @​types/react-dom should be updated to version 19.x to match the upgraded @​types/react 19.2.2. The good news is that no code changes are required since the application already follows React 19 best practices.

What we checked

  • React upgraded to ^19.2.0 while react-dom remains at ^18.3.1, creating a major version mismatch that requires react-dom upgrade to 19.x [1]
  • react-dom at version ^18.3.1 needs to be upgraded to ^19.2.0 to match React core library version [2]
  • @​types/react-dom at version ^18.3.1 should be upgraded to ^19.x to match @​types/react 19.2.2 [3]
  • Already using modern createRoot API from react-dom/client - no code changes needed for React 19 compatibility [4]
  • Application correctly uses createRoot instead of deprecated ReactDOM.render - compatible with React 19 [5]
  • Official React 19 upgrade guide confirms react-dom must be upgraded alongside React core library to maintain compatibility [6]

Dependency Usage

React serves as the foundational UI framework for this community events application, with the useState hook powering interactive features across the navigation menu, community event displays, and breakout room management forms. The library enables a multi-section landing page experience with smooth scrolling navigation between global townhalls, community events, and breakout rooms, supporting the application's core mission of organizing and presenting Catalyst community gatherings. The architecture follows a standard component-based pattern with state management distributed across four stateful components (NavBar, CommunityCards, HostRooms, and previously undetected NavBar mobile menu).

This code initializes a React application by rendering the App component wrapped in StrictMode into the DOM element with id "root".

This code imports React's useState hook to manage state in the CommunityCards component, which displays community events with their details like name, time, links, and descriptions.

View 1 more usage

This code imports the useState hook to manage state for a component that handles breakout room data and renders a form for creating or editing breakout rooms.

Other Usages (3)

These usages were analyzed but no breaking changes were detected:

react

Changes

The react dependency upgrade introduces 22 breaking changes requiring Node.js 18+, removes legacy APIs (propTypes, defaultProps, string refs, ReactDOM.render, findDOMNode), and moves to mandatory concurrent rendering patterns with createRoot. Additionally, 60 new features are added including stable React Server Components, Actions with useActionState, useOptimistic for optimistic updates, form Actions, Document Metadata support, and the use() API for reading resources in render, while 44 bug fixes address issues with Suspense, hydration, and useSyncExternalStore.

View 280 more changes
  • <Activity>: A new API to hide and restore the UI and internal state of its children. (vv19.2.0, release notes)
  • useEffectEvent is a React Hook that lets you extract non-reactive logic into an Effect Event. (vv19.2.0, release notes)
  • cacheSignal (for RSCs) lets your know when the cache() lifetime is over. (vv19.2.0, release notes)
  • React Performance tracks appear on the Performance panel’s timeline in your browser developer tools (vv19.2.0, release notes)
  • Added resume APIs for partial pre-rendering with Web Streams: (vv19.2.0, release notes)
  • resume: to resume a prerender to a stream. (vv19.2.0, release notes)
  • resumeAndPrerender: to resume a prerender to HTML. (vv19.2.0, release notes)
  • Updated prerender APIs to return a postponed state that can be passed to the resume APIs. (vv19.2.0, release notes)
  • 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. (vv19.2.0, release notes)
  • Add Node Web Streams (prerender, renderToReadableStream) to server-side-rendering APIs for Node.js (vv19.2.0, release notes)
  • Use underscore instead of : IDs generated by useId (vv19.2.0, release notes)
  • <Activity /> was developed over many years, starting before ClassComponent.setState (@​acdlite @​sebmarkbage and many others) (vv19.2.0, release notes)
  • Stringify context as "SomeContext" instead of "SomeContext.Provider" (@​kassens #33507) (vv19.2.0, release notes)
  • Include stack of cause of React instrumentation errors with %o placeholder (@​eps1lon #34198) (vv19.2.0, release notes)
  • Fix infinite useDeferredValue loop in popstate event (@​acdlite #32821) (vv19.2.0, release notes)
  • Fix a bug when an initial value was passed to useDeferredValue (@​acdlite #34376) (vv19.2.0, release notes)
  • Fix a crash when submitting forms with Client Actions (@​sebmarkbage #33055) (vv19.2.0, release notes)
  • Hide/unhide the content of dehydrated suspense boundaries if they resuspend (@​sebmarkbage #32900) (vv19.2.0, release notes)
  • Avoid stack overflow on wide trees during Hot Reload (@​sophiebits #34145) (vv19.2.0, release notes)
  • Improve Owner and Component stacks in various places (@​sebmarkbage, @​eps1lon: #33629, #33724, #32735, #33723) (vv19.2.0, release notes)
  • Add cacheSignal (@​sebmarkbage #33557) (vv19.2.0, release notes)
  • Block on Suspensey Fonts during reveal of server-side-rendered content (@​sebmarkbage #33342) (vv19.2.0, release notes)
  • Use underscore instead of : for IDs generated by useId (@​sebmarkbage, @​eps1lon: #32001, [Fizz] Block on Suspensey Fonts during reveal facebook/react#33342#33099, #33422) (vv19.2.0, release notes)
  • Stop warning when ARIA 1.3 attributes are used (@​Abdul-Omira #34264) (vv19.2.0, release notes)
  • Allow nonce to be used on hoistable styles (@​Andarist #32461) (vv19.2.0, release notes)
  • Warn for using a React owned node as a Container if it also has text content (@​sebmarkbage #32774) (vv19.2.0, release notes)
  • s/HTML/text for for error messages if text hydration mismatches (@​rickhanlonii #32763) (vv19.2.0, release notes)
  • Fix a bug with React.use inside React.lazy-ed Component (@​hi-ogawa #33941) (vv19.2.0, release notes)
  • Enable the progressiveChunkSize option for server-side-rendering APIs (@​sebmarkbage #33027) (vv19.2.0, release notes)
  • Fix a bug with deeply nested Suspense inside Suspense fallback when server-side-rendering (@​gnoff #33467) (vv19.2.0, release notes)
  • Avoid hanging when suspending after aborting while rendering (@​gnoff #34192) (vv19.2.0, release notes)
  • Add Node Web Streams to server-side-rendering APIs for Node.js (@​sebmarkbage #33475) (vv19.2.0, release notes)
  • Preload <img> and <link> using hints before they're rendered (@​sebmarkbage #34604) (vv19.2.0, release notes)
  • Log error if production elements are rendered during development (@​eps1lon #34189) (vv19.2.0, release notes)
  • Fix a bug when returning a Temporary reference (e.g. a Client Reference) from Server Functions (@​sebmarkbage #34084, @​denk0403 #33761) (vv19.2.0, release notes)
  • Pass line/column to filterStackFrame (@​eps1lon #33707) (vv19.2.0, release notes)
  • Support Async Modules in Turbopack Server References (@​lubieowoce #34531) (vv19.2.0, release notes)
  • Add support for .mjs file extension in Webpack (@​jennyscript #33028) (vv19.2.0, release notes)
  • Fix a wrong missing key warning (@​unstubbable #34350) (vv19.2.0, release notes)
  • Make console log resolve in predictable order (@​sebmarkbage #33665) (vv19.2.0, release notes)
  • createContainer and createHydrationContainer had their parameter order adjusted after on* handlers to account for upcoming experimental APIs (vv19.2.0, release notes)
  • New Violations: Disallow calling use within try/catch blocks. (@​poteto in #34040) (vv19.2.0, release notes)
  • New Violations: Disallow calling useEffectEvent functions in arbitrary closures. (@​jbrown215 in #33544) (vv19.2.0, release notes)
  • Handle React.useEffect in addition to useEffect in rules-of-hooks. (@​Ayc0 in #34076) (vv19.2.0, release notes)
  • Added react-hooks settings config option that to accept additionalEffectHooks that are used across exhaustive-deps and rules-of-hooks rules. (@​jbrown215) in #34497 (vv19.2.0, release notes)
  • Fixed Owner Stacks to work with ES2015 function.name semantics (#33680 by @​hoxyq) (vv19.1.1, release notes)
  • Added Owner Stack feature to represent components directly responsible for rendering a particular component (vv19.1.0, release notes)
  • Owner Stacks can be logged when debugging (vv19.1.0, release notes)
  • Owner Stacks can be used to enhance error overlays or other development tools (vv19.1.0, release notes)
  • Owner Stacks are only available in development builds (vv19.1.0, release notes)
  • Component Stacks in production remain unchanged (vv19.1.0, release notes)
  • An Owner Stack is a development-only stack trace that helps identify which components are responsible for rendering a particular component. An Owner Stack is distinct from a Component Stacks, which shows the hierarchy of components leading to an error. (vv19.1.0, release notes)
  • The captureOwnerStack API is only available in development mode and returns a Owner Stack, if available. The API can be used to enhance error overlays or log component relationships when debugging. #29923, #32353, #30306, (vv19.1.0, release notes)
  • Enhanced support for Suspense boundaries to be used anywhere, including the client, server, and during hydration. #32069, #32163, #32224, #32252 (vv19.1.0, release notes)
  • Reduced unnecessary client rendering through improved hydration scheduling #31751 (vv19.1.0, release notes)
  • Increased priority of client rendered Suspense boundaries #31776 (vv19.1.0, release notes)
  • Fixed frozen fallback states by rendering unfinished Suspense boundaries on the client. #31620 (vv19.1.0, release notes)
  • Reduced garbage collection pressure by improving Suspense boundary retries. #31667 (vv19.1.0, release notes)
  • Fixed erroneous “Waiting for Paint” log when the passive effect phase was not delayed #31526 (vv19.1.0, release notes)
  • Fixed a regression causing key warnings for flattened positional children in development mode. #32117 (vv19.1.0, release notes)
  • Updated useId to use valid CSS selectors, changing format from :r123: to «r123». #32001 (vv19.1.0, release notes)
  • Added a dev-only warning for null/undefined created in useEffect, useInsertionEffect, and useLayoutEffect. #32355 (vv19.1.0, release notes)
  • Improved consistency across prod and dev to improve compatibility with Google Closure Complier and bindings #31808 (vv19.1.0, release notes)
  • Improve passive effect scheduling for consistent task yielding. #31785 (vv19.1.0, release notes)
  • Fixed asserts in React Native when passChildrenWhenCloningPersistedNodes is enabled for OffscreenComponent rendering. #32528 (vv19.1.0, release notes)
  • Fixed component name resolution for Portal #32640 (vv19.1.0, release notes)
  • Added support for beforetoggle and toggle events on the dialog element. #32479 #32479 (vv19.1.0, release notes)
  • Fixed double warning when the href attribute is an empty string #31783 (vv19.1.0, release notes)
  • Fixed an edge case where getHoistableRoot() didn’t work properly when the container was a Document #32321 (vv19.1.0, release notes)
  • Removed support for using HTML comments (e.g. <!-- -->) as a DOM container. #32250 (vv19.1.0, release notes)
  • Added support for <script> and <template> tags to be nested within <select> tags. #31837 (vv19.1.0, release notes)
  • Fixed responsive images to be preloaded as HTML instead of headers #32445 (vv19.1.0, release notes)
  • Added exports field to package.json for use-sync-external-store to support various entrypoints. #25231 (vv19.1.0, release notes)
  • Added unstable_prerender, a new experimental API for prerendering React Server Components on the server #31724 (vv19.1.0, release notes)
  • Fixed an issue where streams would hang when receiving new chunks after a global error #31840, #31851 (vv19.1.0, release notes)
  • Fixed an issue where pending chunks were counted twice. #31833 (vv19.1.0, release notes)
  • Added support for streaming in edge environments #31852 (vv19.1.0, release notes)
  • Added support for sending custom error names from a server so that they are available in the client for console replaying. #32116 (vv19.1.0, release notes)
  • Updated the server component wire format to remove IDs for hints and console.log because they have no return value #31671 (vv19.1.0, release notes)
  • Exposed registerServerReference in client builds to handle server references in different environments. #32534 (vv19.1.0, release notes)
  • Added react-server-dom-parcel package which integrates Server Components with the Parcel bundler #31725, #32132, #31799, #32294, #31741 (vv19.1.0, release notes)
  • A react@​18.3 release has been published that is identical to 18.2 but adds warnings for deprecated APIs (vv19.0.0, release notes)
  • react@​18.3 includes warnings for other changes needed for React 19 (vv19.0.0, release notes)
  • Users are recommended to upgrade to React 18.3.1 before upgrading to React 19 to identify issues (vv19.0.0, release notes)
  • Actions: startTransition can now accept async functions. Functions passed to startTransition are called “Actions”. A given Transition can include one or more Actions which update state in the background and update the UI with one commit. In addition to updating state, Actions can now perform side effects including async requests, and the Action will wait for the work to finish before finishing the Transition. This feature allows Transitions to include side effects like fetch() in the pending state, and provides support for error handling, and optimistic updates. (vv19.0.0, release notes)
  • useActionState: is a new hook to order Actions inside of a Transition with access to the state of the action, and the pending state. It accepts a reducer that can call Actions, and the initial state used for first render. It also accepts an optional string that is used if the action is passed to a form action prop to support progressive enhancement in forms. (vv19.0.0, release notes)
  • useOptimistic: is a new hook to update state while a Transition is in progress. It returns the state, and a set function that can be called inside a transition to “optimistically” update the state to expected final value immediately while the Transition completes in the background. When the transition finishes, the state is updated to the new value. (vv19.0.0, release notes)
  • use: is a new API that allows reading resources in render. In React 19, use accepts a promise or Context. If provided a promise, use will suspend until a value is resolved. use can only be used in render but can be called conditionally. (vv19.0.0, release notes)
  • ref as a prop: Refs can now be used as props, removing the need for forwardRef. (vv19.0.0, release notes)
  • Suspense sibling pre-warming: When a component suspends, React will immediately commit the fallback of the nearest Suspense boundary, without waiting for the entire sibling tree to render. After the fallback commits, React will schedule another render for the suspended siblings to “pre-warm” lazy requests. (vv19.0.0, release notes)
  • <form> action prop: Form Actions allow you to manage forms automatically and integrate with useFormStatus. When a <form> action succeeds, React will automatically reset the form for uncontrolled components. The form can be reset manually with the new requestFormReset API. (vv19.0.0, release notes)
  • <button> and <input> formAction prop: Actions can be passed to the formAction prop to configure form submission behavior. This allows using different Actions depending on the input. (vv19.0.0, release notes)
  • useFormStatus: is a new hook that provides the status of the parent <form> action, as if the form was a Context provider. The hook returns the values: pending, data, method, and action. (vv19.0.0, release notes)
  • Support for Document Metadata: We’ve added support for rendering document metadata tags in components natively. React will automatically hoist them into the <head> section of the document. (vv19.0.0, release notes)
  • Support for Stylesheets: React 19 will ensure stylesheets are inserted into the <head> on the client before revealing the content of a Suspense boundary that depends on that stylesheet. (vv19.0.0, release notes)
  • Support for async scripts: Async scripts can be rendered anywhere in the component tree and React will handle ordering and deduplication. (vv19.0.0, release notes)
  • Support for preloading resources: React 19 ships with preinit, preload, prefetchDNS, and preconnect APIs to optimize initial page loads by moving discovery of additional resources like fonts out of stylesheet loading. They can also be used to prefetch resources used by an anticipated navigation. (vv19.0.0, release notes)
  • Added prerender and prerenderToNodeStream APIs for static site generation. They are designed to work with streaming environments like Node.js Streams and Web Streams. Unlike renderToString, they wait for data to load for HTML generation. (vv19.0.0, release notes)
  • RSC features such as directives, server components, and server functions are now stable. This means libraries that ship with Server Components can now target React 19 as a peer dependency with a react-server export condition for use in frameworks that support the Full-stack React Architecture. The underlying APIs used to implement a React Server Components bundler or framework do not follow semver and may break between minors in React 19.x. See docs for how to support React Server Components. (vv19.0.0, release notes)
  • element.ref access: React 19 supports ref as a prop, so we’re deprecating element.ref in favor of element.props.ref. Accessing will result in a warning. (vv19.0.0, release notes)
  • react-test-renderer: In React 19, react-test-renderer logs a deprecation warning and has switched to concurrent rendering for web usage. We recommend migrating your tests to @​testinglibrary.com/docs/react-testing-library/intro/) or @​testingesting-library.com/docs/react-native-testing-library/intro) (vv19.0.0, release notes)
  • Remove long-deprecated APIs in React 19 (vv19.0.0, release notes)
  • Upgrade to React 18.3.1 to see additional deprecation warnings before upgrading to React 19 (vv19.0.0, release notes)
  • New JSX Transform is now required: We introduced a new JSX transform in 2020 to improve bundle size and use JSX without importing React. In React 19, we’re adding additional improvements like using ref as a prop and JSX speed improvements that require the new transform. (vv19.0.0, release notes)
  • Errors in render are not re-thrown: Errors that are not caught by an Error Boundary are now reported to window.reportError. Errors that are caught by an Error Boundary are reported to console.error. We’ve introduced onUncaughtError and onCaughtError methods to createRoot and hydrateRoot to customize this error handling. (vv19.0.0, release notes)
  • Removed: propTypes: Using propTypes will now be silently ignored. If required, we recommend migrating to TypeScript or another type-checking solution. (vv19.0.0, release notes)
  • Removed: defaultProps for functions: ES6 default parameters can be used in place. Class components continue to support defaultProps since there is no ES6 alternative. (vv19.0.0, release notes)
  • Removed: contextTypes and getChildContext: Legacy Context for class components has been removed in favor of the contextType API. (vv19.0.0, release notes)
  • Removed: string refs: Any usage of string refs need to be migrated to ref callbacks. (vv19.0.0, release notes)
  • Removed: Module pattern factories: A rarely used pattern that can be migrated to regular functions. (vv19.0.0, release notes)
  • Removed: React.createFactory: Now that JSX is broadly supported, all createFactory usage can be migrated to JSX components. (vv19.0.0, release notes)
  • Removed: react-test-renderer/shallow: This has been a re-export of react-shallow-renderer since React 18. If needed, you can continue to use the third-party package directly. We recommend using @​testinglibrary.com/docs/react-testing-library/intro/) or @​testingesting-library.com/docs/react-native-testing-library/intro) instead. (vv19.0.0, release notes)
  • Removed: react-dom/test-utils: We’ve moved act from react-dom/test-utils to react. All other utilities have been removed. (vv19.0.0, release notes)
  • Removed: ReactDOM.render, ReactDOM.hydrate: These have been removed in favor of the concurrent equivalents: ReactDOM.createRoot and ReactDOM.hydrateRoot. (vv19.0.0, release notes)
  • Removed: unmountComponentAtNode: Removed in favor of root.unmount(). (vv19.0.0, release notes)
  • Removed: ReactDOM.findDOMNode: You can replace ReactDOM.findDOMNode with DOM Refs. (vv19.0.0, release notes)
  • <Context> as a provider: You can now render <Context> as a provider instead of <Context.Provider>. (vv19.0.0, release notes)
  • Cleanup functions for refs: When the component unmounts, React will call the cleanup function returned from the ref callback. (vv19.0.0, release notes)
  • useDeferredValue initial value argument: When provided, useDeferredValue will return the initial value for the initial render of a component, then schedule a re-render in the background with the deferredValue returned. (vv19.0.0, release notes)
  • Support for Custom Elements: React 19 now passes all tests on Custom Elements Everywhere. (vv19.0.0, release notes)
  • StrictMode changes: useMemo and useCallback will now reuse the memoized results from the first render, during the second render. Additionally, StrictMode will now double-invoke ref callback functions on initial mount. (vv19.0.0, release notes)
  • UMD builds removed: To load React 19 with a script tag, we recommend using an ESM-based CDN such as esm.sh. (vv19.0.0, release notes)
  • Diffs for hydration errors: In the case of a mismatch, React 19 logs a single error with a diff of the mismatched content. (vv19.0.0, release notes)
  • Compatibility with third-party scripts and extensions: React will now force a client re-render to fix up any mismatched content caused by elements inserted by third-party JS. (vv19.0.0, release notes)
  • Removed deprecated TypeScript types: (vv19.0.0, release notes)
  • ReactChild (replacement: React.ReactElement | number | string) (vv19.0.0, release notes)
  • ReactFragment (replacement: Iterable<React.ReactNode>) (vv19.0.0, release notes)
  • ReactNodeArray (replacement: ReadonlyArray<React.ReactNode>) (vv19.0.0, release notes)
  • ReactText (replacement: number | string) (vv19.0.0, release notes)
  • VoidFunctionComponent (replacement: FunctionComponent) (vv19.0.0, release notes)
  • VFC (replacement: FC) (vv19.0.0, release notes)
  • Moved to prop-types: Requireable, ValidationMap, Validator, WeakValidationMap (vv19.0.0, release notes)
  • Moved to create-react-class: ClassicComponentClass, ClassicComponent, ClassicElement, ComponentSpec, Mixin, ReactChildren, ReactHTML, ReactSVG, SFCFactory (vv19.0.0, release notes)
  • Disallow implicit return in refs: refs can now accept cleanup functions. When you return something else, we can’t tell if you intentionally returned something not meant to clean up or returned the wrong value. Implicit returns of anything but functions will now error. (vv19.0.0, release notes)
  • Require initial argument to useRef: The initial argument is now required to match useState, createContext etc (vv19.0.0, release notes)
  • Refs are mutable by default: Ref objects returned from useRef() are now always mutable instead of sometimes being immutable. This feature was too confusing for users and conflicted with legit cases where refs were managed by React and manually written to. (vv19.0.0, release notes)
  • Strict ReactElement typing: The props of React elements now default to unknown instead of any if the element is typed as ReactElement (vv19.0.0, release notes)
  • JSX namespace in TypeScript: The global JSX namespace is removed to improve interoperability with other libraries using JSX. Instead, the JSX namespace is available from the React package: import { JSX } from 'react' (vv19.0.0, release notes)
  • Better useReducer typings: Most useReducer usage should not require explicit type arguments. For example, ```diff -useReducer<React.Reducer<State, Action>>(reducer) +useReducer(reducer) (vv19.0.0, release notes)
  • Changed useReducer generic type parameters from <React.Reducer<State, Action>> to <State, [Action]> (vv19.0.0, release notes)
  • Add support for async Actions (#26621, #26726, #28078, #28097, #29226, #29618, #29670, #26716 by @​acdlite and @​sebmarkbage) (vv19.0.0, release notes)
  • Add useActionState() hook to update state based on the result of a Form Action (#27270, #27278, #27309, #27302, #27307, #27366, #27370, #27321, #27374, #27372, #27397, #27399, #27460, #28557, #27570, #27571, #28631, #28788, #29694, #29695, #29694, #29665, #28232, #28319 by @​acdlite, @​eps1lon, and @​rickhanlonii) (vv19.0.0, release notes)
  • Add use() API to read resources in render (#25084, #25202, #25207, #25214, #25226, #25247, #25539, #25538, #25537, #25543, #25561, #25620, #25615, #25922, #25641, #25634, #26232, #26536, #26739, #28233 by @​acdlite, @​MofeiZ, @​sebmarkbage, @​sophiebits, @​eps1lon, and @​hansottowirtz) (vv19.0.0, release notes)
  • Add useOptimistic() hook to display mutated state optimistically during an async mutation (#26740, #26772, #27277, #27453, #27454, #27936 by @​acdlite) (vv19.0.0, release notes)
  • Added an initialValue argument to useDeferredValue() hook (#27500, #27509, #27512, #27888, #27550 by @​acdlite) (vv19.0.0, release notes)
  • Support refs as props, warn on element.ref access (#28348, #28464, #28731 by @​acdlite) (vv19.0.0, release notes)
  • Support Custom Elements (#22184, #26524, #26523, #27511, #24541 by @​josepharhar, @​sebmarkbage, @​gnoff and @​eps1lon) (vv19.0.0, release notes)
  • Add ref cleanup function (#25686, #28883, #28910 by @​sammy-SC), @​jackpope, and @​kassens) (vv19.0.0, release notes)
  • Sibling pre-rendering replaced by sibling pre-warming (#26380, #26549, #30761, #30800, #30762, #30879, #30934, #30952, #31056, #31452 by @​sammy-SC), @​acdlite, @​gnoff, @​jackpope, @​rickhanlonii) (vv19.0.0, release notes)
  • Don’t rethrow errors at the root (#28627, #28641 by @​sebmarkbage) (vv19.0.0, release notes)
  • Batch sync discrete, continuous, and default lanes (#25700 by @​tyao1) (vv19.0.0, release notes)
  • Switch <Context> to mean <Context.Provider> (#28226 by @​gaearon) (vv19.0.0, release notes)
  • Changes to StrictMode (vv19.0.0, release notes)
  • Handle info, group, and groupCollapsed in StrictMode logging (#25172 by @​timneutkens) (vv19.0.0, release notes)
  • Refs are now attached/detached/attached in StrictMode (#25049 by @​sammy-SC) (vv19.0.0, release notes)
  • Fix useSyncExternalStore() hydration in StrictMode (#26791 by @​sophiebits) (vv19.0.0, release notes)
  • Always trigger componentWillUnmount() in StrictMode (#26842 by @​tyao1) (vv19.0.0, release notes)
  • Restore double invoking useState() and useReducer() initializer functions in StrictMode (#28248 by @​eps1lon) (vv19.0.0, release notes)
  • Reuse memoized result from first pass (#25583 by @​acdlite) (vv19.0.0, release notes)
  • Fix useId() in StrictMode (#25713 by @​gnoff) (vv19.0.0, release notes)
  • Add component name to StrictMode error messages (#25718 by @​sammy-SC) (vv19.0.0, release notes)
  • Add support for rendering BigInt (#24580 by @​eps1lon) (vv19.0.0, release notes)
  • act() no longer checks shouldYield which can be inaccurate in test environments (#26317 by @​acdlite) (vv19.0.0, release notes)
  • Warn when keys are spread with props (#25697, #26080 by @​sebmarkbage and @​kassens) (vv19.0.0, release notes)
  • Generate sourcemaps for production build artifacts (#26446 by @​markerikson) (vv19.0.0, release notes)
  • Improve stack diffing algorithm (#27132 by @​KarimP) (vv19.0.0, release notes)
  • Suspense throttling lowered from 500ms to 300ms (#26803 by @​acdlite) (vv19.0.0, release notes)
  • Lazily propagate context changes (#20890 by @​acdlite and @​gnoff) (vv19.0.0, release notes)
  • Immediately rerender pinged fiber (#25074 by @​acdlite) (vv19.0.0, release notes)
  • Move update scheduling to microtask (#26512 by @​acdlite) (vv19.0.0, release notes)
  • Consistently apply throttled retries (#26611, #26802 by @​acdlite) (vv19.0.0, release notes)
  • Suspend Thenable/Lazy if it's used in React.Children (#28284 by @​sebmarkbage) (vv19.0.0, release notes)
  • Detect infinite update loops caused by render phase updates (#26625 by @​acdlite) (vv19.0.0, release notes)
  • Update conditional hooks warning (#29626 by @​sophiebits) (vv19.0.0, release notes)
  • Update error URLs to go to new docs (#27240 by @​rickhanlonii) (vv19.0.0, release notes)
  • Rename the react.element symbol to react.transitional.element (#28813 by @​sebmarkbage) (vv19.0.0, release notes)
  • Fix crash when suspending in shell during useSyncExternalStore() re-render (#27199 by @​acdlite) (vv19.0.0, release notes)
  • Fix incorrect “detected multiple renderers" error in tests (#22797 by @​eps1lon) (vv19.0.0, release notes)
  • Fix bug where effect cleanup may be called twice after bailout (#26561 by @​acdlite) (vv19.0.0, release notes)
  • Fix suspending in shell during discrete update (#25495 by @​acdlite) (vv19.0.0, release notes)
  • Fix memory leak after repeated setState bailouts (#25309 by @​acdlite) (vv19.0.0, release notes)
  • Fix useSyncExternalStore() dropped update when state is dispatched in render phase (#25578 by @​pandaiolo) (vv19.0.0, release notes)
  • Fix logging when rendering a lazy fragment (#30372 by @​tomtom-sherman)) (vv19.0.0, release notes)
  • Remove string refs (#25383, #28322 by @​eps1lon and @​acdlite) (vv19.0.0, release notes)
  • Remove Legacy Context (#30319 by @​kassens) (vv19.0.0, release notes)
  • Remove RefreshRuntime.findAffectedHostInstances (#30538 by @​gaearon) (vv19.0.0, release notes)
  • Remove client caching from cache() API (#27977, #28250 by @​acdlite and @​gnoff) (vv19.0.0, release notes)
  • Remove propTypes (#28324, #28326 by @​gaearon) (vv19.0.0, release notes)
  • Remove defaultProps support, except for classes (#28733 by @​acdlite) (vv19.0.0, release notes)
  • Remove UMD builds (#28735 by @​gnoff) (vv19.0.0, release notes)
  • Remove delay for non-transition updates (#26597 by @​acdlite) (vv19.0.0, release notes)
  • Remove createFactory (#27798 by @​kassens) (vv19.0.0, release notes)
  • Adds Form Actions to handle form submission (#26379, #26674, #26689, #26708, #26714, #26735, #26846, #27358, #28056 by @​sebmarkbage, @​acdlite, and @​jupapios) (vv19.0.0, release notes)
  • Add useFormStatus() hook to provide status information of the last form submission (#26719, #26722, #26788, #29019, #28728, #28413 by @​acdlite and @​eps1lon) (vv19.0.0, release notes)
  • Support for Document Metadata. Adds preinit, preinitModule, preconnect, prefetchDNS, preload, and preloadModule APIs. (vv19.0.0, release notes)
  • #25060, #25243, #25388, #25432, #25436, #25426, #25500, #25480, #25508, #25515, #25514, #25532, #25536, #25534, #25546, #25559, #25569, #25599, #25689, #26106, #26152, #26239, #26237, #26280, #26154, #26256, #26353, #26427, #26450, #26502, #26514, #26531, #26532, #26557, #26871, #26881, #26877, #26873, #26880, #26942, #26938, #26940, #26939, #27030, #27201, #27212, #27217, #27218, #27220, #27224, #27223, #27269, #27260, #27347, #27346, #27361, #27400, #27541, #27610, #28110, #29693, #29732, #29811, #27586, #28069 by @​gnoff, @​sebmarkbage, @​acdlite, @​kassens, @​sokra, @​sweetliquid (vv19.0.0, release notes)
  • Add fetchPriority to <img> and <link> (#25927 by @​styfle) (vv19.0.0, release notes)
  • Add support for SVG transformOrigin prop (#26130 by @​aravarav-ind)) (vv19.0.0, release notes)
  • Add support for onScrollEnd event (#26789 by @​devongovett) (vv19.0.0, release notes)
  • Allow <hr> as child of <select> (#27632 by @​SouSingh) (vv19.0.0, release notes)
  • Add support for Popover API (#27981 by @​eps1lon) (vv19.0.0, release notes)
  • Add support for inert (#24730 by @​eps1lon) (vv19.0.0, release notes)
  • Add support for imageSizes and imageSrcSet (#22550 by @​eps1lon) (vv19.0.0, release notes)
  • Synchronously flush transitions in popstate events (#26025, #27559, #27505, #30759 by @​tyao1 and @​acdlite) (vv19.0.0, release notes)
  • flushSync exhausts queue even if something throws (#26366 by @​acdlite) (vv19.0.0, release notes)
  • Throw error if react and react-dom versions don’t match (#29236 by @​acdlite) (vv19.0.0, release notes)
  • Ensure srcset and src are assigned last on <img> instances (#30340 by @​gnoff) (vv19.0.0, release notes)
  • Javascript URLs are replaced with functions that throw errors (#26507, #29808 by @​sebmarkbage and @​kassens) (vv19.0.0, release notes)
  • Treat toggle and beforetoggle as discrete events (#29176 by @​eps1lon) (vv19.0.0, release notes)
  • Filter out empty src and href attributes (unless for <a href=”” />) (#18513, #28124 by @​bvaughn and @​eps1lon) (vv19.0.0, release notes)
  • Fix unitless scale style property (#25601 by @​JonnyBurger) (vv19.0.0, release notes)
  • Fix onChange error message for controlled <select> (#27740 by @​BikiBiki-das)) (vv19.0.0, release notes)
  • Fix focus restore in child windows after element reorder (#30951 by @​ling1726) (vv19.0.0, release notes)
  • Remove render, hydrate, findDOMNode, unmountComponentAtNode, unstable_createEventHandle, unstable_renderSubtreeIntoContainer, and unstable_runWithPriority. Move createRoot and hydrateRoot to react-dom/client. (#28271 by @​gnoff) (vv19.0.0, release notes)
  • Remove test-utils (#28541 by @​eps1lon) (vv19.0.0, release notes)
  • Remove unstable_flushControlled (#26397 by @​kassens) (vv19.0.0, release notes)
  • Remove legacy mode (#28468 by @​gnoff) (vv19.0.0, release notes)
  • Remove renderToStaticNodeStream() (#28873 by @​gnoff) (vv19.0.0, release notes)
  • Remove unstable_renderSubtreeIntoContainer (#29771 by @​kassens) (vv19.0.0, release notes)
  • Stable release of React Server Components (Many, many PRs by @​sebmarkbage, @​acdlite, @​gnoff, @​sammy-SC, @​gaearon, @​sophiebits, @​unstubbable, @​lubieowoce) (vv19.0.0, release notes)
  • Support Server Actions (#26124, #26632, #27459 by @​sebmarkbage and @​acdlite) (vv19.0.0, release notes)
  • Changes to SSR (vv19.0.0, release notes)
  • Add external runtime which bootstraps hydration on the client for binary transparency (#25437, #26169, #25499 by @​MofeiZ and @​acdlite) (vv19.0.0, release notes)
  • Support subresource integrity for bootstrapScripts and bootstrapModules (#25104 by @​gnoff) (vv19.0.0, release notes)
  • Fix null bytes written at text chunk boundaries (#26228 by @​sophiebits) (vv19.0.0, release notes)
  • Fix logic around attribute serialization (#26526 by @​gnoff) (vv19.0.0, release notes)
  • Fix precomputed chunk cleared on Node 18 (#25645 by @​feedthejim) (vv19.0.0, release notes)
  • Optimize end tag chunks (#27522 by @​yujunjung) (vv19.0.0, release notes)
  • Gracefully handle suspending in DOM configs (#26768 by @​sebmarkbage) (vv19.0.0, release notes)
  • Check for nullish values on ReactCustomFormAction (#26770 by @​sebmarkbage) (vv19.0.0, release notes)
  • Preload bootstrapModules, bootstrapScripts, and update priority queue (#26754, #26753, #27190, #27189 by @​gnoff) (vv19.0.0, release notes)
  • Client render the nearest child or parent suspense boundary if replay errors or is aborted (#27386 by @​sebmarkbage) (vv19.0.0, release notes)
  • Don't bail out of flushing if we still have pending root tasks (#27385 by @​sebmarkbage) (vv19.0.0, release notes)
  • Ensure Resumable State is Serializable (#27388 by @​sebmarkbage) (vv19.0.0, release notes)
  • Remove extra render pass when reverting to client render (#26445 by @​acdlite) (vv19.0.0, release notes)
  • Fix unwinding context during selective hydration (#25876 by @​tyao1) (vv19.0.0, release notes)
  • Stop flowing and then abort if a stream is cancelled (#27405 by @​sebmarkbage) (vv19.0.0, release notes)
  • Pass cancellation reason to abort (#27536 by @​sebmarkbage) (vv19.0.0, release notes)
  • Add onHeaders entrypoint option (#27641, #27712 by @​gnoff) (vv19.0.0, release notes)
  • Escape <style> and <script> textContent to enable rendering inner content without dangerouslySetInnerHTML (#28870, #28871 by @​gnoff) (vv19.0.0, release notes)
  • Fallback to client replaying actions for Blob serialization (#28987 by @​sebmarkbage) (vv19.0.0, release notes)
  • Render Suspense fallback if boundary contains new stylesheet during sync update (#28965 by @​gnoff) (vv19.0.0, release notes)
  • Fix header length tracking (#30327 by @​gnoff) (vv19.0.0, release notes)
  • Use srcset to trigger load event on mount (#30351 by @​gnoff) (vv19.0.0, release notes)
  • Don't perform work when closing stream (#30497 by @​gnoff) (vv19.0.0, release notes)
  • Allow aborting during render (#30488, #30730 by @​gnoff) (vv19.0.0, release notes)
  • Start initial work immediately (#31079 by @​gnoff) (vv19.0.0, release notes)
  • A transition flowing into a dehydrated boundary no longer suspends when showing fallback (#27230 by @​acdlite) (vv19.0.0, release notes)
  • Fix selective hydration triggers false update loop error (#27439 by @​acdlite) (vv19.0.0, release notes)
  • Warn for Child Iterator of all types but allow Generator Components (#28853 by @​sebmarkbage) (vv19.0.0, release notes)
  • Include regular stack trace in serialized errors (#28684, #28738 by @​sebmarkbage) (vv19.0.0, release notes)
  • Aborting early no longer infinitely suspends (#24751 by @​sebmarkbage) (vv19.0.0, release notes)
  • Fix hydration warning suppression in text comparisons (#24784 by @​gnoff) (vv19.0.0, release notes)
  • Changes to error handling in SSR (vv19.0.0, release notes)
  • Add diffs to hydration warnings (#28502, #28512 by @​sebmarkbage) (vv19.0.0, release notes)
  • Make Error creation lazy (#24728 by @​sebmarkbage) (vv19.0.0, release notes)
  • Remove recoverable error when a sync update flows into a dehydrated boundary (#25692 by @​sebmarkbage) (vv19.0.0, release notes)
  • Don't "fix up" mismatched text content with suppressedHydrationWarning (#26391 by @​sebmarkbage) (vv19.0.0, release notes)
  • Fix component stacks in errors (#27456 by @​sebmarkbage) (vv19.0.0, release notes)
  • Add component stacks to onError (#27761, #27850 by @​gnoff and @​sebmarkbage) (vv19.0.0, release notes)
  • Throw hydration mismatch errors once (#28502 by @​sebmarkbage) (vv19.0.0, release notes)
  • Add Bun streaming server renderer (#25597 by @​colinhacks) (vv19.0.0, release notes)
  • Add nonce support to bootstrap scripts (#26738 by @​danieltott) (vv19.0.0, release notes)
  • Add crossorigin support to bootstrap scripts (#26844 by @​HenriqueLimas) (vv19.0.0, release notes)
  • Support nonce and fetchpriority in preload links (#26826 by @​liuyenwei) (vv19.0.0, release notes)
  • Add referrerPolicy to ReactDOM.preload() (#27096 by @​styfle) (vv19.0.0, release notes)
  • Add server condition for react/jsx-dev-runtime (#28921 by @​himself65) (vv19.0.0, release notes)
  • Export version (#29596 by @​unstubbable) (vv19.0.0, release notes)
  • Rename the secret export of Client and Server internals (#28786, #28789 by @​sebmarkbage) (vv19.0.0, release notes)
  • Remove layout effect warning on server (#26395 by @​rickhanlonii) (vv19.0.0, release notes)
  • Remove errorInfo.digest from onRecoverableError (#28222 by @​gnoff) (vv19.0.0, release notes)
  • Add deprecation error to react-test-renderer on web (#27903, #28904 by @​jackpope and @​acdlite) (vv19.0.0, release notes)
  • Render with ConcurrentRoot on web (#28498 by @​jackpope) (vv19.0.0, release notes)
  • Remove react-test-renderer/shallow export (#25475, #28497 by @​sebmarkbage and @​jackpope) (vv19.0.0, release notes)
  • Enable suspending commits without blocking render (#26398, #26427 by @​acdlite) (vv19.0.0, release notes)
  • Remove prepareUpdate (#26583, #27409 by @​sebmarkbage and @​sophiebits) (vv19.0.0, release notes)
  • Enable tree shaking (#27701 by @​markerikson) (vv19.0.0, release notes)
  • Remove isConcurrentMode and isAsyncMode methods (#28224 by @​gaearon) (vv19.0.0, release notes)
  • Remove React internals access (#29868 by @​phryneas) (vv19.0.0, release notes)
  • Fix stale selectors keeping previous store references (#25969 by @​jellevoost) (vv19.0.0, release notes)
References (6)

[1]: React upgraded to ^19.2.0 while react-dom remains at ^18.3.1, creating a major version mismatch that requires react-dom upgrade to 19.x

"react": "^19.2.0",

[2]: react-dom at version ^18.3.1 needs to be upgraded to ^19.2.0 to match React core library version

"react-dom": "^18.3.1",

[3]: @​types/react-dom at version ^18.3.1 should be upgraded to ^19.x to match @​types/react 19.2.2

"@types/react-dom": "^18.3.1",

[4]: Already using modern createRoot API from react-dom/client - no code changes needed for React 19 compatibility

import { createRoot } from 'react-dom/client';

[5]: Application correctly uses createRoot instead of deprecated ReactDOM.render - compatible with React 19

createRoot(document.getElementById('root')!).render(

[6]: Official React 19 upgrade guide confirms react-dom must be upgraded alongside React core library to maintain compatibility (source link)


fossabot analyzed this PR using static analysis and dependency research.

@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/multi-c808d207fc branch 2 times, most recently from a7074ac to 57e535f Compare October 27, 2025 22:40
@coderabbitai
Copy link

coderabbitai bot commented Oct 27, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/multi-c808d207fc branch from 57e535f to 19f90ea Compare October 28, 2025 14:10
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/multi-c808d207fc branch from 19f90ea to 3c95137 Compare November 9, 2025 16:18
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). These dependencies needed to be updated together.

Updates `react` from 18.3.1 to 19.2.0
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.2.0/packages/react)

Updates `@types/react` from 18.3.12 to 19.2.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: react
  dependency-version: 19.2.0
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: "@types/react"
  dependency-version: 19.2.2
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/multi-c808d207fc branch from 3c95137 to cd7f89e Compare November 9, 2025 16:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant