Skip to content

Conversation

@mauriciomenon
Copy link
Owner

snyk-top-banner

Snyk has created this PR to upgrade react-dom from 18.3.1 to 19.2.0.

ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


  • The recommended version is 420 versions ahead of your current version.

  • The recommended version was released 3 months ago.

Release notes
Package name: react-dom
  • 19.2.0 - 2025-10-01

    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

    React Server Components

    React Reconciler

    eslint-plugin-react-hooks@6.1.0

    Note: Version 6.0.0 was mistakenly released and immediately deprecated and untagged on npm. This is the first official 6.x major release and includes breaking changes.

    • Breaking: Require Node.js 18 or newer. (@ michaelfaith in #32458)
    • Breaking: Flat config is now the default recommended preset. Legacy config moved to recommended-legacy. (@ michaelfaith in #32457)
    • New Violations: Disallow calling use within try/catch blocks. (@ poteto in #34040)
    • New Violations: Disallow calling useEffectEvent functions in arbitrary closures. (@ jbrown215 in #33544)
    • Handle React.useEffect in addition to useEffect in rules-of-hooks. (@ Ayc0 in #34076)
    • Added react-hooks settings config option that to accept additionalEffectHooks that are used across exhaustive-deps and rules-of-hooks rules. (@ jbrown215) in #34497
  • 19.2.0-canary-fa3feba6-20250623 - 2025-06-23
  • 19.2.0-canary-f9ae0a4c-20250527 - 2025-05-27
  • 19.2.0-canary-f7396427-20250501 - 2025-05-02
  • 19.2.0-canary-f508edc8-20250818 - 2025-08-18
  • 19.2.0-canary-f3a80361-20250911 - 2025-09-11
  • 19.2.0-canary-f1e70b5e-20250811 - 2025-08-11
  • 19.2.0-canary-f1222f76-20250812 - 2025-08-13
  • 19.2.0-canary-ef8b6fa2-20250702 - 2025-07-03
  • 19.2.0-canary-ef889445-20250930 - 2025-09-30
  • 19.2.0-canary-edac0dde-20250723 - 2025-07-23
  • 19.2.0-canary-eaee5308-20250728 - 2025-07-28
  • 19.2.0-canary-ea05b750-20250408 - 2025-04-09
  • 19.2.0-canary-e9db3cc2-20250501 - 2025-05-01
  • 19.2.0-canary-e9638c33-20250721 - 2025-07-21
  • 19.2.0-canary-e6dc25da-20250709 - 2025-07-09
  • 19.2.0-canary-e5dd82a7-20250401 - 2025-04-01
  • 19.2.0-canary-e2332183-20250924 - 2025-09-24
  • 19.2.0-canary-dffacc7b-20250717 - 2025-07-17
  • 19.2.0-canary-df38ac9a-20250926 - 2025-09-26
  • 19.2.0-canary-de5a1b20-20250905 - 2025-09-05
  • 19.2.0-canary-d92056ef-20250627 - 2025-06-27
  • 19.2.0-canary-d85f86cf-20250514 - 2025-05-14
  • 19.2.0-canary-d85ec5f5-20250716 - 2025-07-16
  • 19.2.0-canary-d415fd3e-20250919 - 2025-09-19
  • 19.2.0-canary-d15d7fd7-20250929 - 2025-09-29
  • 19.2.0-canary-cee7939b-20250625 - 2025-06-25
  • 19.2.0-canary-c498bfce-20250426 - 2025-04-28
  • 19.2.0-canary-c4676e72-20250520 - 2025-05-20
  • 19.2.0-canary-c44e4a25-20250409 - 2025-04-10
  • 19.2.0-canary-c260b38d-20250731 - 2025-07-31
  • 19.2.0-canary-c129c242-20250505 - 2025-05-05
  • 19.2.0-canary-c0464aed-20250523 - 2025-05-26
  • 19.2.0-canary-befc1246-20250708 - 2025-07-08
  • 19.2.0-canary-be11cb5c-20250804 - 2025-08-04
  • 19.2.0-canary-bdb4a96f-20250801 - 2025-08-01
  • 19.2.0-canary-bc6184dd-20250417 - 2025-04-18
  • 19.2.0-canary-bbc13fa1-20250624 - 2025-06-24
  • 19.2.0-canary-bb6f0c8d-20250901 - 2025-09-01
  • 19.2.0-canary-b9cfa0d3-20250505 - 2025-05-05
  • 19.2.0-canary-b9a04536-20250904 - 2025-09-04
  • 19.2.0-canary-b94603b9-20250513 - 2025-05-13
  • 19.2.0-canary-b7e2de63-20250611 - 2025-06-11
  • 19.2.0-canary-b6c0aa88-20250609 - 2025-06-09
  • 19.2.0-canary-b4477d38-20250605 - 2025-06-05
  • 19.2.0-canary-b1b0955f-20250901 - 2025-09-01
  • 19.2.0-canary-b10cb4c0-20250403 - 2025-04-03
  • 19.2.0-canary-b0c1dc01-20250925 - 2025-09-25
  • 19.2.0-canary-b07717d8-20250528 - 2025-05-28
  • 19.2.0-canary-b04254fd-20250415 - 2025-04-16
  • 19.2.0-canary-ac7820a9-20250811 - 2025-08-11
  • 19.2.0-canary-ab859e31-20250606 - 2025-06-06
  • 19.2.0-canary-aad7c664-20250829 - 2025-08-29
  • 19.2.0-canary-a96a0f39-20250815 - 2025-08-15
  • 19.2.0-canary-a7a11657-20250708 - 2025-07-08
  • 19.2.0-canary-a00ca6f6-20250611 - 2025-06-11
  • 19.2.0-canary-9be531cd-20250729 - 2025-07-29
  • 19.2.0-canary-99efc627-20250523 - 2025-05-23
  • 19.2.0-canary-97cdd5d3-20250710 - 2025-07-11
  • 19.2.0-canary-9784cb37-20250730 - 2025-07-30
  • 19.2.0-canary-96c61b7f-20250709 - 2025-07-10
  • 19.2.0-canary-93d7aa69-20250912 - 2025-09-12
  • 19.2.0-canary-914319ae-20250423 - 2025-04-23
  • 19.2.0-canary-8e60cb7e-20250902 - 2025-09-02
  • 19.2.0-canary-8d7b5e49-20250827 - 2025-08-28
  • 19.2.0-canary-8ce15b0f-20250522 - 2025-05-22
  • 19.2.0-canary-8bb7241f-20250926 - 2025-09-26
  • 19.2.0-canary-8a8e9a7e-20250912 - 2025-09-12
  • 19.2.0-canary-89a803fc-20250828 - 2025-08-28
  • 19.2.0-canary-886b3d36-20250910 - 2025-09-10
  • 19.2.0-canary-873f7112-20250821 - 2025-08-21
  • 19.2.0-canary-86181134-20251001 - 2025-10-01
  • 19.2.0-canary-84af9085-20250917 - 2025-09-18
  • 19.2.0-canary-83c88ad4-20250923 - 2025-09-23
  • 19.2.0-canary-7deda941-20250804 - 2025-08-05
  • 19.2.0-canary-7a2c7045-20250506 - 2025-05-06
  • 19.2.0-canary-79d9aed7-20250620 - 2025-06-20
  • 19.2.0-canary-7513996f-20250722 - 2025-07-22
  • 19.2.0-canary-73aa744b-20250702 - 2025-07-02
  • 19.2.0-canary-7216c0f0-20250630 - 2025-07-01
  • 19.2.0-canary-72135096-20250421 - 2025-04-22
  • 19.2.0-canary-6eda5347-20250918 - 2025-09-19
  • 19.2.0-canary-6de32a5a-20250822 - 2025-08-22
  • 19.2.0-canary-6b70072c-20250909 - 2025-09-09
  • 19.2.0-canary-6a7650c7-20250405 - 2025-04-05
  • 19.2.0-canary-67a44bcd-20250915 - 2025-09-15
  • 19.2.0-canary-66f09bd0-20250806 - 2025-08-06
  • 19.2.0-canary-65c4decb-20250630 - 2025-06-30
  • 19.2.0-canary-63779030-20250328 - 2025-03-31
  • 19.2.0-canary-60b5271a-20250709 - 2025-07-09
  • 19.2.0-canary-5e0c951b-20250916 - 2025-09-16
  • 19.2.0-canary-5dc00d6b-20250428 - 2025-04-28
  • 19.2.0-canary-5d87cd22-20250704 - 2025-07-04
  • 19.2.0-canary-56408a5b-20250610 - 2025-06-10
  • 19.2.0-canary-548235db-20251001 - 2025-10-01
  • 19.2.0-canary-540cd652-20250403 - 2025-04-04
  • 19.2.0-canary-534bed5f-20250813 - 2025-08-13
  • 19.2.0-canary-526dd340-20250602 - 2025-06-02
  • 19.2.0-canary-4db4b21c-20250626 - 2025-06-26
  • 19.2.0-canary-4a45ba92-20250515 - 2025-05-15
  • 19.2.0-canary-4a36d3ea-20250416 - 2025-04-17
  • 19.2.0-canary-462d08f9-20250517 - 2025-05-19
  • 19.2.0-canary-4448b187-20250515 - 2025-05-16
  • 19.2.0-canary-4123f6b7-20250826 - 2025-08-26
  • 19.2.0-canary-408d055a-20250430 - 2025-04-30
  • 19.2.0-canary-3fbfb9ba-20250409 - 2025-04-09
  • 19.2.0-canary-3fb190f7-20250908 - 2025-09-08
  • 19.2.0-canary-3d14fcf0-20250724 - 2025-07-24
  • 19.2.0-canary-39cad7af-20250411 - 2025-04-14
  • 19.2.0-canary-3958d5d8-20250807 - 2025-08-07
  • 19.2.0-canary-38ef6550-20250508 - 2025-05-08
  • 19.2.0-canary-3820740a-20250509 - 2025-05-12
  • 19.2.0-canary-379a083b-20250813 - 2025-08-14
  • 19.2.0-canary-37054867-20250604 - 2025-06-04
  • 19.2.0-canary-33a1095d-20250827 - 2025-08-27
  • 19.2.0-canary-33661467-20250407 - 2025-04-07
  • 19.2.0-canary-3302d1f7-20250903 - 2025-09-03
  • 19.2.0-canary-2f0e7e57-20250715 - 2025-07-15
  • 19.2.0-canary-280ff6fe-20250606 - 2025-06-06
  • 19.2.0-canary-2805f0ed-20250903 - 2025-09-03
  • 19.2.0-canary-23884812-20250520 - 2025-05-21
  • 19.2.0-canary-223f81d8-20250707 - 2025-07-07
  • 19.2.0-canary-21fdf308-20250508 - 2025-05-09
  • 19.2.0-canary-1eca9a27-20250922 - 2025-09-22
  • 19.2.0-canary-1dc3bdea-20250812 - 2025-08-12
  • 19.2.0-canary-1d6c8168-20250411 - 2025-04-11
  • 19.2.0-canary-1bd1f01f-20251001 - 2025-10-01
  • 19.2.0-canary-1ae0a845-20250603 - 2025-06-03
  • 19.2.0-canary-19baee81-20250725 - 2025-07-25
  • 19.2.0-canary-197d6a04-20250424 - 2025-04-24
  • 19.2.0-canary-143d3e1b-20250425 - 2025-04-25
  • 19.2.0-canary-14094f80-20250529 - 2025-05-29
  • 19.2.0-canary-12bc60f5-20250613 - 2025-06-13
  • 19.2.0-canary-128abcfa-20250917 - 2025-09-17
  • 19.2.0-canary-0ff1d13b-20250507 - 2025-05-07
  • 19.2.0-canary-0bdb9206-20250818 - 2025-08-19
  • 19.2.0-canary-06e89951-20250620 - 2025-06-20
  • 19.2.0-canary-040f8286-20250402 - 2025-04-02
  • 19.2.0-canary-03fda05d-20250820 - 2025-08-20
  • 19.2.0-canary-0038c501-20250429 - 2025-04-29
  • 19.1.4 - 2025-12-11

    React Server Components

  • 19.1.3 - 2025-12-11

    React Server Components

  • 19.1.2 - 2025-12-03

    React Server Components

  • 19.1.1 - 2025-07-28
  • 19.1.0 - 2025-03-28
  • 19.1.0-canary-ff628334-20250205 - 2025-02-06
  • 19.1.0-canary-fcb4e0f1-20250219 - 2025-02-20
  • 19.1.0-canary-fc8a898d-20241226 - 2024-12-27
  • 19.1.0-canary-fbcda19a-20250317 - 2025-03-17
  • 19.1.0-canary-f9d78089-20250306 - 2025-03-07
  • 19.1.0-canary-f83903bf-20250212 - 2025-02-12
  • 19.1.0-canary-f457d0b4-20250313 - 2025-03-13
  • 19.1.0-canary-f0edf41e-20250115 - 2025-01-14
  • 19.1.0-canary-ef979d47-20241218 - 2024-12-18
  • 19.1.0-canary-ef4bc8b4-20250328 - 2025-03-28
  • 19.1.0-canary-ebc22ef7-20250225 - 2025-02-26
  • 19.1.0-canary-e670e72f-20250214 - 2025-02-14
  • 19.1.0-canary-e1e74071-20250321 - 2025-03-21
  • 19.1.0-canary-e06c72fc-20241215 - 2024-12-16
  • 19.1.0-canary-e03ac20f-20250305 - 2025-03-05
  • 19.1.0-canary-de82912e-20241220 - 2024-12-20
  • 19.1.0-canary-de1eaa26-20250124 - 2025-01-24
  • 19.1.0-canary-db7dfe05-20250319 - 2025-03-19
  • 19.1.0-canary-d85cf3e5-20250205 - 2025-02-05
  • 19.1.0-canary-d55cc79b-20250228 - 2025-02-28
  • 19.1.0-canary-d46b04a2-20250117 - 2025-01-17
  • 19.1.0-canary-d4287258-20241217 - 2024-12-17
  • 19.1.0-canary-d331ba04-20250307 - 2025-03-10
  • 19.1.0-canary-cd90a4d8-20250210 - 2025-02-11
  • 19.1.0-canary-cbbe8666-20250213 - 2025-02-13
  • 19.1.0-canary-cabd8a0e-20250113 - 2025-01-13
  • 19.1.0-canary-c69a5fc5-20250318 - 2025-03-18
  • 19.1.0-canary-c492f975-20250128 - 2025-01-29
  • 19.1.0-canary-c01b8058-20241229 - 2024-12-30
  • 19.1.0-canary-bb9a24d9-20250130 - 2025-01-30
  • 19.1.0-canary-b3a95caf-20250113 - 2025-01-14
  • 19.1.0-canary-b158439a-20250115 - 2025-01-15
  • 19.1.0-canary-ae9017ce-20250122 - 2025-01-23
  • 19.1.0-canary-a84862db-20250218 - 2025-02-19
  • 19.1.0-canary-a4f9bd58-20250319 - 2025-03-20
  • 19.1.0-canary-a4b2d0d5-20250203 - 2025-02-03
  • 19.1.0-canary-9ff42a87-20250130 - 2025-01-31
  • 19.1.0-canary-9eabb373-20250124 - 2025-01-27
  • 19.1.0-canary-9b62ee71-20250122 - 2025-01-22
  • 19.1.0-canary-97d79495-20241223 - 2024-12-24
  • 19.1.0-canary-9463d51e-20241219 - 2024-12-19
  • 19.1.0-canary-93b58361-20250209 - 2025-02-10
  • 19.1.0-canary-8a7b487e-20250218 - 2025-02-18
  • 19.1.0-canary-8759c5c8-20250207 - 2025-02-07
  • 19.1.0-canary-7eb8234f-20241218 - 2024-12-18
  • 19.1.0-canary-7b402084-20250107 - 2025-01-07
  • 19.1.0-canary-74ea0c73-20250109 - 2025-01-09
  • 19.1.0-canary-740a4f7a-20250325 - 2025-03-25
  • 19.1.0-canary-7130d0c6-20241212 - 2024-12-12
  • 19.1.0-canary-6aa8254b-20250312 - 2025-03-12
  • 19.1.0-canary-694d3e1a-20241231 - 2025-01-01
  • 19.1.0-canary-6907aa2a-20241220 - 2024-12-23
  • 19.1.0-canary-662957cc-20250221 - 2025-02-21
  • 19.1.0-canary-62208bee-20250102 - 2025-01-02
  • 19.1.0-canary-5b51a2b9-20250116 - 2025-01-16
  • 19.1.0-canary-540efebc-20250112 - 2025-01-12
  • 19.1.0-canary-5398b711-20250314 - 2025-03-14
  • 19.1.0-canary-518d06d2-20241219 - 2024-12-19
  • 19.1.0-canary-4dff0e62-20241213 - 2024-12-13
  • 19.1.0-canary-4632e36a-20250216 - 2025-02-17
  • 19.1.0-canary-443b7ff2-20250303 - 2025-03-04
  • 19.1.0-canary-4280563b-20250326 - 2025-03-27
  • 19.1.0-canary-42687267-20250108 - 2025-01-08
  • 19.1.0-canary-3ce77d55-20250106 - 2025-01-06
  • 19.1.0-canary-3b009b4c-20250102 - 2025-01-03
  • 19.1.0-canary-37906d4d-20250127 - 2025-01-28
  • 19.1.0-canary-32b0cad8-20250213 - 2025-02-13
  • 19.1.0-canary-313332d1-20250326 - 2025-03-26
  • 19.1.0-canary-2980f277-20250301 - 2025-03-03
  • 19.1.0-canary-25677265-20250224 - 2025-02-24
  • 19.1.0-canary-22e39ea7-20250225 - 2025-02-25
  • 19.1.0-canary-18eaf51b-20250118 - 2025-01-20
  • 19.1.0-canary-130095f7-20241212 - 2024-12-12
  • 19.1.0-canary-0ca3deeb-20250311 - 2025-03-11
  • 19.1.0-canary-0a82580b-20250203 - 2025-02-04
  • 19.1.0-canary-056073de-20250109 - 2025-01-10
  • 19.1.0-canary-029e8bd6-20250306 - 2025-03-06
  • 19.0.3 - 2025-12-11

    React Server Components

  • 19.0.2 - 2025-12-11

    React Server Components

  • 19.0.1 - 2025-12-03

    React Server Components

  • 19.0.0 - 2024-12-05
  • 19.0.0-rc-fb9a90fa48-20240614 - 2024-06-14
  • 19.0.0-rc-fa6eab58-20240815 - 2024-08-16
  • 19.0.0-rc-f9ebd85a-20240925 - 2024-09-25
  • 19.0.0-rc-f994737d14-20240522 - 2024-05-22
  • 19.0.0-rc-f90a6bcc-20240827 - 2024-08-27
  • 19.0.0-rc-f6cce072-20240723 - 2024-07-23
  • 19.0.0-rc-f65ac7bd-20240826 - 2024-08-27
  • 19.0.0-rc-f3e09d6328-20240612 - 2024-06-12
  • 19.0.0-rc-f38c22b244-20240704 - 2024-07-05
  • 19.0.0-rc-f2df5694-20240916 - 2024-09-16
  • 19.0.0-rc-ee1a403a-20240916 - 2024-09-16
  • 19.0.0-rc-ed966dac-20241007 - 2024-10-08
  • 19.0.0-rc-ed15d500-20241110 - 2024-11-11
  • 19.0.0-rc-eb3ad065-20240822 - 2024-08-22
  • 19.0.0-rc-eb259b5d3b-20240605 - 2024-06-05
  • 19.0.0-rc-e948a5ac-20240807 - 2024-08-07
  • 19.0.0-rc-e740d4b1-20240919 - 2024-09-19
  • 19.0.0-rc-e684ca66ab-20240619 - 2024-06-19
  • 19.0.0-rc-e56f4ae3-20240830 - 2024-08-30
  • 19.0.0-rc-e4953922-20240919 - 2024-09-20
  • 19.0.0-rc-e210d081-20240909 - 2024-09-09
  • 19.0.0-rc-e1ef8c95-20241115 - 2024-11-15
  • 19.0.0-rc-e02baf6c92-20240627 - 2024-06-27
  • 19.0.0-rc-dfd30974ab-20240613 - 2024-06-13
  • 19.0.0-rc-df783f9ea1-20240708 - 2024-07-08
  • 19.0.0-rc-df5f2736-20240712 - 2024-07-12
  • 19.0.0-rc-de68d2f4-20241204 - 2024-12-04
  • 19.0.0-rc-d8c90fa4-20241001 - 2024-10-01
  • 19.0.0-rc-d6cb4e77-20240911 - 2024-09-11
  • 19.0.0-rc-d5bba18b-20241009 - 2024-10-09
  • 19.0.0-rc-d49123f7-20241019 - 2024-10-20
  • 19.0.0-rc-d48603a5-20240813 - 2024-08-13
  • 19.0.0-rc-d3ce0d3ea9-20240520 - 2024-05-20
  • 19.0.0-rc-d1afcb43-20240903 - 2024-09-04
  • 19.0.0-rc-d025ddd3-20240722 - 2024-07-22
  • 19.0.0-rc-cd22717c-20241013 - 2024-10-13
  • 19.0.0-rc-cc1ec60d0d-20240607 - 2024-06-07
  • 19.0.0-rc-cae764ce-20241025 - 2024-10-25
  • 19.0.0-rc-ca587425-20241211 - 2024-12-12
  • 19.0.0-rc-c3cdbec0a7-20240708 - 2024-07-09
  • 19.0.0-rc-c21bcd627b-20240624 - 2024-06-24
  • 19.0.0-rc-c1e1358b-20241020 - 2024-10-20
  • 19.0.0-rc-c11c9510-20241120 - 2024-11-21
  • 19.0.0-rc-bf7e210c-20241017 - 2024-10-17
  • 19.0.0-rc-bf3a29d097-20240603 - 2024-06-04
  • 19.0.0-rc-b8ae38f8-20241018 - 2024-10-18
  • 19.0.0-rc-b7e21579-20241031 - 2024-11-01
  • 19.0.0-rc-b57d2823-20240822 - 2024-08-23
  • 19.0.0-rc-b01722d5-20241114 - 2024-11-14
  • 19.0.0-rc-ab7c1663-20240730 - 2024-07-30
  • 19.0.0-rc-ab2135c7-20240724 - 2024-07-24
  • 19.0.0-rc-a99d8e8d-20240916 - 2024-09-17
  • 19.0.0-rc-a960b92c-20240819 - 2024-08-20
  • 19.0.0-rc-a7d1240c-20240731 - 2024-07-31
  • 19.0.0-rc-a532d91d01-20240610 - 2024-06-10
  • 19.0.0-rc-a26e3f403e-20240611 - 2024-06-11
  • 19.0.0-rc-a19a8ab4-20240829 - 2024-08-29
  • 19.0.0-rc-a03254bc-20240905 - 2024-09-06
  • 19.0.0-rc-9d4fba0788-20240530 - 2024-05-30
  • 19.0.0-rc-9d2da591-20240808 - 2024-08-08
  • 19.0.0-rc-9c6806964f-20240703 - 2024-07-03
  • 19.0.0-rc-99da76f23a-20240606 - 2024-06-06
  • 19.0.0-rc-9598c41a20-20240603 - 2024-06-03
  • 19.0.0-rc-94e652d5-20240912 - 2024-09-12
  • 19.0.0-rc-941e1b4a-20240729 - 2024-07-29
  • 19.0.0-rc-935180c7e0-20240524 - 2024-05-24
  • 19.0.0-rc-915b914b3a-20240515 - 2024-05-15
  • 19.0.0-rc-91061073-20241121 - 2024-11-22
  • 19.0.0-rc-8f3c0525f9-20240521 - 2024-05-21
  • 19.0.0-rc-8b08e99e-20240713 - 2024-07-15
  • 19.0.0-rc-8971381549-20240625 - 2024-06-25
  • 19.0.0-rc-85acf2d195-20240711 - 2024-07-11
  • 19.0.0-rc-83825814-20241015 - 2024-10-15
  • 19.0.0-rc-827cbea417-20240606 - 2024-06-07
  • 19.0.0-rc-8269d55d-20240802 - 2024-08-02
  • 19.0.0-rc-81c5ff2e04-20240521 - 2024-05-21
  • 19.0.0-rc-7c8e5e7a-20241101 - 2024-11-01
  • 19.0.0-rc-7ac8e612-20241113 - 2024-11-13
  • 19.0.0-rc-79ddf5b5-20241210 - 2024-12-11
  • 19.0.0-rc-77f43893-20241010 - 2024-10-10
  • 19.0.0-rc-77b637d6-20241016 - 2024-10-16
  • 19.0.0-rc-778e1ed2-20240926 - 2024-09-25
  • 19.0.0-rc-7771d3a7-20240827 - 2024-08-28
  • 19.0.0-rc-7670501b-20241124 - 2024-11-25
  • 19.0.0-rc-76002254-20240724 - 2024-07-25
  • 19.0.0-rc-7283a213-20241206 - 2024-12-06
  • 19.0.0-rc-70fb1363-20241010 - 2024-10-10
  • 19.0.0-rc-6fb39ec9e9-20240621 - 2024-06-21
  • 19.0.0-rc-6f23540c7d-20240528 - 2024-05-28
  • 19.0.0-rc-6f0dc294-20241119 - 2024-11-19
  • 19.0.0-rc-6ebfd5b0-20240818 - 2024-08-19
  • 19.0.0-rc-6d3110b4d9-20240531 - 2024-05-31
  • 19.0.0-rc-6cf85185-20241014 - 2024-10-14
  • 19.0.0-rc-69d4b800-20241021 - 2024-10-21
  • 19.0.0-rc-68dbd84b-20240812 - 2024-08-12
  • 19.0.0-rc-67fee58b-20240926 - 2024-09-26
  • 19.0.0-rc-66855b96-20241106 - 2024-11-06
  • 19.0.0-rc-65e06cb7-20241218 - 2024-12-19
  • 19.0.0-rc-65a56d0e-20241020 - 2024-10-20
  • 19.0.0-rc-65903583-20240805 - 2024-08-05
  • 19.0.0-rc-64f89510-20241119 - 2024-11-20
  • 19.0.0-rc-6230622a1a-20240610 - 2024-06-10
  • 19.0.0-rc-603e6108-20241029 - 2024-10-30
  • 19.0.0-rc-5dcb0097-20240918 - 2024-09-18
  • 19.0.0-rc-5d19e1c8-20240923 - 2024-09-23
  • 19.0.0-rc-5c56b873-20241107 - 2024-11-07
  • 19.0.0-rc-5b0ef217-20241202 - 2024-12-02
  • 19.0.0-rc-58af67a8f8-20240628 - 2024-06-28
  • 19.0.0-rc-57fbe3ba37-20240520 - 2024-05-20
  • 19.0.0-rc-512b09b2-20240718 - 2024-07-18
  • 19.0.0-rc-4f604941-20240830 - 2024-09-02
  • 19.0.0-rc-4d577fd2-20241104 - 2024-11-04
  • 19.0.0-rc-4c58fce7-20240904 - 2024-09-05
  • 19.0.0-rc-4c2e457c7c-20240522 - 2024-05-23
  • 19.0.0-rc-4beb1fd8-20241118 - 2024-11-18
  • 19.0.0-rc-4b7d4530-20241218 - 2024-12-18
  • 19.0.0-rc-49496d49-20240814 - 2024-08-14
  • 19.0.0-rc-47352209-20240912 - 2024-09-12
  • 19.0.0-rc-459fd418-20241001 - 2024-10-02
  • 19.0.0-rc-45804af1-20241021 - 2024-10-22
  • 19.0.0-rc-3f1436cca1-20240516 - 2024-05-17
  • 19.0.0-rc-3edc000d-20240926 - 2024-09-27
  • 19.0.0-rc-3dfd5d9e-20240910 - 2024-09-10
  • 19.0.0-rc-3da26163a3-20240704 - 2024-07-04
  • 19.0.0-rc-3ac551e855-20240522 - 2024-05-22
  • 19.0.0-rc-38e3b23483-20240529 - 2024-05-29
  • 19.0.0-rc-38af456a-20241010 - 2024-10-10
  • 19.0.0-rc-380f5d67-20241113 - 2024-11-14
  • 19.0.0-rc-378b305958-20240710 - 2024-07-10
  • 19.0.0-rc-372ec00c-20241209 - 2024-12-10
  • 19.0.0-rc-3563387fe3-20240621 - 2024-06-21
  • 19.0.0-rc-34d0c5e357-20240607 - 2024-06-10
  • 19.0.0-rc-33c7bd9a-20241104 - 2024-11-05
  • 19.0.0-rc-3208e73e-20240730 - 2024-07-30
  • 19.0.0-rc-2ec26bc4-20241111 - 2024-11-12
  • 19.0.0-rc-2d2cc042-20240809 - 2024-08-09
  • 19.0.0-rc-2d16326d-20240930 - 2024-09-30
  • 19.0.0-rc-28668d39-20241023 - 2024-10-23
  • 19.0.0-rc-20b6f4c0e8-20240607 - 2024-06-10
  • 19.0.0-rc-206df66e-20240912 - 2024-09-13
  • 19.0.0-rc-204a551e-20240926 - 2024-09-26
  • 19.0.0-rc-1eaccd82-20240816 - 2024-08-16
  • 19.0.0-rc-1df34bdf62-20240605 - 2024-06-05
  • 19.0.0-rc-1d989965-20240821 - 2024-08-21
  • 19.0.0-rc-1c9b1387-20241204 - 2024-12-05
  • 19.0.0-rc-1b1283ad-20241203 - 2024-12-03
  • 19.0.0-rc-19bd26be-20240815 - 2024-08-15
  • 19.0.0-rc-187dd6a7-20240806 - 2024-08-06
  • 19.0.0-rc-16409d05-20241101 - 2024-11-01
  • 19.0.0-rc-163365a0-20240717 - 2024-07-17
  • 19.0.0-rc-1631855f-20241023 - 2024-10-23
  • 19.0.0-rc-14a4699f-20240725 - 2024-07-25
  • 19.0.0-rc-1460d67c-20241003 - 2024-10-04
  • 19.0.0-rc-1434af3d22-20240618 - 2024-06-18
  • 19.0.0-rc-107a2f8c3e-20240617 - 2024-06-17
  • 19.0.0-rc-100dfd7dab-20240701 - 2024-07-01
  • 19.0.0-rc-0bc30748-20241028 - 2024-10-29
  • 19.0.0-rc-09111202-20241011 - 2024-10-11
  • 19.0.0-rc-0751fac7-20241002 - 2024-10-03
  • 19.0.0-rc-06d0b89e-20240801 - 2024-08-01
  • 19.0.0-rc-04bd67a4-20240924 - 2024-09-24
  • 19.0.0-rc-02c0e824-20241028 - 2024-10-28
  • 19.0.0-rc-01172397-20240716 - 2024-07-16
  • 19.0.0-rc.1 - 2024-11-14
  • 19.0.0-rc.0 - 2024-06-03
  • 19.0.0-canary-fd0da3eef-20240404 - 2024-04-04
  • 19.0.0-canary-e3ebcd54b-20240405 - 2024-04-05
  • 19.0.0-canary-db913d8e17-20240422 - 2024-04-22
  • 19.0.0-canary-cf5ab8b8b2-20240425 - 2024-04-25
  • 19.0.0-canary-cb151849e1-20240424 - 2024-04-24
  • 19.0.0-canary-adb717393-20240411 - 2024-04-11
  • 19.0.0-canary-a73c3450e-20240329 - 2024-03-29
  • 19.0.0-canary-96c584661-20240412 - 2024-04-12
  • 19.0.0-canary-95e6f032c-20240401 - 2024-04-01
  • 19.0.0-canary-8afa144bd-20240416 - 2024-04-16
  • 19.0.0-canary-7a2609eed-20240403 - 2024-04-03
  • 19.0.0-canary-657428a9e-20240416 - 2024-04-17
  • 19.0.0-canary-4c12339ce-20240408 - 2024-04-08
  • 19.0.0-canary-48ec17b86-20240402 - 2024-04-02
  • 19.0.0-canary-36e62c603-20240418 - 2024-04-18
  • 19.0.0-canary-33a32441e9-20240418 - 2024-04-19
  • 19.0.0-canary-2b036d3f1-20240327 - 2024-03-27
  • 19.0.0-canary-05797cceb-20240328 - 2024-03-28
  • 19.0.0-beta-e7d213dfb0-20240507 - 2024-05-07
  • 19.0.0-beta-b498834eab-20240506 - 2024-05-06
  • 19.0.0-beta-9d76c954cf-20240510 - 2024-05-13
  • 19.0.0-beta-94eed63c49-20240425 - 2024-04-25
  • 19.0.0-beta-73bcdfbae5-20240502 - 2024-05-02
  • 19.0.0-beta-6946ebe620-20240508 - 2024-05-08
  • 19.0.0-beta-5d29478716-20240506 - 2024-05-06
  • 19.0.0-beta-4508873393-20240430 - 2024-04-30
  • 19.0.0-beta-26f2496093-20240514 - 2024-05-14
  • 19.0.0-beta-1beb73de0f-20240503 - 2024-05-03
  • 19.0.0-beta-04b058868c-20240508 - 2024-05-09
  • 18.3.1 - 2024-04-26
from react-dom GitHub release notes

Important

  • Warning: This PR contains a major version upgrade, and may be a breaking change.
  • Check the changes in this PR to ensure they won't cause issues with your project.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

For more information:

Snyk has created this PR to upgrade react-dom from 18.3.1 to 19.2.0.

See this package in npm:
react-dom

See this project in Snyk:
https://app.snyk.io/org/mauriciomenon/project/278fec87-1c65-4e8d-9ab0-e4b1c8d089b8?utm_source=github&utm_medium=referral&page=upgrade-pr
Copilot AI review requested due to automatic review settings December 22, 2025 10:17
@continue
Copy link

continue bot commented Dec 22, 2025

All Green - Keep your PRs mergeable

Learn more

All Green is an AI agent that automatically:

✅ Addresses code review comments

✅ Fixes failing CI checks

✅ Resolves merge conflicts


Unsubscribe from All Green comments

@keploy
Copy link

keploy bot commented Dec 22, 2025

To generate Unit Tests for this PR, please click here.

@coderabbitai
Copy link

coderabbitai bot commented Dec 22, 2025

Important

Review skipped

Ignore keyword(s) in the title.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. 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.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch snyk-upgrade-bfc377adda99784e393357d576e1f116

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@gemini-code-assist
Copy link

Summary of Changes

Hello @mauriciomenon, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request, automatically generated by Snyk, updates the react-dom dependency from version 18.3.1 to 19.2.0. This is a major version upgrade that introduces a host of new features, performance enhancements, and changes to React and React DOM, particularly around server-side rendering and component lifecycle management. Reviewers should be aware of potential breaking changes and new API paradigms introduced in React 19.

Highlights

  • Major Version Upgrade: The react-dom dependency has been upgraded from version 18.3.1 to 19.2.0, representing a significant major version bump.
  • New React Features: This upgrade introduces new React APIs such as <Activity> for UI state management, useEffectEvent for non-reactive logic in Effects, and cacheSignal for React Server Components (RSCs), along with improved React Performance tracks in browser developer tools.
  • Enhanced React DOM Capabilities: New resume APIs for partial pre-rendering with Web and Node Streams have been added, and existing prerender APIs are updated to return a postponed state, improving server-side rendering workflows.
  • Performance and SSR Improvements: React DOM now batches suspense boundary reveals for smoother animations and integrates Node Web Streams into server-side rendering APIs for Node.js environments.
  • ESLint Hooks Update: The eslint-plugin-react-hooks package is updated to 6.1.0, which includes breaking changes like requiring Node.js 18+ and making flat config the default, as well as new linting violations for use and useEffectEvent.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@amazon-q-developer amazon-q-developer bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR upgrades react-dom from 18.3.1 to 19.2.0, which is a major version upgrade with breaking changes. However, there's a critical version mismatch issue that must be resolved before merging.

Critical Issues:

  • React and React DOM versions are mismatched (React 18.2.0 vs React DOM 19.2.0)
  • Type definitions need to be updated to match React 19

Recommendations:

  1. Upgrade react to 19.2.0 to match react-dom
  2. Update @types/react and @types/react-dom to version 19.x
  3. Test thoroughly as React 19 introduces breaking changes including new features like the Activity component and useEffectEvent hook
  4. Review the React 19 migration guide for any code changes needed in your components

The version synchronization is essential to prevent runtime errors and ensure compatibility.


You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.

Comment on lines 14 to +15
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛑 Version Mismatch: React and React DOM versions must be synchronized. Upgrading only react-dom to 19.2.0 while keeping react at 18.2.0 will cause runtime errors and compatibility issues.

Suggested change
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"
"react": "^19.2.0",
"react-dom": "^19.2.0"

@bito-code-review
Copy link

Bito Automatic Review Skipped - Files Excluded

Bito didn't auto-review this change because all changed files are in the exclusion list for automatic reviews. No action is needed if you didn't intend for the agent to review it. Otherwise, to manually trigger a review, type /review in a comment and save.
You can change the excluded files settings here, or contact your Bito workspace admin at mauricio.menon@gmail.com.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request, automatically generated by Snyk, upgrades react-dom to version 19.2.0. This is a major version upgrade that introduces breaking changes. Critically, it fails to also upgrade the react package, which will cause application errors as react and react-dom must be on the same version. I have left a comment on package.json detailing this issue and other considerations for this upgrade, such as the potential lack of stable TypeScript definitions for React 19.

"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

This PR upgrades react-dom to v19 but leaves react on v18. The react and react-dom packages must always be on the same major version to prevent runtime errors. Please upgrade react as well.

Important: React 19 introduces breaking changes. You should review the official React 19 upgrade guide.

Furthermore, this is a TypeScript project, but official type definitions for React 19 (@types/react and @types/react-dom) may not be stable yet. You may encounter type errors or have to use temporary solutions.

If you decide to proceed, your dependencies should be updated as follows:

  "dependencies": {
    "react": "^19.2.0",
    "react-dom": "^19.2.0"
  }

You will also need to find and update to compatible versions of @types/react, @types/react-dom, and other related libraries in devDependencies.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades react-dom from version 18.3.1 to 19.2.0, a major version upgrade that introduces breaking changes. The upgrade was automatically generated by Snyk to keep dependencies up-to-date.

Key Changes:

  • Upgrades react-dom from ^18.2.0 to ^19.2.0 in package.json

Critical Issue: The PR creates a version mismatch by upgrading only react-dom while leaving react at version 18.2.0. React and React DOM must have matching major versions to function correctly.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -12,7 +12,7 @@
},
"dependencies": {
"react": "^18.2.0",
Copy link

Copilot AI Dec 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Upgrading react-dom to 19.2.0 while keeping react at 18.2.0 creates a version mismatch. React and react-dom must have matching major versions to work correctly. The react dependency should also be upgraded to ^19.2.0 to match react-dom.

Suggested change
"react": "^18.2.0",
"react": "^19.2.0",

Copilot uses AI. Check for mistakes.
Copy link

@kiloconnect kiloconnect bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚨 CRITICAL: Version Mismatch

React and React DOM versions must be synchronized. This PR only upgrades react-dom to 19.2.0 while keeping react at 18.2.0, which will cause:

  • Runtime errors and crashes
  • Type compatibility issues
  • Hook behavior mismatches
  • Build failures

Required fix: Upgrade both packages together to the same major version:

    "react": "^19.2.0",
    "react-dom": "^19.2.0"

This is a breaking change that requires both packages to be upgraded simultaneously.

Copy link

@kiloconnect kiloconnect bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ 1 Critical Issue Found

Severity Issue Location
CRITICAL React/React DOM version mismatch go_wails_react/frontend/package.json:15

Recommendation: Address critical issues before merge

Review Details (1 files)

Files: go_wails_react/frontend/package.json (1 issue)

Checked: Security, dependency compatibility, runtime stability

The automated Snyk upgrade only updated react-dom to 19.2.0 while leaving react at 18.2.0. This version mismatch will cause runtime errors, crashes, and compatibility issues. Both packages must be upgraded together to the same major version.

Fix these issues in Kilo Cloud

"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚨 CRITICAL: Version Mismatch

React and React DOM versions must be synchronized. This PR only upgrades react-dom to 19.2.0 while keeping react at 18.2.0, which will cause:

  • Runtime errors and crashes
  • Type compatibility issues
  • Hook behavior mismatches
  • Build failures

Required fix: Upgrade both packages together to the same major version:

Suggested change
"react-dom": "^19.2.0"
"react": "^19.2.0",
"react-dom": "^19.2.0"

This is a breaking change that requires both packages to be upgraded simultaneously.

@socket-security
Copy link

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatednpm/​react-dom@​18.3.1 ⏵ 19.2.3100 +110092 +198100

View full report

Copy link

@llamapreview llamapreview bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI Code Review by LlamaPReview

🎯 TL;DR & Recommendation

Recommendation: Request Changes

This PR upgrades react-dom to v19.2.0 but leaves React at v18, creating a major version mismatch that could cause runtime errors and type issues, compounded by outdated TypeScript definitions.

🌟 Strengths

  • Proactive dependency upgrade to address security vulnerabilities and keep the stack current.
Priority File Category Impact Summary Anchors
P1 go_wails_react/frontend/package.json Architecture Major version mismatch causes runtime errors with React DOM v19. path:go_wails_react/frontend/src/main.jsx, symbol:createRoot
P1 go_wails_react/frontend/package.json Architecture Outdated TypeScript definitions lead to compile-time type errors. path:go_wails_react/frontend/src/main.tsx, search:ReactDOM
P2 go_wails_react/frontend/package.json Architecture Dev dependencies may have compatibility issues with React 19. path:go_wails_react/frontend/src/main.jsx
P2 go_wails_react/frontend/package.json Maintainability Skip reviewing breaking changes from earlier 19.x releases. -
P2 go_wails_react/frontend/package.json Testing Tests may fail due to useId and Suspense changes in React 19. -

🔍 Notable Themes

  • The upgrade to React 19 requires a coordinated, holistic update of all React-related dependencies (core, types, dev tools) and thorough testing to avoid runtime and compilation failures.

📈 Risk Diagram

This diagram illustrates the risk of runtime and compile-time errors due to version mismatch after upgrading React-DOM without React.

sequenceDiagram
    participant AC as Application Code
    participant R18 as React v18
    participant RD19 as React-DOM v19
    participant TS as TypeScript Compiler
    AC->>RD19: createRoot()
    note over R18,RD19: R1(P1): Major version mismatch between React and React-DOM
    RD19-->>AC: Potential runtime error or unexpected behavior
    AC->>TS: Type check with @types/react v18
    note over AC,TS: R2(P1): Type definitions mismatch causing compile-time errors
    TS-->>AC: Type errors due to missing v19 APIs
Loading

💡 Have feedback? We'd love to hear it in our GitHub Discussions.
✨ This review was generated by LlamaPReview Advanced, which is free for all open-source projects. Learn more.

Comment on lines 13 to 16
"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"
},
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 | Confidence: High

This upgrade creates a major version mismatch between react (v18) and react-dom (v19). React 19 introduces breaking changes and requires React peer dependency v19. The related_context shows both main.jsx and main.tsx import and use react-dom/client APIs (createRoot, ReactDOM.createRoot). Running with mismatched major versions will likely cause runtime errors, unexpected behavior, or build failures. This is a breaking change that requires coordinated upgrade of the react package to v19.

Suggested change
"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"
},
"dependencies": {
"react": "^19.2.0",
"react-dom": "^19.2.0"
}

Evidence: path:go_wails_react/frontend/src/main.jsx, path:go_wails_react/frontend/src/main.tsx, symbol:createRoot, symbol:ReactDOM

"react-dom": "^18.2.0"
"react-dom": "^19.2.0"
},
"devDependencies": {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 | Confidence: High

The TypeScript type definitions remain at React 18 versions while the runtime dependency upgrades to React 19. This mismatch will cause type errors and incorrect type checking, as the @types/react and @types/react-dom packages for v18 don't include v19 API changes. The main.tsx file uses ReactDOM from react-dom/client, making accurate typing critical. This creates a compile-time breaking change.

Suggested change
"devDependencies": {
"devDependencies": {
"@types/react": "^19.2.0",
"@types/react-dom": "^19.2.0",
}

Evidence: path:go_wails_react/frontend/src/main.tsx, search:ReactDOM


P2 | Confidence: Medium

Speculative: The React testing library and Vite React plugin may have compatibility requirements with React 19. @testing-library/react v16 supports React 18, but React 19 compatibility should be verified. @vitejs/plugin-react v2 is likely compatible, but best practice is to check for recommended versions. Without updating these, tests and builds may fail or behave unexpectedly.

Code Suggestion:

Check compatibility and potentially update:
"devDependencies": {
  "@testing-library/react": "^16.3.0", // Verify v16 works with React 19
  "@vitejs/plugin-react": "^4.0.0", // v4+ officially supports React 19
}

Evidence: path:go_wails_react/frontend/src/main.jsx, path:go_wails_react/frontend/src/main.tsx

"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0"
"react-dom": "^19.2.0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 | Confidence: Medium

  • Speculative: The upgrade skips React 19.0.x and 19.1.x, jumping directly to 19.2.0. While this is the latest version, it's prudent to review the React 19.0.0 and 19.1.0 release notes for breaking changes specific to the codebase's usage patterns. The PR description includes extensive release notes; a focused review of breaking changes in the major version upgrade (18→19) is necessary beyond just updating the version number.
  • Speculative: This upgrade should be validated with comprehensive test runs. The related_context doesn't show test files, but the PR description notes React 19 changes to useId (colon to underscore) and Suspense batching. If tests rely on specific DOM IDs generated by useId or timing of Suspense boundary reveals, they may fail. Additionally, the upgrade should be tested with the actual Wails application to ensure the React integration with Go backend remains functional.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants