-
Notifications
You must be signed in to change notification settings - Fork 1
[Snyk] Upgrade react-dom from 18.3.1 to 19.2.0 #16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
[Snyk] Upgrade react-dom from 18.3.1 to 19.2.0 #16
Conversation
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
Learn moreAll Green is an AI agent that automatically: ✅ Addresses code review comments ✅ Fixes failing CI checks ✅ Resolves merge conflicts |
|
To generate Unit Tests for this PR, please click here. |
|
Important Review skippedIgnore keyword(s) in the title. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the ✨ Finishing touches🧪 Generate unit tests (beta)
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. Comment |
Summary of ChangesHello @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 Highlights
🧠 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 AssistThe 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
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 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
|
There was a problem hiding this 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:
- Upgrade
reactto 19.2.0 to matchreact-dom - Update
@types/reactand@types/react-domto version 19.x - Test thoroughly as React 19 introduces breaking changes including new features like the Activity component and useEffectEvent hook
- 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.
| "react": "^18.2.0", | ||
| "react-dom": "^18.2.0" | ||
| "react-dom": "^19.2.0" |
There was a problem hiding this comment.
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.
| "react": "^18.2.0", | |
| "react-dom": "^18.2.0" | |
| "react-dom": "^19.2.0" | |
| "react": "^19.2.0", | |
| "react-dom": "^19.2.0" |
|
Bito Automatic Review Skipped - Files Excluded |
There was a problem hiding this 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" |
There was a problem hiding this 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 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.
There was a problem hiding this 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-domfrom ^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", | |||
Copilot
AI
Dec 22, 2025
There was a problem hiding this comment.
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.
| "react": "^18.2.0", | |
| "react": "^19.2.0", |
There was a problem hiding this 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.
There was a problem hiding this 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.
| "dependencies": { | ||
| "react": "^18.2.0", | ||
| "react-dom": "^18.2.0" | ||
| "react-dom": "^19.2.0" |
There was a problem hiding this 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-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.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
There was a problem hiding this 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
💡 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.
| "dependencies": { | ||
| "react": "^18.2.0", | ||
| "react-dom": "^18.2.0" | ||
| "react-dom": "^19.2.0" | ||
| }, |
There was a problem hiding this comment.
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.
| "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": { |
There was a problem hiding this comment.
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.
| "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" |
There was a problem hiding this comment.
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 byuseIdor 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.

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
- React Performance tracks appear on the Performance panel’s timeline in your browser developer tools
- Added resume APIs for partial pre-rendering with Web Streams:
- Added resume APIs for partial pre-rendering with Node Streams:
- Updated
- 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
- Add Node Web Streams (
- Use underscore instead of
- Stringify context as "SomeContext" instead of "SomeContext.Provider" (@ kassens #33507)
- Include stack of cause of React instrumentation errors with
- Fix infinite
- Fix a bug when an initial value was passed to
- Fix a crash when submitting forms with Client Actions (@ sebmarkbage #33055)
- Hide/unhide the content of dehydrated suspense boundaries if they resuspend (@ sebmarkbage #32900)
- Avoid stack overflow on wide trees during Hot Reload (@ sophiebits #34145)
- Improve Owner and Component stacks in various places (@ sebmarkbage, @ eps1lon: #33629, #33724, #32735, #33723)
- Add
- Block on Suspensey Fonts during reveal of server-side-rendered content (@ sebmarkbage #33342)
- Use underscore instead of
- Stop warning when ARIA 1.3 attributes are used (@ Abdul-Omira #34264)
- Allow
- Warn for using a React owned node as a Container if it also has text content (@ sebmarkbage #32774)
- s/HTML/text for for error messages if text hydration mismatches (@ rickhanlonii #32763)
- Fix a bug with
- Enable the
- Fix a bug with deeply nested Suspense inside Suspense fallback when server-side-rendering (@ gnoff #33467)
- Avoid hanging when suspending after aborting while rendering (@ gnoff #34192)
- Add Node Web Streams to server-side-rendering APIs for Node.js (@ sebmarkbage #33475)
- Preload
- Log error if production elements are rendered during development (@ eps1lon #34189)
- Fix a bug when returning a Temporary reference (e.g. a Client Reference) from Server Functions (@ sebmarkbage #34084, @ denk0403 #33761)
- Pass line/column to
- Support Async Modules in Turbopack Server References (@ lubieowoce #34531)
- Add support for .mjs file extension in Webpack (@ jennyscript #33028)
- Fix a wrong missing key warning (@ unstubbable #34350)
- Make console log resolve in predictable order (@ sebmarkbage #33665)
- createContainer and createHydrationContainer had their parameter order adjusted after
- Breaking: Require Node.js 18 or newer. (@ michaelfaith in #32458)
- Breaking: Flat config is now the default
- New Violations: Disallow calling
- New Violations: Disallow calling
- Handle
- Added
-
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
- Add extra loop protection to React Server Functions (@ sebmarkbage #35351)
-
19.1.3 - 2025-12-11
- Move
- Patch Promise cycles and toString on Server Functions (@ sebmarkbage, @ unstubbable #35289, #35345)
-
19.1.2 - 2025-12-03
- Bring React Server Component fixes to Server Actions (@ sebmarkbage #35277)
-
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
- Add extra loop protection to React Server Functions (@ sebmarkbage #35351)
-
19.0.2 - 2025-12-11
- Patch Promise cycles and toString on Server Functions (@ sebmarkbage, @ unstubbable #35289, #35345)
-
19.0.1 - 2025-12-03
- Bring React Server Component fixes to Server Actions (@ sebmarkbage #35277)
-
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 notesBelow 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.useEffectEventis a React Hook that lets you extract non-reactive logic into an Effect Event.cacheSignal(for RSCs) lets your know when thecache()lifetime is over.New React DOM Features
resume: to resume a prerender to a stream.resumeAndPrerender: to resume a prerender to HTML.resumeToPipeableStream: to resume a prerender to a stream.resumeAndPrerenderToNodeStream: to resume a prerender to HTML.prerenderAPIs to return apostponedstate that can be passed to theresumeAPIs.Notable changes
<ViewTransition>Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics.prerender,renderToReadableStream) to server-side-rendering APIs for Node.js:IDs generated by useIdAll Changes
React
<Activity />was developed over many years, starting beforeClassComponent.setState(@ acdlite @ sebmarkbage and many others)%oplaceholder (@ eps1lon #34198)useDeferredValueloop in popstate event (@ acdlite #32821)useDeferredValue(@ acdlite #34376)cacheSignal(@ sebmarkbage #33557)React DOM
:for IDs generated byuseId(@ sebmarkbage, @ eps1lon: #32001, #33342#33099, #33422)nonceto be used on hoistable styles (@ Andarist #32461)React.useinsideReact.lazy-ed Component (@ hi-ogawa #33941)progressiveChunkSizeoption for server-side-rendering APIs (@ sebmarkbage #33027)React Server Components
<img>and<link>using hints before they're rendered (@ sebmarkbage #34604)filterStackFrame(@ eps1lon #33707)React Reconciler
on*handlers to account for upcoming experimental APIseslint-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.
recommendedpreset. Legacy config moved torecommended-legacy. (@ michaelfaith in #32457)usewithin try/catch blocks. (@ poteto in #34040)useEffectEventfunctions in arbitrary closures. (@ jbrown215 in #33544)React.useEffectin addition touseEffectin rules-of-hooks. (@ Ayc0 in #34076)react-hookssettings config option that to acceptadditionalEffectHooksthat are used across exhaustive-deps and rules-of-hooks rules. (@ jbrown215) in #34497React Server Components
React Server Components
react-server-dom-webpack/*.unbundledto privatereact-server-dom-unbundled(@ eps1lon #35290)React Server Components
React Server Components
React Server Components
React Server Components
Important
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: