- Notifications
You must be signed in to change notification settings - Fork48.9k
Soften useFormState warning#28788
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Merged
Merged
Uh oh!
There was an error while loading.Please reload this page.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
react-sizebot commentedApr 9, 2024
Comparing:df95577...e3e9b96 Critical size changesIncludes critical production bundles, as well as any change greater than 2%:
Significant size changesIncludes any change greater than 0.2%: Expand to show
|
sebmarkbage approved these changesApr 9, 2024
rickhanlonii added a commit that referenced this pull requestApr 11, 2024
It's not deprecated, it's really just renamed. Let's make the warningless scary.
rickhanlonii added a commit that referenced this pull requestApr 11, 2024
It's not deprecated, it's really just renamed. Let's make the warningless scary.
EdisonVan pushed a commit to EdisonVan/react that referenced this pull requestApr 15, 2024
It's not deprecated, it's really just renamed. Let's make the warningless scary.
bigfootjon pushed a commit that referenced this pull requestApr 18, 2024
It's not deprecated, it's really just renamed. Let's make the warningless scary.DiffTrain build for commit9644d20.
facebook-github-bot pushed a commit to facebook/react-native that referenced this pull requestApr 19, 2024
Summary:This sync includes the changes from:- D56103750- [TODO] A shim for SECRET_INTERNALSThis sync includes the following changes:- **[b5e5ce8e0](facebook/react@b5e5ce8e0 )**: Update ReactNativeTypes for root options (part 2) ([#28857](facebook/react#28857)) //<Ricky>//- **[da6ba53b1](facebook/react@da6ba53b1 )**: [UMD] Remove umd builds ([#28735](facebook/react#28735)) //<Josh Story>//- **[0c245df1d](facebook/react@0c245df1d )**: Complete the typo fix ([#28856](facebook/react#28856)) //<Sebastian Silbermann>//- **[f82051d7a](facebook/react@f82051d7a )**: console test utils fix: match entire string, not just first letter ([#28855](facebook/react#28855)) //<Andrew Clark>//- **[4ca20fd36](facebook/react@4ca20fd36 )**: Test top level fragment inside lazy semantics ([#28852](facebook/react#28852)) //<Sebastian Markbåge>//- **[c0cf7c696](facebook/react@c0cf7c696 )**: Promote ASYNC_ITERATOR symbol to React Symbols ([#28851](facebook/react#28851)) //<Sebastian Markbåge>//- **[657428a9e](facebook/react@657428a9e )**: Add ReactNativeTypes for root options ([#28850](facebook/react#28850)) //<Ricky>//- **[7909d8eab](facebook/react@7909d8eab )**: [Flight] Encode ReadableStream and AsyncIterables ([#28847](facebook/react#28847)) //<Sebastian Markbåge>//- **[13eb61d05](facebook/react@13eb61d05 )**: Move enableUseDeferredValueInitialArg to canary ([#28818](facebook/react#28818)) //<Andrew Clark>//- **[8afa144bd](facebook/react@8afa144bd )**: Enable flag disableClientCache ([#28846](facebook/react#28846)) //<Jan Kassens>//- **[734956ace](facebook/react@734956ace )**: Devtools: Add support for useFormStatus ([#28413](facebook/react#28413)) //<Sebastian Silbermann>//- **[17e920c00](facebook/react@17e920c00 )**: [Flight Reply] Encode Typed Arrays and Blobs ([#28819](facebook/react#28819)) //<Sebastian Markbåge>//- **[0347fcd00](facebook/react@0347fcd00 )**: Add on(Caught|Uncaught|Recoverable) opts to RN ([#28836](facebook/react#28836)) //<Ricky>//- **[c113503ad](facebook/react@c113503ad )**: Flush direct streams in Bun ([#28837](facebook/react#28837)) //<Kenta Iwasaki>//- **[9defcd56b](facebook/react@9defcd56b )**: Remove redundant props assign ([#28829](facebook/react#28829)) //<Sebastian Silbermann>//- **[ed4023603](facebook/react@ed4023603 )**: Fix mistaken "react-server" condition ([#28835](facebook/react#28835)) //<Sebastian Markbåge>//- **[c8a035036](facebook/react@c8a035036 )**: [Fizz] hoistables should never flush before the preamble ([#28802](facebook/react#28802)) //<Josh Story>//- **[4f5c812a3](facebook/react@4f5c812a3 )**: DevTools: Rely on sourcemaps to compute hook name of built-in hooks in newer versions ([#28593](facebook/react#28593)) //<Sebastian Silbermann>//- **[435415962](facebook/react@435415962 )**: Backwards compatibility for string refs on WWW ([#28826](facebook/react#28826)) //<Jack Pope>//- **[608edcc90](facebook/react@608edcc90 )**: [tests] add `assertConsole<method>Dev` helpers ([#28732](facebook/react#28732)) //<Ricky>//- **[da69b6af9](facebook/react@da69b6af9 )**: ReactDOM.requestFormReset ([#28809](facebook/react#28809)) //<Andrew Clark>//- **[374b5d26c](facebook/react@374b5d26c )**: Scaffolding for requestFormReset API ([#28808](facebook/react#28808)) //<Andrew Clark>//- **[41950d14a](facebook/react@41950d14a )**: Automatically reset forms after action finishes ([#28804](facebook/react#28804)) //<Andrew Clark>//- **[dc6a7e01e](facebook/react@dc6a7e01e )**: [Float] Don't preload images inside `<noscript>` ([#28815](facebook/react#28815)) //<Josh Story>//- **[3f947b1b4](facebook/react@3f947b1b4 )**: [tests] Assert scheduler log empty in internalAct ([#28737](facebook/react#28737)) //<Ricky>//- **[bf09089f6](facebook/react@bf09089f6 )**: Remove Scheduler.log from ReactSuspenseFuzz-test ([#28812](facebook/react#28812)) //<Ricky>//- **[84cb3b4cb](facebook/react@84cb3b4cb )**: Hardcode disableIEWorkarounds for www ([#28811](facebook/react#28811)) //<Ricky>//- **[2243b40ab](facebook/react@2243b40ab )**: [tests] assertLog before act in useEffectEvent ([#28763](facebook/react#28763)) //<Ricky>//- **[dfc64c6e3](facebook/react@dfc64c6e3 )**: [tests] assertLog before act in ReactUse ([#28762](facebook/react#28762)) //<Ricky>//- **[42eff4bc7](facebook/react@42eff4bc7 )**: [tests] Fix assertions not flushed before act ([#28745](facebook/react#28745)) //<Ricky>//- **[ed3c65caf](facebook/react@ed3c65caf )**: Warn if outdated JSX transform is detected ([#28781](facebook/react#28781)) //<Andrew Clark>//- **[3f9e237a2](facebook/react@3f9e237a2 )**: Fix: Suspend while recovering from hydration error ([#28800](facebook/react#28800)) //<Andrew Clark>//- **[7f5d25e23](facebook/react@7f5d25e23 )**: Fix cloneElement using string ref w no owner ([#28797](facebook/react#28797)) //<Joseph Savona>//- **[bf40b0244](facebook/react@bf40b0244 )**: [Fizz] Stop publishing external-runtime to stable channel ([#28796](facebook/react#28796)) //<Josh Story>//- **[7f93cb41c](facebook/react@7f93cb41c )**: [DOM] Infer react-server entries bundles if not explicitly configured ([#28795](facebook/react#28795)) //<Josh Story>//- **[f61316535](facebook/react@f61316535 )**: Rename SECRET INTERNALS to `__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE` ([#28789](facebook/react#28789)) //<Sebastian Markbåge>//- **[9644d206e](facebook/react@9644d206e )**: Soften useFormState warning ([#28788](facebook/react#28788)) //<Ricky>//- **[c771016e1](facebook/react@c771016e1 )**: Rename The Secret Export of Server Internals ([#28786](facebook/react#28786)) //<Sebastian Markbåge>//- **[d50323eb8](facebook/react@d50323eb8 )**: Flatten ReactSharedInternals ([#28783](facebook/react#28783)) //<Sebastian Markbåge>//- **[f62cf8c62](facebook/react@f62cf8c62 )**: [Float] treat `props.async` in Float consistent with the rest of react-dom ([#26760](facebook/react#26760)) //<Josh Story>//- **[dfd3d5af8](facebook/react@dfd3d5af8 )**: Add support for transition{run,start,cancel} events ([#27345](facebook/react#27345)) //<Hugo Sales>//- **[1f8327f83](facebook/react@1f8327f83 )**: [Fiber] Use real event priority for hydration scheduling ([#28765](facebook/react#28765)) //<Josh Story>//- **[97c90ed88](facebook/react@97c90ed88 )**: [DOM] Shrink ReactDOMCurrentDispatcher method names ([#28770](facebook/react#28770)) //<Josh Story>//- **[9007fdc8f](facebook/react@9007fdc8f )**: [DOM] Shrink ReactDOMSharedInternals source representation ([#28771](facebook/react#28771)) //<Josh Story>//- **[14f50ad15](facebook/react@14f50ad15 )**: [Flight] Allow lazily resolving outlined models ([#28780](facebook/react#28780)) //<Sebastian Markbåge>//- **[4c12339ce](facebook/react@4c12339ce )**: [DOM] move `flushSync` out of the reconciler ([#28500](facebook/react#28500)) //<Josh Story>//- **[8e1462e8c](facebook/react@8e1462e8c )**: [Fiber] Move updatePriority tracking to renderers ([#28751](facebook/react#28751)) //<Josh Story>//- **[0b3b8a6a3](facebook/react@0b3b8a6a3 )**: jsx: Remove unnecessary hasOwnProperty check ([#28775](facebook/react#28775)) //<Andrew Clark>//- **[2acfb7b60](facebook/react@2acfb7b60 )**: [Flight] Support FormData from Server to Client ([#28754](facebook/react#28754)) //<Sebastian Markbåge>//- **[d1547defe](facebook/react@d1547defe )**: Fast JSX: Don't clone props object ([#28768](facebook/react#28768)) //<Andrew Clark>//- **[bfd8da807](facebook/react@bfd8da807 )**: Make class prop resolution faster ([#28766](facebook/react#28766)) //<Andrew Clark>//- **[cbb6f2b54](facebook/react@cbb6f2b54 )**: [Flight] Support Blobs from Server to Client ([#28755](facebook/react#28755)) //<Sebastian Markbåge>//- **[f33a6b69c](facebook/react@f33a6b69c )**: Track Owner for Server Components in DEV ([#28753](facebook/react#28753)) //<Sebastian Markbåge>//- **[e3ebcd54b](facebook/react@e3ebcd54b )**: Move string ref coercion to JSX runtime ([#28473](facebook/react#28473)) //<Andrew Clark>//- **[fd0da3eef](facebook/react@fd0da3eef )**: Remove _owner field from JSX elements in prod if string refs are disabled ([#28739](facebook/react#28739)) //<Sebastian Markbåge>//Changelog:[General][Changed] - React Native sync for revisions 48b4ecc...b5e5ce8jest_e2e[run_all_tests]bypass-github-export-checksReviewed By: kassensDifferential Revision: D56251607fbshipit-source-id: e16db2fa101fc7ed1e009158c76388206beabd5f
This was referencedApr 24, 2024
henriettelienrebnor pushed a commit to equinor/Dexpi2Imf that referenced this pull requestApr 23, 2025
<h3>Snyk has created this PR to upgrade react from 19.0.0 to19.1.0.</h3>:information_source: Keep your dependencies up-to-date. This makes iteasier to fix existing vulnerabilities and to more quickly identify andfix newly disclosed vulnerabilities when they affect your project.<hr/>- The recommended version is **78 versions** ahead of your currentversion.- The recommended version was released **22 days ago**.<details><summary><b>Release notes</b></summary><br/> <details> <summary>Package name: <b>react</b></summary> <ul> <li><b>19.1.0</b> - <ahref="https://redirect.github.com/facebook/react/releases/tag/v19.1.0">2025-03-28</a></br><h3>OwnerStack</h3><p>An Owner Stack is a string representing the components that aredirectly responsible for rendering a particular component. You can logOwner Stacks when debugging or use Owner Stacks to enhance erroroverlays or other development tools. Owner Stacks are only available indevelopment builds. Component Stacks in production are unchanged.</p><ul><li>An Owner Stack is a development-only stack trace that helps identifywhich components are responsible for rendering a particular component.An Owner Stack is distinct from a Component Stacks, which shows thehierarchy of components leading to an error.</li><li>The <a href="https://react.dev/reference/react/captureOwnerStack"rel="nofollow">captureOwnerStack API</a> is only available indevelopment mode and returns a Owner Stack, if available. The API can beused to enhance error overlays or log component relationships whendebugging. <ahref="https://redirect.github.com/facebook/react/pull/29923"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29923/hovercard">#29923</a>, <ahref="https://redirect.github.com/facebook/react/pull/32353"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32353/hovercard">#32353</a>, <ahref="https://redirect.github.com/facebook/react/pull/30306"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30306/hovercard">#30306</a>,<br><a href="https://redirect.github.com/facebook/react/pull/32538"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32538/hovercard">#32538</a>, <ahref="https://redirect.github.com/facebook/react/pull/32529"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32529/hovercard">#32529</a>, <ahref="https://redirect.github.com/facebook/react/pull/32538"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32538/hovercard">#32538</a></li></ul><h3>React</h3><ul><li>Enhanced support for Suspense boundaries to be used anywhere,including the client, server, and during hydration. <ahref="https://redirect.github.com/facebook/react/pull/32069"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32069/hovercard">#32069</a>, <ahref="https://redirect.github.com/facebook/react/pull/32163"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32163/hovercard">#32163</a>, <ahref="https://redirect.github.com/facebook/react/pull/32224"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32224/hovercard">#32224</a>, <ahref="https://redirect.github.com/facebook/react/pull/32252"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32252/hovercard">#32252</a></li><li>Reduced unnecessary client rendering through improved hydrationscheduling <ahref="https://redirect.github.com/facebook/react/pull/31751"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31751/hovercard">#31751</a></li><li>Increased priority of client rendered Suspense boundaries <ahref="https://redirect.github.com/facebook/react/pull/31776"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31776/hovercard">#31776</a></li><li>Fixed frozen fallback states by rendering unfinished Suspenseboundaries on the client. <ahref="https://redirect.github.com/facebook/react/pull/31620"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31620/hovercard">#31620</a></li><li>Reduced garbage collection pressure by improving Suspense boundaryretries. <a href="https://redirect.github.com/facebook/react/pull/31667"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31667/hovercard">#31667</a></li><li>Fixed erroneous “Waiting for Paint” log when the passive effectphase was not delayed <ahref="https://redirect.github.com/facebook/react/pull/31526"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31526/hovercard">#31526</a></li><li>Fixed a regression causing key warnings for flattened positionalchildren in development mode. <ahref="https://redirect.github.com/facebook/react/pull/32117"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32117/hovercard">#32117</a></li><li>Updated <code>useId</code> to use valid CSS selectors, changingformat from <code>:r123:</code> to <code>«r123»</code>. <ahref="https://redirect.github.com/facebook/react/pull/32001"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32001/hovercard">#32001</a></li><li>Added a dev-only warning for null/undefined created in useEffect,useInsertionEffect, and useLayoutEffect. <ahref="https://redirect.github.com/facebook/react/pull/32355"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32355/hovercard">#32355</a></li><li>Fixed a bug where dev-only methods were exported in productionbuilds. React.act is no longer available in production builds. <ahref="https://redirect.github.com/facebook/react/pull/32200"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32200/hovercard">#32200</a></li><li>Improved consistency across prod and dev to improve compatibilitywith Google Closure Complier and bindings <ahref="https://redirect.github.com/facebook/react/pull/31808"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31808/hovercard">#31808</a></li><li>Improve passive effect scheduling for consistent task yielding. <ahref="https://redirect.github.com/facebook/react/pull/31785"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31785/hovercard">#31785</a></li><li>Fixed asserts in React Native whenpassChildrenWhenCloningPersistedNodes is enabled for OffscreenComponentrendering. <ahref="https://redirect.github.com/facebook/react/pull/32528"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32528/hovercard">#32528</a></li><li>Fixed component name resolution for Portal <ahref="https://redirect.github.com/facebook/react/pull/32640"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32640/hovercard">#32640</a></li><li>Added support for beforetoggle and toggle events on the dialogelement. <a data-error-text="Failed toload title" data-id="2882132160" data-permission-text="Title is private"data-url="https://github.com/facebook/react/issues/32479"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32479/hovercard"href="https://redirect.github.com/facebook/react/pull/32479">#32479</a><a href="https://redirect.github.com/facebook/react/pull/32479"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32479/hovercard">#32479</a></li></ul><h3>React DOM</h3><ul><li>Fixed double warning when the <code>href</code> attribute is anempty string <ahref="https://redirect.github.com/facebook/react/pull/31783"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31783/hovercard">#31783</a></li><li>Fixed an edge case where <code>getHoistableRoot()</code> didn’t workproperly when the container was a Document <ahref="https://redirect.github.com/facebook/react/pull/32321"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32321/hovercard">#32321</a></li><li>Removed support for using HTML comments (e.g. <code><!----></code>) as a DOM container. <ahref="https://redirect.github.com/facebook/react/pull/32250"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32250/hovercard">#32250</a></li><li>Added support for <code><script></code> and<code><template></code> tags to be nested within<code><select></code> tags. <ahref="https://redirect.github.com/facebook/react/pull/31837"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31837/hovercard">#31837</a></li><li>Fixed responsive images to be preloaded as HTML instead of headers<a href="https://redirect.github.com/facebook/react/pull/32445"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32445/hovercard">#32445</a></li></ul><h3>use-sync-external-store</h3><ul><li>Added <code>exports</code> field to <code>package.json</code> for<code>use-sync-external-store</code> to support various entrypoints. <ahref="https://redirect.github.com/facebook/react/pull/25231"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25231/hovercard">#25231</a></li></ul><h3>React Server Components</h3><ul><li>Added <code>unstable_prerender</code>, a new experimental API forprerendering React Server Components on the server <ahref="https://redirect.github.com/facebook/react/pull/31724"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31724/hovercard">#31724</a></li><li>Fixed an issue where streams would hang when receiving new chunksafter a global error <ahref="https://redirect.github.com/facebook/react/pull/31840"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31840/hovercard">#31840</a>, <ahref="https://redirect.github.com/facebook/react/pull/31851"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31851/hovercard">#31851</a></li><li>Fixed an issue where pending chunks were counted twice. <ahref="https://redirect.github.com/facebook/react/pull/31833"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31833/hovercard">#31833</a></li><li>Added support for streaming in edge environments <ahref="https://redirect.github.com/facebook/react/pull/31852"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31852/hovercard">#31852</a></li><li>Added support for sending custom error names from a server so thatthey are available in the client for console replaying. <ahref="https://redirect.github.com/facebook/react/pull/32116"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32116/hovercard">#32116</a></li><li>Updated the server component wire format to remove IDs for hints andconsole.log because they have no return value <ahref="https://redirect.github.com/facebook/react/pull/31671"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31671/hovercard">#31671</a></li><li>Exposed <code>registerServerReference</code> in client builds tohandle server references in different environments. <ahref="https://redirect.github.com/facebook/react/pull/32534"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32534/hovercard">#32534</a></li><li>Added react-server-dom-parcel package which integrates ServerComponents with the <a href="https://parceljs.org/"rel="nofollow">Parcel bundler</a> <ahref="https://redirect.github.com/facebook/react/pull/31725"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31725/hovercard">#31725</a>, <ahref="https://redirect.github.com/facebook/react/pull/32132"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32132/hovercard">#32132</a>, <ahref="https://redirect.github.com/facebook/react/pull/31799"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31799/hovercard">#31799</a>, <ahref="https://redirect.github.com/facebook/react/pull/32294"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/32294/hovercard">#32294</a>, <ahref="https://redirect.github.com/facebook/react/pull/31741"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31741/hovercard">#31741</a></li></ul> </li> <li> <b>19.1.0-canary-ff628334-20250205</b> - 2025-02-06 </li> <li> <b>19.1.0-canary-fcb4e0f1-20250219</b> - 2025-02-20 </li> <li> <b>19.1.0-canary-fc8a898d-20241226</b> - 2024-12-27 </li> <li> <b>19.1.0-canary-fbcda19a-20250317</b> - 2025-03-17 </li> <li> <b>19.1.0-canary-f9d78089-20250306</b> - 2025-03-07 </li> <li> <b>19.1.0-canary-f83903bf-20250212</b> - 2025-02-12 </li> <li> <b>19.1.0-canary-f457d0b4-20250313</b> - 2025-03-13 </li> <li> <b>19.1.0-canary-f0edf41e-20250115</b> - 2025-01-14 </li> <li> <b>19.1.0-canary-ef979d47-20241218</b> - 2024-12-18 </li> <li> <b>19.1.0-canary-ef4bc8b4-20250328</b> - 2025-03-28 </li> <li> <b>19.1.0-canary-ebc22ef7-20250225</b> - 2025-02-26 </li> <li> <b>19.1.0-canary-e670e72f-20250214</b> - 2025-02-14 </li> <li> <b>19.1.0-canary-e1e74071-20250321</b> - 2025-03-21 </li> <li> <b>19.1.0-canary-e06c72fc-20241215</b> - 2024-12-16 </li> <li> <b>19.1.0-canary-e03ac20f-20250305</b> - 2025-03-05 </li> <li> <b>19.1.0-canary-de82912e-20241220</b> - 2024-12-20 </li> <li> <b>19.1.0-canary-de1eaa26-20250124</b> - 2025-01-24 </li> <li> <b>19.1.0-canary-db7dfe05-20250319</b> - 2025-03-19 </li> <li> <b>19.1.0-canary-d85cf3e5-20250205</b> - 2025-02-05 </li> <li> <b>19.1.0-canary-d55cc79b-20250228</b> - 2025-02-28 </li> <li> <b>19.1.0-canary-d46b04a2-20250117</b> - 2025-01-17 </li> <li> <b>19.1.0-canary-d4287258-20241217</b> - 2024-12-17 </li> <li> <b>19.1.0-canary-d331ba04-20250307</b> - 2025-03-10 </li> <li> <b>19.1.0-canary-cd90a4d8-20250210</b> - 2025-02-11 </li> <li> <b>19.1.0-canary-cbbe8666-20250213</b> - 2025-02-13 </li> <li> <b>19.1.0-canary-cabd8a0e-20250113</b> - 2025-01-13 </li> <li> <b>19.1.0-canary-c69a5fc5-20250318</b> - 2025-03-18 </li> <li> <b>19.1.0-canary-c492f975-20250128</b> - 2025-01-29 </li> <li> <b>19.1.0-canary-c01b8058-20241229</b> - 2024-12-30 </li> <li> <b>19.1.0-canary-bb9a24d9-20250130</b> - 2025-01-30 </li> <li> <b>19.1.0-canary-b3a95caf-20250113</b> - 2025-01-14 </li> <li> <b>19.1.0-canary-b158439a-20250115</b> - 2025-01-15 </li> <li> <b>19.1.0-canary-ae9017ce-20250122</b> - 2025-01-23 </li> <li> <b>19.1.0-canary-a84862db-20250218</b> - 2025-02-19 </li> <li> <b>19.1.0-canary-a4f9bd58-20250319</b> - 2025-03-20 </li> <li> <b>19.1.0-canary-a4b2d0d5-20250203</b> - 2025-02-03 </li> <li> <b>19.1.0-canary-9ff42a87-20250130</b> - 2025-01-31 </li> <li> <b>19.1.0-canary-9eabb373-20250124</b> - 2025-01-27 </li> <li> <b>19.1.0-canary-9b62ee71-20250122</b> - 2025-01-22 </li> <li> <b>19.1.0-canary-97d79495-20241223</b> - 2024-12-24 </li> <li> <b>19.1.0-canary-9463d51e-20241219</b> - 2024-12-19 </li> <li> <b>19.1.0-canary-93b58361-20250209</b> - 2025-02-10 </li> <li> <b>19.1.0-canary-8a7b487e-20250218</b> - 2025-02-18 </li> <li> <b>19.1.0-canary-8759c5c8-20250207</b> - 2025-02-07 </li> <li> <b>19.1.0-canary-7eb8234f-20241218</b> - 2024-12-18 </li> <li> <b>19.1.0-canary-7b402084-20250107</b> - 2025-01-07 </li> <li> <b>19.1.0-canary-74ea0c73-20250109</b> - 2025-01-09 </li> <li> <b>19.1.0-canary-740a4f7a-20250325</b> - 2025-03-25 </li> <li> <b>19.1.0-canary-7130d0c6-20241212</b> - 2024-12-12 </li> <li> <b>19.1.0-canary-6aa8254b-20250312</b> - 2025-03-12 </li> <li> <b>19.1.0-canary-694d3e1a-20241231</b> - 2025-01-01 </li> <li> <b>19.1.0-canary-6907aa2a-20241220</b> - 2024-12-23 </li> <li> <b>19.1.0-canary-662957cc-20250221</b> - 2025-02-21 </li> <li> <b>19.1.0-canary-62208bee-20250102</b> - 2025-01-02 </li> <li> <b>19.1.0-canary-5b51a2b9-20250116</b> - 2025-01-16 </li> <li> <b>19.1.0-canary-540efebc-20250112</b> - 2025-01-12 </li> <li> <b>19.1.0-canary-5398b711-20250314</b> - 2025-03-14 </li> <li> <b>19.1.0-canary-518d06d2-20241219</b> - 2024-12-19 </li> <li> <b>19.1.0-canary-4dff0e62-20241213</b> - 2024-12-13 </li> <li> <b>19.1.0-canary-4632e36a-20250216</b> - 2025-02-17 </li> <li> <b>19.1.0-canary-443b7ff2-20250303</b> - 2025-03-04 </li> <li> <b>19.1.0-canary-4280563b-20250326</b> - 2025-03-27 </li> <li> <b>19.1.0-canary-42687267-20250108</b> - 2025-01-08 </li> <li> <b>19.1.0-canary-3ce77d55-20250106</b> - 2025-01-06 </li> <li> <b>19.1.0-canary-3b009b4c-20250102</b> - 2025-01-03 </li> <li> <b>19.1.0-canary-37906d4d-20250127</b> - 2025-01-28 </li> <li> <b>19.1.0-canary-32b0cad8-20250213</b> - 2025-02-13 </li> <li> <b>19.1.0-canary-313332d1-20250326</b> - 2025-03-26 </li> <li> <b>19.1.0-canary-2980f277-20250301</b> - 2025-03-03 </li> <li> <b>19.1.0-canary-25677265-20250224</b> - 2025-02-24 </li> <li> <b>19.1.0-canary-22e39ea7-20250225</b> - 2025-02-25 </li> <li> <b>19.1.0-canary-18eaf51b-20250118</b> - 2025-01-20 </li> <li> <b>19.1.0-canary-130095f7-20241212</b> - 2024-12-12 </li> <li> <b>19.1.0-canary-0ca3deeb-20250311</b> - 2025-03-11 </li> <li> <b>19.1.0-canary-0a82580b-20250203</b> - 2025-02-04 </li> <li> <b>19.1.0-canary-056073de-20250109</b> - 2025-01-10 </li> <li> <b>19.1.0-canary-029e8bd6-20250306</b> - 2025-03-06 </li> <li><b>19.0.0</b> - <ahref="https://redirect.github.com/facebook/react/releases/tag/v19.0.0">2024-12-05</a></br><p>Belowis a list of all new features, APIs, deprecations, and breaking changes.Read <a href="https://react.dev/blog/2024/04/25/react-19"rel="nofollow">React 19 release post</a> and <ahref="https://react.dev/blog/2024/04/25/react-19-upgrade-guide"rel="nofollow">React 19 upgrade guide</a> for more information.</p><blockquote><p>Note: To help make the upgrade to React 19 easier, we’ve published areact@18.3 release that is identical to 18.2 but adds warnings fordeprecated APIs and other changes that are needed for React 19. Werecommend upgrading to React 18.3.1 first to help identify any issuesbefore upgrading to React 19.</p></blockquote><h2>New Features</h2><h3>React</h3><ul><li>Actions: <code>startTransition</code> can now accept asyncfunctions. Functions passed to <code>startTransition</code> are called“Actions”. A given Transition can include one or more Actions whichupdate state in the background and update the UI with one commit. Inaddition to updating state, Actions can now perform side effectsincluding async requests, and the Action will wait for the work tofinish before finishing the Transition. This feature allows Transitionsto include side effects like <code>fetch()</code> in the pending state,and provides support for error handling, and optimistic updates.</li><li><code>useActionState</code>: is a new hook to order Actions insideof a Transition with access to the state of the action, and the pendingstate. It accepts a reducer that can call Actions, and the initial stateused for first render. It also accepts an optional string that is usedif the action is passed to a form <code>action</code> prop to supportprogressive enhancement in forms.</li><li><code>useOptimistic</code>: is a new hook to update state while aTransition is in progress. It returns the state, and a set function thatcan be called inside a transition to “optimistically” update the stateto expected final value immediately while the Transition completes inthe background. When the transition finishes, the state is updated tothe new value.</li><li><code>use</code>: is a new API that allows reading resources inrender. In React 19, <code>use</code> accepts a promise or Context. Ifprovided a promise, <code>use</code> will suspend until a value isresolved. <code>use</code> can only be used in render but can be calledconditionally.</li><li><code>ref</code> as a prop: Refs can now be used as props, removingthe need for <code>forwardRef</code>.</li><li><strong>Suspense sibling pre-warming</strong>: When a componentsuspends, React will immediately commit the fallback of the nearestSuspense boundary, without waiting for the entire sibling tree torender. After the fallback commits, React will schedule another renderfor the suspended siblings to “pre-warm” lazy requests.</li></ul><h3>React DOM Client</h3><ul><li><code><form> action</code> prop: Form Actions allow you tomanage forms automatically and integrate with<code>useFormStatus</code>. When a <code><form> action</code>succeeds, React will automatically reset the form for uncontrolledcomponents. The form can be reset manually with the new<code>requestFormReset</code> API.</li><li><code><button> and <input> formAction</code> prop:Actions can be passed to the <code>formAction</code> prop to configureform submission behavior. This allows using different Actions dependingon the input.</li><li><code>useFormStatus</code>: is a new hook that provides the statusof the parent <code><form> action</code>, as if the form was aContext provider. The hook returns the values: <code>pending</code>,<code>data</code>, <code>method</code>, and <code>action</code>.</li><li>Support for Document Metadata: We’ve added support for renderingdocument metadata tags in components natively. React will automaticallyhoist them into the <code><head></code> section of thedocument.</li><li>Support for Stylesheets: React 19 will ensure stylesheets areinserted into the <code><head></code> on the client beforerevealing the content of a Suspense boundary that depends on thatstylesheet.</li><li>Support for async scripts: Async scripts can be rendered anywhere inthe component tree and React will handle ordering anddeduplication.</li><li>Support for preloading resources: React 19 ships with<code>preinit</code>, <code>preload</code>, <code>prefetchDNS</code>,and <code>preconnect</code> APIs to optimize initial page loads bymoving discovery of additional resources like fonts out of stylesheetloading. They can also be used to prefetch resources used by ananticipated navigation.</li></ul><h3>React DOM Server</h3><ul><li>Added <code>prerender</code> and <code>prerenderToNodeStream</code>APIs for static site generation. They are designed to work withstreaming environments like Node.js Streams and Web Streams. Unlike<code>renderToString</code>, they wait for data to load for HTMLgeneration.</li></ul><h3>React Server Components</h3><ul><li>RSC features such as directives, server components, and serverfunctions are now stable. This means libraries that ship with ServerComponents can now target React 19 as a peer dependency with areact-server export condition for use in frameworks that support theFull-stack React Architecture. The underlying APIs used to implement aReact Server Components bundler or framework do not follow semver andmay break between minors in React 19.x. See <ahref="https://19.react.dev/reference/rsc/server-components"rel="nofollow">docs</a> for how to support React Server Components.</li></ul><h2>Deprecations</h2><ul><li>Deprecated: <code>element.ref</code> access: React 19 supports refas a prop, so we’re deprecating <code>element.ref</code> in favor of<code>element.props.ref</code>. Accessing will result in a warning.</li><li><code>react-test-renderer</code>: In React 19, react-test-rendererlogs a deprecation warning and has switched to concurrent rendering forweb usage. We recommend migrating your tests to @testinglibrary.com/docs/react-testing-library/intro/) or @testingesting-library.com/docs/react-native-testing-library/intro)</li></ul><h2>Breaking Changes</h2><p>React 19 brings in a number of breaking changes, including theremovals of long-deprecated APIs. We recommend first upgrading to<code>18.3.1</code>, where we've added additional deprecation warnings.Check out the <ahref="https://19.react.dev/blog/2024/04/25/react-19-upgrade-guide"rel="nofollow">upgrade guide</a> for more details and guidance oncodemodding.</p><h3>React</h3><ul><li>New JSX Transform is now required: We introduced <ahref="https://legacy.reactjs.org/blog/2020/09/22/introducing-the-new-jsx-transform.html"rel="nofollow">a new JSX transform</a> in 2020 to improve bundle sizeand use JSX without importing React. In React 19, we’re addingadditional improvements like using ref as a prop and JSX speedimprovements that require the new transform.</li><li>Errors in render are not re-thrown: Errors that are not caught by anError Boundary are now reported to window.reportError. Errors that arecaught by an Error Boundary are reported to console.error. We’veintroduced <code>onUncaughtError</code> and <code>onCaughtError</code>methods to <code>createRoot</code> and <code>hydrateRoot</code> tocustomize this error handling.</li><li>Removed: <code>propTypes</code>: Using <code>propTypes</code> willnow be silently ignored. If required, we recommend migrating toTypeScript or another type-checking solution.</li><li>Removed: <code>defaultProps</code> for functions: ES6 defaultparameters can be used in place. Class components continue to support<code>defaultProps</code> since there is no ES6 alternative.</li><li>Removed: <code>contextTypes</code> and <code>getChildContext</code>:Legacy Context for class components has been removed in favor of the<code>contextType</code> API.</li><li>Removed: string refs: Any usage of string refs need to be migratedto ref callbacks.</li><li>Removed: Module pattern factories: A rarely used pattern that can bemigrated to regular functions.</li><li>Removed: <code>React.createFactory</code>: Now that JSX is broadlysupported, all <code>createFactory</code> usage can be migrated to JSXcomponents.</li><li>Removed: <code>react-test-renderer/shallow</code>: This has been are-export of <ahref="https://redirect.github.com/enzymejs/react-shallow-renderer">react-shallow-renderer</a>since React 18. If needed, you can continue to use the third-partypackage directly. We recommend using @testinglibrary.com/docs/react-testing-library/intro/) or @testingesting-library.com/docs/react-native-testing-library/intro)instead.</li></ul><h3>React DOM</h3><ul><li>Removed: <code>react-dom/test-utils</code>: We’ve moved<code>act</code> from <code>react-dom/test-utils</code> to react. Allother utilities have been removed.</li><li>Removed: <code>ReactDOM</code>.<code>render</code>,<code>ReactDOM</code>.<code>hydrate</code>: These have been removed infavor of the concurrent equivalents:<code>ReactDOM</code>.<code>createRoot</code> and<code>ReactDOM.hydrateRoot</code>.</li><li>Removed: <code>unmountComponentAtNode</code>: Removed in favor of<code>root.unmount()</code>.</li><li>Removed: <code>ReactDOM</code>.<code>findDOMNode</code>: You canreplace <code>ReactDOM</code>.<code>findDOMNode</code> with DOMRefs.</li></ul><h2>Notable Changes</h2><h3>React</h3><ul><li><code><Context></code> as a provider: You can now render<code><Context></code> as a provider instead of<code><Context.Provider></code>.</li><li>Cleanup functions for refs: When the component unmounts, React willcall the cleanup function returned from the ref callback.</li><li><code>useDeferredValue</code> initial value argument: When provided,<code>useDeferredValue</code> will return the initial value for theinitial render of a component, then schedule a re-render in thebackground with the <code>deferredValue</code> returned.</li><li>Support for Custom Elements: React 19 now passes all tests on <ahref="https://custom-elements-everywhere.com/" rel="nofollow">CustomElements Everywhere</a>.</li><li>StrictMode changes: <code>useMemo</code> and<code>useCallback</code> will now reuse the memoized results from thefirst render, during the second render. Additionally, StrictMode willnow double-invoke ref callback functions on initial mount.</li><li>UMD builds removed: To load React 19 with a script tag, we recommendusing an ESM-based CDN such as <a href="http://esm.sh"rel="nofollow">esm.sh</a>.</li></ul><h3>React DOM</h3><ul><li>Diffs for hydration errors: In the case of a mismatch, React 19 logsa single error with a diff of the mismatched content.</li><li>Compatibility with third-party scripts and extensions: React willnow force a client re-render to fix up any mismatched content caused byelements inserted by third-party JS.</li></ul><h2>TypeScript Changes</h2><p>The most common changes can be codemodded with <code>npxtypes-react-codemod@latest preset-19./path-to-your-react-ts-files</code>.</p><ul><li>Removed deprecated TypeScript types:<ul><li><code>ReactChild</code> (replacement: <code>React.ReactElement |number | string)</code></li><li><code>ReactFragment</code> (replacement:<code>Iterable<React.ReactNode></code>)</li><li><code>ReactNodeArray</code> (replacement:<code>ReadonlyArray<React.ReactNode></code>)</li><li><code>ReactText</code> (replacement: <code>number |string</code>)</li><li><code>VoidFunctionComponent</code> (replacement:<code>FunctionComponent</code>)</li><li><code>VFC</code> (replacement: <code>FC</code>)</li><li>Moved to <code>prop-types</code>: <code>Requireable</code>,<code>ValidationMap</code>, <code>Validator</code>,<code>WeakValidationMap</code></li><li>Moved to <code>create-react-class</code>:<code>ClassicComponentClass</code>, <code>ClassicComponent</code>,<code>ClassicElement</code>, <code>ComponentSpec</code>,<code>Mixin</code>, <code>ReactChildren</code>, <code>ReactHTML</code>,<code>ReactSVG</code>, <code>SFCFactory</code></li></ul></li><li>Disallow implicit return in refs: refs can now accept cleanupfunctions. When you return something else, we can’t tell if youintentionally returned something not meant to clean up or returned thewrong value. Implicit returns of anything but functions will nowerror.</li><li>Require initial argument to <code>useRef</code>: The initialargument is now required to match <code>useState</code>,<code>createContext</code> etc</li><li>Refs are mutable by default: Ref objects returned from<code>useRef()</code> are now always mutable instead of sometimes beingimmutable. This feature was too confusing for users and conflicted withlegit cases where refs were managed by React and manually writtento.</li><li>Strict <code>ReactElement</code> typing: The props of React elementsnow default to <code>unknown</code> instead of <code>any</code> if theelement is typed as <code>ReactElement</code></li><li>JSX namespace in TypeScript: The global <code>JSX</code> namespaceis removed to improve interoperability with other libraries using JSX.Instead, the JSX namespace is available from the React package:<code>import { JSX } from 'react'</code></li><li>Better <code>useReducer</code> typings: Most <code>useReducer</code>usage should not require explicit type arguments.<br>For example,<divdata-snippet-clipboard-copy-content="-useReducer<React.Reducer<State,Action>>(reducer)+useReducer(reducer) "><pre><span><spanclass="pl-md">-</span>useReducer<React.Reducer<State,Action>>(reducer) </span><span><span>+</span>useReducer(reducer)</span></pre></div>or<divdata-snippet-clipboard-copy-content="-useReducer<React.Reducer<State,Action>>(reducer)+useReducer<State, [Action]>(reducer)"><pre><spanclass="pl-md"><spanclass="pl-md">-</span>useReducer<React.Reducer<State,Action>>(reducer) </span><span><span>+</span>useReducer<State,[Action]>(reducer)</span></pre></div></li></ul><h2>All Changes</h2><h3>React</h3><ul><li>Add support for async Actions (<ahref="https://redirect.github.com/facebook/react/pull/26621"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26621/hovercard">#26621</a>, <ahref="https://redirect.github.com/facebook/react/pull/26726"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26726/hovercard">#26726</a>, <ahref="https://redirect.github.com/facebook/react/pull/28078"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28078/hovercard">#28078</a>, <ahref="https://redirect.github.com/facebook/react/pull/28097"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28097/hovercard">#28097</a>, <ahref="https://redirect.github.com/facebook/react/pull/29226"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29226/hovercard">#29226</a>, <ahref="https://redirect.github.com/facebook/react/pull/29618"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29618/hovercard">#29618</a>, <ahref="https://redirect.github.com/facebook/react/pull/29670"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29670/hovercard">#29670</a>, <ahref="https://redirect.github.com/facebook/react/pull/26716"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26716/hovercard">#26716</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a> and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/sebmarkbage/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sebmarkbage">@ sebmarkbage</a>)</li><li>Add <code>useActionState()</code> hook to update state based on theresult of a Form Action (<ahref="https://redirect.github.com/facebook/react/pull/27270"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27270/hovercard">#27270</a>, <ahref="https://redirect.github.com/facebook/react/pull/27278"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27278/hovercard">#27278</a>, <ahref="https://redirect.github.com/facebook/react/pull/27309"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27309/hovercard">#27309</a>, <ahref="https://redirect.github.com/facebook/react/pull/27302"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27302/hovercard">#27302</a>, <ahref="https://redirect.github.com/facebook/react/pull/27307"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27307/hovercard">#27307</a>, <ahref="https://redirect.github.com/facebook/react/pull/27366"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27366/hovercard">#27366</a>, <ahref="https://redirect.github.com/facebook/react/pull/27370"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27370/hovercard">#27370</a>, <ahref="https://redirect.github.com/facebook/react/pull/27321"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27321/hovercard">#27321</a>, <ahref="https://redirect.github.com/facebook/react/pull/27374"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27374/hovercard">#27374</a>, <ahref="https://redirect.github.com/facebook/react/pull/27372"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27372/hovercard">#27372</a>, <ahref="https://redirect.github.com/facebook/react/pull/27397"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27397/hovercard">#27397</a>, <ahref="https://redirect.github.com/facebook/react/pull/27399"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27399/hovercard">#27399</a>, <ahref="https://redirect.github.com/facebook/react/pull/27460"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27460/hovercard">#27460</a>, <ahref="https://redirect.github.com/facebook/react/pull/28557"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28557/hovercard">#28557</a>, <ahref="https://redirect.github.com/facebook/react/pull/27570"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27570/hovercard">#27570</a>, <ahref="https://redirect.github.com/facebook/react/pull/27571"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27571/hovercard">#27571</a>, <ahref="https://redirect.github.com/facebook/react/pull/28631"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28631/hovercard">#28631</a>, <ahref="https://redirect.github.com/facebook/react/pull/28788"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28788/hovercard">#28788</a>, <ahref="https://redirect.github.com/facebook/react/pull/29694"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29694/hovercard">#29694</a>, <ahref="https://redirect.github.com/facebook/react/pull/29695"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29695/hovercard">#29695</a>, <ahref="https://redirect.github.com/facebook/react/pull/29694"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29694/hovercard">#29694</a>, <ahref="https://redirect.github.com/facebook/react/pull/29665"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/29665/hovercard">#29665</a>, <ahref="https://redirect.github.com/facebook/react/pull/28232"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28232/hovercard">#28232</a>, <ahref="https://redirect.github.com/facebook/react/pull/28319"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28319/hovercard">#28319</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/eps1lon/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/eps1lon">@ eps1lon</a>, and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/rickhanlonii/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/rickhanlonii">@ rickhanlonii</a>)</li><li>Add <code>use()</code> API to read resources in render (<ahref="https://redirect.github.com/facebook/react/pull/25084"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25084/hovercard">#25084</a>, <ahref="https://redirect.github.com/facebook/react/pull/25202"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25202/hovercard">#25202</a>, <ahref="https://redirect.github.com/facebook/react/pull/25207"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25207/hovercard">#25207</a>, <ahref="https://redirect.github.com/facebook/react/pull/25214"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25214/hovercard">#25214</a>, <ahref="https://redirect.github.com/facebook/react/pull/25226"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25226/hovercard">#25226</a>, <ahref="https://redirect.github.com/facebook/react/pull/25247"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25247/hovercard">#25247</a>, <ahref="https://redirect.github.com/facebook/react/pull/25539"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25539/hovercard">#25539</a>, <ahref="https://redirect.github.com/facebook/react/pull/25538"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25538/hovercard">#25538</a>, <ahref="https://redirect.github.com/facebook/react/pull/25537"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25537/hovercard">#25537</a>, <ahref="https://redirect.github.com/facebook/react/pull/25543"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25543/hovercard">#25543</a>, <ahref="https://redirect.github.com/facebook/react/pull/25561"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25561/hovercard">#25561</a>, <ahref="https://redirect.github.com/facebook/react/pull/25620"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25620/hovercard">#25620</a>, <ahref="https://redirect.github.com/facebook/react/pull/25615"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25615/hovercard">#25615</a>, <ahref="https://redirect.github.com/facebook/react/pull/25922"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25922/hovercard">#25922</a>, <ahref="https://redirect.github.com/facebook/react/pull/25641"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25641/hovercard">#25641</a>, <ahref="https://redirect.github.com/facebook/react/pull/25634"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25634/hovercard">#25634</a>, <ahref="https://redirect.github.com/facebook/react/pull/26232"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26232/hovercard">#26232</a>, <ahref="https://redirect.github.com/facebook/react/pull/26535"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26535/hovercard">#26536</a>, <ahref="https://redirect.github.com/facebook/react/pull/26739"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26739/hovercard">#26739</a>, <ahref="https://redirect.github.com/facebook/react/pull/28233"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28233/hovercard">#28233</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/mofeiZ/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/mofeiZ">@ mofeiZ</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/sebmarkbage/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sebmarkbage">@ sebmarkbage</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/sophiebits/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sophiebits">@ sophiebits</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/eps1lon/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/eps1lon">@ eps1lon</a>, and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/hansottowirtz/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/hansottowirtz">@hansottowirtz</a>)</li><li>Add <code>useOptimistic()</code> hook to display mutated stateoptimistically during an async mutation (<ahref="https://redirect.github.com/facebook/react/pull/26740"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26740/hovercard">#26740</a>, <ahref="https://redirect.github.com/facebook/react/pull/26772"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26772/hovercard">#26772</a>, <ahref="https://redirect.github.com/facebook/react/pull/27277"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27277/hovercard">#27277</a>, <ahref="https://redirect.github.com/facebook/react/pull/27453"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27453/hovercard">#27453</a>, <ahref="https://redirect.github.com/facebook/react/pull/27454"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27454/hovercard">#27454</a>, <ahref="https://redirect.github.com/facebook/react/pull/27936"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27936/hovercard">#27936</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Added an <code>initialValue</code> argument to<code>useDeferredValue()</code> hook (<ahref="https://redirect.github.com/facebook/react/pull/27500"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27500/hovercard">#27500</a>, <ahref="https://redirect.github.com/facebook/react/pull/27509"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27509/hovercard">#27509</a>, <ahref="https://redirect.github.com/facebook/react/pull/27512"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27512/hovercard">#27512</a>, <ahref="https://redirect.github.com/facebook/react/pull/27888"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27888/hovercard">#27888</a>, <ahref="https://redirect.github.com/facebook/react/pull/27550"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27550/hovercard">#27550</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Support refs as props, warn on <code>element.ref</code> access (<ahref="https://redirect.github.com/facebook/react/pull/28348"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28348/hovercard">#28348</a>, <ahref="https://redirect.github.com/facebook/react/pull/28464"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28464/hovercard">#28464</a>, <ahref="https://redirect.github.com/facebook/react/pull/28731"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28731/hovercard">#28731</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Support Custom Elements (<ahref="https://redirect.github.com/facebook/react/pull/22184"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/22184/hovercard">#22184</a>, <ahref="https://redirect.github.com/facebook/react/pull/26524"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26524/hovercard">#26524</a>, <ahref="https://redirect.github.com/facebook/react/pull/26523"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26523/hovercard">#26523</a>, <ahref="https://redirect.github.com/facebook/react/pull/27511"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27511/hovercard">#27511</a>, <ahref="https://redirect.github.com/facebook/react/pull/24541"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/24541/hovercard">#24541</a> by<a data-hovercard-type="user"data-hovercard-url="/users/josepharhar/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/josepharhar">@ josepharhar</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/sebmarkbage/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sebmarkbage">@ sebmarkbage</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/gnoff/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/gnoff">@ gnoff</a> and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/eps1lon/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/eps1lon">@ eps1lon</a>)</li><li>Add ref cleanup function (<ahref="https://redirect.github.com/facebook/react/pull/25686"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25686/hovercard">#25686</a>, <ahref="https://redirect.github.com/facebook/react/pull/28883"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28883/hovercard">#28883</a>, <ahref="https://redirect.github.com/facebook/react/pull/28910"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28910/hovercard">#28910</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sammy-SC/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sammy-SC">@ sammy-SC</a>), <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/jackpope/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/jackpope">@ jackpope</a>, and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/kassens/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/kassens">@ kassens</a>)</li><li>Sibling pre-rendering replaced by sibling pre-warming (<ahref="https://redirect.github.com/facebook/react/pull/26380"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26380/hovercard">#26380</a>, <ahref="https://redirect.github.com/facebook/react/pull/26549"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26549/hovercard">#26549</a>, <ahref="https://redirect.github.com/facebook/react/pull/30761"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30761/hovercard">#30761</a>, <ahref="https://redirect.github.com/facebook/react/pull/30800"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30800/hovercard">#30800</a>, <ahref="https://redirect.github.com/facebook/react/pull/30762"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30762/hovercard">#30762</a>, <ahref="https://redirect.github.com/facebook/react/pull/30879"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30879/hovercard">#30879</a>, <ahref="https://redirect.github.com/facebook/react/pull/30934"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30934/hovercard">#30934</a>, <ahref="https://redirect.github.com/facebook/react/pull/30952"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/30952/hovercard">#30952</a>, <ahref="https://redirect.github.com/facebook/react/pull/31056"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31056/hovercard">#31056</a>, <ahref="https://redirect.github.com/facebook/react/pull/31452"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/31452/hovercard">#31452</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sammy-SC/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sammy-SC">@ sammy-SC</a>), <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/gnoff/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/gnoff">@ gnoff</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/jackpope/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/jackpope">@ jackpope</a>, <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/rickhanlonii/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/rickhanlonii">@ rickhanlonii</a>)</li><li>Don’t rethrow errors at the root (<ahref="https://redirect.github.com/facebook/react/pull/28627"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28627/hovercard">#28627</a>, <ahref="https://redirect.github.com/facebook/react/pull/28641"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28641/hovercard">#28641</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sebmarkbage/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sebmarkbage">@ sebmarkbage</a>)</li><li>Batch sync discrete, continuous, and default lanes (<ahref="https://redirect.github.com/facebook/react/pull/25700"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25700/hovercard">#25700</a> by<a data-hovercard-type="user"data-hovercard-url="/users/tyao1/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/tyao1">@ tyao1</a>)</li><li>Switch <code><Context></code> to mean<code><Context.Provider></code> (<ahref="https://redirect.github.com/facebook/react/pull/28226"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28226/hovercard">#28226</a> by<a data-hovercard-type="user"data-hovercard-url="/users/gaearon/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/gaearon">@ gaearon</a>)</li><li>Changes to <em>StrictMode</em><ul><li>Handle <code>info</code>, <code>group</code>, and<code>groupCollapsed</code> in <em>StrictMode</em> logging (<ahref="https://redirect.github.com/facebook/react/pull/25172"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25172/hovercard">#25172</a> by<a data-hovercard-type="user"data-hovercard-url="/users/timneutkens/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/timneutkens">@ timneutkens</a>)</li><li>Refs are now attached/detached/attached in <em>StrictMode</em> (<ahref="https://redirect.github.com/facebook/react/pull/25049"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25049/hovercard">#25049</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sammy-SC/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sammy-SC">@ sammy-SC</a>)</li><li>Fix <code>useSyncExternalStore()</code> hydration in<em>StrictMode</em> (<ahref="https://redirect.github.com/facebook/react/pull/26791"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26791/hovercard">#26791</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sophiebits/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sophiebits">@ sophiebits</a>)</li><li>Always trigger <code>componentWillUnmount()</code> in<em>StrictMode</em> (<ahref="https://redirect.github.com/facebook/react/pull/26842"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26842/hovercard">#26842</a> by<a data-hovercard-type="user"data-hovercard-url="/users/tyao1/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/tyao1">@ tyao1</a>)</li><li>Restore double invoking <code>useState()</code> and<code>useReducer()</code> initializer functions in <em>StrictMode</em>(<a href="https://redirect.github.com/facebook/react/pull/28248"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/28248/hovercard">#28248</a> by<a data-hovercard-type="user"data-hovercard-url="/users/eps1lon/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/eps1lon">@ eps1lon</a>)</li><li>Reuse memoized result from first pass (<ahref="https://redirect.github.com/facebook/react/pull/25583"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25583/hovercard">#25583</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Fix <code>useId()</code> in <em>StrictMode</em> (<ahref="https://redirect.github.com/facebook/react/pull/25713"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25713/hovercard">#25713</a> by<a data-hovercard-type="user"data-hovercard-url="/users/gnoff/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/gnoff">@ gnoff</a>)</li><li>Add component name to <em>StrictMode</em> error messages (<ahref="https://redirect.github.com/facebook/react/pull/25718"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25718/hovercard">#25718</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sammy-SC/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sammy-SC">@ sammy-SC</a>)</li></ul></li><li>Add support for rendering BigInt (<ahref="https://redirect.github.com/facebook/react/pull/24580"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/24580/hovercard">#24580</a> by<a data-hovercard-type="user"data-hovercard-url="/users/eps1lon/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/eps1lon">@ eps1lon</a>)</li><li><code>act()</code> no longer checks <code>shouldYield</code> whichcan be inaccurate in test environments (<ahref="https://redirect.github.com/facebook/react/pull/26317"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26317/hovercard">#26317</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Warn when keys are spread with props (<ahref="https://redirect.github.com/facebook/react/pull/25697"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25697/hovercard">#25697</a>, <ahref="https://redirect.github.com/facebook/react/pull/26080"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26080/hovercard">#26080</a> by<a data-hovercard-type="user"data-hovercard-url="/users/sebmarkbage/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/sebmarkbage">@ sebmarkbage</a> and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/kassens/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/kassens">@ kassens</a>)</li><li>Generate sourcemaps for production build artifacts (<ahref="https://redirect.github.com/facebook/react/pull/26446"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26446/hovercard">#26446</a> by<a data-hovercard-type="user"data-hovercard-url="/users/markerikson/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/markerikson">@ markerikson</a>)</li><li>Improve stack diffing algorithm (<ahref="https://redirect.github.com/facebook/react/pull/27132"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/27132/hovercard">#27132</a> by<a data-hovercard-type="user"data-hovercard-url="/users/KarimP/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/KarimP">@ KarimP</a>)</li><li>Suspense throttling lowered from 500ms to 300ms (<ahref="https://redirect.github.com/facebook/react/pull/26803"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26803/hovercard">#26803</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Lazily propagate context changes (<ahref="https://redirect.github.com/facebook/react/pull/20890"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/20890/hovercard">#20890</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a> and <aclass="user-mention notranslate" data-hovercard-type="user"data-hovercard-url="/users/gnoff/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/gnoff">@ gnoff</a>)</li><li>Immediately rerender pinged fiber (<ahref="https://redirect.github.com/facebook/react/pull/25074"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/25074/hovercard">#25074</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Move update scheduling to microtask (<ahref="https://redirect.github.com/facebook/react/pull/26512"data-hovercard-type="pull_request"data-hovercard-url="/facebook/react/pull/26512/hovercard">#26512</a> by<a data-hovercard-type="user"data-hovercard-url="/users/acdlite/hovercard"data-octo-click="hovercard-link-click"data-octo-dimensions="link_type:self"href="https://redirect.github.com/acdlite">@ acdlite</a>)</li><li>Consistently apply throttled retries (<ahref="https://redirect.github.com/facebook/…
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
It's not deprecated, it's really just renamed. Let's make the warning less scary.