Bump the prod-dependencies group across 1 directory with 10 updates
⚠️ Dependabot is rebasing this PR ⚠️
Rebasing might not happen immediately, so don't worry if this takes some time.
Note: if you make any changes to this PR yourself, they will take precedence over the rebase.
Bumps the prod-dependencies group with 10 updates in the / directory:
| Package | From | To |
|---|---|---|
| @floating-ui/react | 0.26.28 |
0.27.2 |
| @tanstack/react-table | 8.20.5 |
8.20.6 |
| css-tree | 3.0.1 |
3.1.0 |
| debug | 4.3.7 |
4.4.0 |
| monaco-editor | 0.52.0 |
0.52.2 |
| react | 18.3.1 |
19.0.0 |
| @types/react | 18.3.13 |
19.0.1 |
| react-dom | 18.3.1 |
19.0.0 |
| @types/react-dom | 18.3.1 |
19.0.2 |
| prism-react-renderer | 2.4.0 |
2.4.1 |
Updates @floating-ui/react from 0.26.28 to 0.27.2
Release notes
Sourced from @floating-ui/react's releases.
@floating-ui/react@0.27.2Patch Changes
- fix(FloatingFocusManager): prevent stale
inert/aria-hiddenattributes from being left on outside elements
@floating-ui/react@0.27.1Patch Changes
- fix(FloatingFocusManager): correctly fallback to container
- fix(FloatingFocusManager): check for ancestor floating focus element during
closeOnFocusOut- fix(FloatingFocusManager): avoid marking tree ancestor floating nodes with
data-floating-ui-inertwhenmodal=false
@floating-ui/react@0.27.0Minor Changes
- chore: deprecate
inneranduseInnerOffset. This technique of aligning an inner element to the reference has poor performance with longer lists, doesn't fit with the middleware paradigm, doesn't work on touch, and has a better custom alternative using nativeonScrollthat is encouraged instead.- breaking: drop React 16 support. 17 is the minimum supported version.
- fix(useId): add
| undefinedreturn type for React 17Patch Changes
- feat(FloatingFocusManager): add
outsideElementsInertprop. This enables pointer modality without a backdrop.- perf(useListNavigation): simplify focusing to remove unneeded asynchronicity
- fix(useDismiss): allow native clicks to work with
referencePress- fix(useDismiss): read target
overflowstyle for scrollbar press check. Fixes an issue where outside presses would be incorrectly prevented if the target element that was pressed appeared scrollable but was actually not.- fix(FloatingFocusManager): check for 'safe-polygon' reason on return focus
Changelog
Sourced from @floating-ui/react's changelog.
0.27.2
Patch Changes
- fix(FloatingFocusManager): prevent stale
inert/aria-hiddenattributes from being left on outside elements0.27.1
Patch Changes
- fix(FloatingFocusManager): correctly fallback to container
- fix(FloatingFocusManager): check for ancestor floating focus element during
closeOnFocusOut- fix(FloatingFocusManager): avoid marking tree ancestor floating nodes with
data-floating-ui-inertwhenmodal=false0.27.0
Minor Changes
- chore: deprecate
inneranduseInnerOffset. This technique of aligning an inner element to the reference has poor performance with longer lists, doesn't fit with the middleware paradigm, doesn't work on touch, and has a better custom alternative using nativeonScrollthat is encouraged instead.- breaking: drop React 16 support. 17 is the minimum supported version.
- fix(useId): add
| undefinedreturn type for React 17Patch Changes
- feat(FloatingFocusManager): add
outsideElementsInertprop. This enables pointer modality without a backdrop.- perf(useListNavigation): simplify focusing to remove unneeded asynchronicity
- fix(useDismiss): allow native clicks to work with
referencePress- fix(useDismiss): read target
overflowstyle for scrollbar press check. Fixes an issue where outside presses would be incorrectly prevented if the target element that was pressed appeared scrollable but was actually not.- fix(FloatingFocusManager): check for 'safe-polygon' reason on return focus
Commits
6a9f758chore: version packages (#3165)c9f19ecfix(FloatingFocusManager): prevent staleinert/aria-hiddenattributes fro...33bd900chore: version packages (#3158)e24b4fbfix(FloatingFocusManager): avoid marking tree ancestor floating nodes when `m...c728afafix(FloatingFocusManager): check for floating focus root element (#3159)16aecaefix(FloatingFocusManager): usecontainsfor tree ancestors on focus out (#3...f36cd38fix(FloatingFocusManager): fallback to container (#3156)afca34cchore: version packages (#3139)7fa27c1chore: remove React 19 RC (#3151)4e91d2cfix(useId): add| undefinedreturn type for React 17 (#3146)- Additional commits viewable in compare view
Updates @tanstack/react-table from 8.20.5 to 8.20.6
Release notes
Sourced from @tanstack/react-table's releases.
v8.20.6
Version 8.20.6 - 12/13/24, 2:34 PM
Changes
Fix
- JSX namespace from React (#5830) (cbcea6a) by Bill Collins
Chore
- update
@tanstack/configto v0.13.0 (#5731) (2db4061) by Lachlan CollinsDocs
- Updated some incomplete docs (#5741) (6b4d616) by M Hamid
- Fix label typo in config.json (#5712) (7fe650d) by Petter Juterud Barhaugen
Packages
Commits
a92ce6arelease: v8.20.6cbcea6afix: JSX namespace from React (#5830)- See full diff in compare view
Updates css-tree from 3.0.1 to 3.1.0
Release notes
Sourced from css-tree's releases.
3.1.0
- Added support for boolean expression multiplier in syntax definition, i.e.
<boolean-expr[ test ]>(#304)- Added
source,startOffset,startLine, andstartColumnparameters toOffsetToLocationconstructor, eliminating the need to callsetSource()after creating a newOffsetToLocationinstance- Exposed
OffsetToLocationclass in the main entry point, which was previously accessible only viacss-tree/tokenizer- Fixed
Rawnode value consumption by ignoring stop tokens inside blocks, resolving an issue whereRawvalue consumption stopped prematurely. This fix also enables parsing of functions whose content includes stop characters (e.g., semicolons and curly braces) within declaration values, aligning with the latest draft of CSS Values and Units L5.- Fixed
TokenStream#balancecomputation to handle unmatched brackets correctly. Previously, when encountering a closing bracket, theTokenStreamwould prioritize it over unmatched opening brackets, leading to improper parsing. For example, the parser would incorrectly consume the declaration value of.a { prop: ([{); }as([{)instead of consuming it until all opened brackets were closed (([{); }). Now, unmatched closing brackets are discarded unless they match the most recent opening bracket on the stack. This change aligns CSSTree with CSS specifications and browser behavior.- Fixed syntax definition parser to allow a token to be followed by a multiplier (#303)
- Fixed location for
Layernode (#310)- Bumped
mdn/datato 2.12.2
Changelog
Sourced from css-tree's changelog.
3.1.0 (December 6, 2024)
- Added support for boolean expression multiplier in syntax definition, i.e.
<boolean-expr[ test ]>(#304)- Added
source,startOffset,startLine, andstartColumnparameters toOffsetToLocationconstructor, eliminating the need to callsetSource()after creating a newOffsetToLocationinstance- Exposed
OffsetToLocationclass in the main entry point, which was previously accessible only viacss-tree/tokenizer- Fixed
Rawnode value consumption by ignoring stop tokens inside blocks, resolving an issue whereRawvalue consumption stopped prematurely. This fix also enables parsing of functions whose content includes stop characters (e.g., semicolons and curly braces) within declaration values, aligning with the latest draft of CSS Values and Units Module Level 5.- Fixed
TokenStream#balancecomputation to handle unmatched brackets correctly. Previously, when encountering a closing bracket, theTokenStreamwould prioritize it over unmatched opening brackets, leading to improper parsing. For example, the parser would incorrectly consume the declaration value of.a { prop: ([{); }as([{)instead of consuming it until all opened brackets were closed (([{); }). Now, unmatched closing brackets are discarded unless they match the most recent opening bracket on the stack. This change aligns CSSTree with CSS specifications and browser behavior.- Fixed syntax definition parser to allow a token to be followed by a multiplier (#303)
- Fixed location for
Layernode (#310)- Bumped
mdn/datato 2.12.2
Commits
354254f3.1.03e0b93bFixTokenStream#balancecomputation and6b24dccFix npm audit warning758ccf7Fix location of <layer-name> (#310)7cfec03Bump esbuild to ^0.24.0eab1c8eAddsource,startOffset,startLine, andstartColumnparameters to `Of...ab29676Expose OffsetToLocation in main entry point0afee3dUpdate mdn-data to v2.12.2 (#306)2c95a51Add lexer can check at-rules syntax511bed5Rename <boolean[]> into <boolean-expr[]> (fixes #307)- Additional commits viewable in compare view
Updates debug from 4.3.7 to 4.4.0
Release notes
Sourced from debug's releases.
4.4.0
Fixes (hopefully) the inefficient regex warnings in
.enable().Minor version as this is invariably going to break certain users who misuse the
.enable()API and expected it to work with regexes, which was never supported nor documented. That's on you, sorry - that functionality won't be added back.Full Changelog: https://github.com/debug-js/debug/compare/4.3.7...4.4.0
Commits
7e3814c4.4.0d2d6bf0fix inefficient .enable() regex and .enabled() test- See full diff in compare view
Updates monaco-editor from 0.52.0 to 0.52.2
Release notes
Sourced from monaco-editor's releases.
v0.52.2
Changes:
This list of changes was auto generated.
Commits
Maintainer changes
This version was pushed to npm by microsoft1es, a new releaser for monaco-editor since your current version.
Updates react from 18.3.1 to 19.0.0
Release notes
Sourced from react's releases.
19.0.0 (December 5, 2024)
Below is a list of all new features, APIs, deprecations, and breaking changes. Read React 19 release post and React 19 upgrade guide for more information.
Note: To help make the upgrade to React 19 easier, we’ve published a [email protected] release that is identical to 18.2 but adds warnings for deprecated APIs and other changes that are needed for React 19. We recommend upgrading to React 18.3.1 first to help identify any issues before upgrading to React 19.
New Features
React
- Actions:
startTransitioncan now accept async functions. Functions passed tostartTransitionare called “Actions”. A given Transition can include one or more Actions which update state in the background and update the UI with one commit. In addition to updating state, Actions can now perform side effects including async requests, and the Action will wait for the work to finish before finishing the Transition. This feature allows Transitions to include side effects likefetch()in the pending state, and provides support for error handling, and optimistic updates.useActionState: is a new hook to order Actions inside of a Transition with access to the state of the action, and the pending state. It accepts a reducer that can call Actions, and the initial state used for first render. It also accepts an optional string that is used if the action is passed to a formactionprop to support progressive enhancement in forms.useOptimistic: is a new hook to update state while a Transition is in progress. It returns the state, and a set function that can be called inside a transition to “optimistically” update the state to expected final value immediately while the Transition completes in the background. When the transition finishes, the state is updated to the new value.use: is a new API that allows reading resources in render. In React 19,useaccepts a promise or Context. If provided a promise,usewill suspend until a value is resolved.usecan only be used in render but can be called conditionally.refas a prop: Refs can now be used as props, removing the need forforwardRef.- Suspense sibling pre-warming: When a component suspends, React will immediately commit the fallback of the nearest Suspense boundary, without waiting for the entire sibling tree to render. After the fallback commits, React will schedule another render for the suspended siblings to “pre-warm” lazy requests.
React DOM Client
<form> actionprop: Form Actions allow you to manage forms automatically and integrate withuseFormStatus. When a<form> actionsucceeds, React will automatically reset the form for uncontrolled components. The form can be reset manually with the newrequestFormResetAPI.<button> and <input> formActionprop: Actions can be passed to theformActionprop to configure form submission behavior. This allows using different Actions depending on the input.useFormStatus: is a new hook that provides the status of the parent<form> action, as if the form was a Context provider. The hook returns the values:pending,data,method, andaction.- Support for Document Metadata: We’ve added support for rendering document metadata tags in components natively. React will automatically hoist them into the
<head>section of the document.- Support for Stylesheets: React 19 will ensure stylesheets are inserted into the
<head>on the client before revealing the content of a Suspense boundary that depends on that stylesheet.- Support for async scripts: Async scripts can be rendered anywhere in the component tree and React will handle ordering and deduplication.
- Support for preloading resources: React 19 ships with
preinit,preload,prefetchDNS, andpreconnectAPIs to optimize initial page loads by moving discovery of additional resources like fonts out of stylesheet loading. They can also be used to prefetch resources used by an anticipated navigation.React DOM Server
- Added
prerenderandprerenderToNodeStreamAPIs for static site generation. They are designed to work with streaming environments like Node.js Streams and Web Streams. UnlikerenderToString, they wait for data to load for HTML generation.React Server Components
- RSC features such as directives, server components, and server functions are now stable. This means libraries that ship with Server Components can now target React 19 as a peer dependency with a react-server export condition for use in frameworks that support the Full-stack React Architecture. The underlying APIs used to implement a React Server Components bundler or framework do not follow semver and may break between minors in React 19.x. See docs for how to support React Server Components.
Deprecations
- Deprecated:
element.refaccess: React 19 supports ref as a prop, so we’re deprecatingelement.refin favor ofelement.props.ref. Accessing will result in a warning.react-test-renderer: In React 19, react-test-renderer logs a deprecation warning and has switched to concurrent rendering for web usage. We recommend migrating your tests to@testinglibrary.com/docs/react-testing-library/intro/) or@testingesting-library.com/docs/react-native-testing-library/intro)Breaking Changes
React 19 brings in a number of breaking changes, including the removals of long-deprecated APIs. We recommend first upgrading to
18.3.1, where we've added additional deprecation warnings. Check out the upgrade guide for more details and guidance on codemodding.React
- New JSX Transform is now required: We introduced a new JSX transform in 2020 to improve bundle size and use JSX without importing React. In React 19, we’re adding additional improvements like using ref as a prop and JSX speed improvements that require the new transform.
- Errors in render are not re-thrown: Errors that are not caught by an Error Boundary are now reported to window.reportError. Errors that are caught by an Error Boundary are reported to console.error. We’ve introduced
onUncaughtErrorandonCaughtErrormethods tocreateRootandhydrateRootto customize this error handling.- Removed:
propTypes: UsingpropTypeswill now be silently ignored. If required, we recommend migrating to TypeScript or another type-checking solution.- Removed:
defaultPropsfor functions: ES6 default parameters can be used in place. Class components continue to supportdefaultPropssince there is no ES6 alternative.- Removed:
contextTypesandgetChildContext: Legacy Context for class components has been removed in favor of thecontextTypeAPI.
... (truncated)
Changelog
Sourced from react's changelog.
19.0.0 (December 5, 2024)
Below is a list of all new features, APIs, deprecations, and breaking changes. Read React 19 release post and React 19 upgrade guide for more information.
Note: To help make the upgrade to React 19 easier, we’ve published a [email protected] release that is identical to 18.2 but adds warnings for deprecated APIs and other changes that are needed for React 19. We recommend upgrading to React 18.3.1 first to help identify any issues before upgrading to React 19.
New Features
React
- Actions:
startTransitioncan now accept async functions. Functions passed tostartTransitionare called “Actions”. A given Transition can include one or more Actions which update state in the background and update the UI with one commit. In addition to updating state, Actions can now perform side effects including async requests, and the Action will wait for the work to finish before finishing the Transition. This feature allows Transitions to include side effects likefetch()in the pending state, and provides support for error handling, and optimistic updates.useActionState: is a new hook to order Actions inside of a Transition with access to the state of the action, and the pending state. It accepts a reducer that can call Actions, and the initial state used for first render. It also accepts an optional string that is used if the action is passed to a formactionprop to support progressive enhancement in forms.useOptimistic: is a new hook to update state while a Transition is in progress. It returns the state, and a set function that can be called inside a transition to “optimistically” update the state to expected final value immediately while the Transition completes in the background. When the transition finishes, the state is updated to the new value.use: is a new API that allows reading resources in render. In React 19,useaccepts a promise or Context. If provided a promise,usewill suspend until a value is resolved.usecan only be used in render but can be called conditionally.refas a prop: Refs can now be used as props, removing the need forforwardRef.- Suspense sibling pre-warming: When a component suspends, React will immediately commit the fallback of the nearest Suspense boundary, without waiting for the entire sibling tree to render. After the fallback commits, React will schedule another render for the suspended siblings to “pre-warm” lazy requests.
React DOM Client
<form> actionprop: Form Actions allow you to manage forms automatically and integrate withuseFormStatus. When a<form> actionsucceeds, React will automatically reset the form for uncontrolled components. The form can be reset manually with the newrequestFormResetAPI.<button> and <input> formActionprop: Actions can be passed to theformActionprop to configure form submission behavior. This allows using different Actions depending on the input.useFormStatus: is a new hook that provides the status of the parent<form> action, as if the form was a Context provider. The hook returns the values:pending,data,method, andaction.- Support for Document Metadata: We’ve added support for rendering document metadata tags in components natively. React will automatically hoist them into the
<head>section of the document.- Support for Stylesheets: React 19 will ensure stylesheets are inserted into the
<head>on the client before revealing the content of a Suspense boundary that depends on that stylesheet.- Support for async scripts: Async scripts can be rendered anywhere in the component tree and React will handle ordering and deduplication.
- Support for preloading resources: React 19 ships with
preinit,preload,prefetchDNS, andpreconnectAPIs to optimize initial page loads by moving discovery of additional resources like fonts out of stylesheet loading. They can also be used to prefetch resources used by an anticipated navigation.React DOM Server
- Added
prerenderandprerenderToNodeStreamAPIs for static site generation. They are designed to work with streaming environments like Node.js Streams and Web Streams. UnlikerenderToString, they wait for data to load for HTML generation.React Server Components
- RSC features such as directives, server components, and server functions are now stable. This means libraries that ship with Server Components can now target React 19 as a peer dependency with a react-server export condition for use in frameworks that support the Full-stack React Architecture. The underlying APIs used to implement a React Server Components bundler or framework do not follow semver and may break between minors in React 19.x. See docs for how to support React Server Components.
Deprecations
- Deprecated:
element.refaccess: React 19 supports ref as a prop, so we’re deprecatingelement.refin favor ofelement.props.ref. Accessing will result in a warning.react-test-renderer: In React 19, react-test-renderer logs a deprecation warning and has switched to concurrent rendering for web usage. We recommend migrating your tests to@testing-library/reactor@testing-library/react-nativeBreaking Changes
React 19 brings in a number of breaking changes, including the removals of long-deprecated APIs. We recommend first upgrading to
18.3.1, where we've added additional deprecation warnings. Check out the upgrade guide for more details and guidance on codemodding.React
- New JSX Transform is now required: We introduced a new JSX transform in 2020 to improve bundle size and use JSX without importing React. In React 19, we’re adding additional improvements like using ref as a prop and JSX speed improvements that require the new transform.
- Errors in render are not re-thrown: Errors that are not caught by an Error Boundary are now reported to window.reportError. Errors that are caught by an Error Boundary are reported to console.error. We’ve introduced
onUncaughtErrorandonCaughtErrormethods tocreateRootandhydrateRootto customize this error handling.- Removed:
propTypes: UsingpropTypeswill now be silently ignored. If required, we recommend migrating to TypeScript or another type-checking solution.- Removed:
defaultPropsfor functions: ES6 default parameters can be used in place. Class components continue to supportdefaultPropssince there is no ES6 alternative.
... (truncated)
Commits
e137890[string-refs] cleanup string ref code (#31443)d1f0472[string-refs] remove enableLogStringRefsProd flag (#31414)3dc1e48Followup: remove dead test code from #30346 (#31415)07aa494Remove enableRefAsProp feature flag (#30346)45804af[flow] Eliminate usage of more than 1-argReact.AbstractComponentin React ...5636fad[string-refs] log string ref from prod (#31161)b78a7f2[rcr] Re-export useMemoCache in top level React namespace (#31139)4e9540e[Fiber] Log the Render/Commit phases and the gaps in between (#31016)d4688df[Fiber] Track Event Time, startTransition Time and setState Time (#31008)15da917Don't read currentTransition back from internals (#30991)- Additional commits viewable in compare view
Updates @types/react from 18.3.13 to 19.0.1
Commits
- See full diff in compare view
Updates react-dom from 18.3.1 to 19.0.0
Release notes
Sourced from react-dom's releases.
19.0.0 (December 5, 2024)
Below is a list of all new features, APIs, deprecations, and breaking changes. Read React 19 release post and React 19 upgrade guide for more information.
Note: To help make the upgrade to React 19 easier, we’ve published a [email protected] release that is identical to 18.2 but adds warnings for deprecated APIs and other changes that are needed for React 19. We recommend upgrading to React 18.3.1 first to help identify any issues before upgrading to React 19.
New Features
React
- Actions:
startTransitioncan now accept async functions. Functions passed tostartTransitionare called “Actions”. A given Transition can include one or more Actions which update state in the background and update the UI with one commit. In addition to updating state, Actions can now perform side effects including async requests, and the Action will wait for the work to finish before finishing the Transition. This feature allows Transitions to include side effects likefetch()in the pending state, and provides support for error handling, and optimistic updates.useActionState: is a new hook to order Actions inside of a Transition with access to the state of the action, and the pending state. It accepts a reducer that can call Actions, and the initial state used for first render. It also accepts an optional string that is used if the action is passed to a formactionprop to support progressive enhancement in forms.useOptimistic: is a new hook to update state while a Transition is in progress. It returns the state, and a set function that can be called inside a transition to “optimistically” update the state to expected final value immediately while the Transition completes in the background. When the transition finishes, the state is updated to the new value.use: is a new API that allows reading resources in render. In React 19,useaccepts a promise or Context. If provided a promise,usewill suspend until a value is resolved.usecan only be used in render but can be called conditionally.refas a prop: Refs can now be used as props, removing the need forforwardRef.- Suspense sibling pre-warming: When a component suspends, React will immediately commit the fallback of the nearest Suspense boundary, without waiting for the entire sibling tree to render. After the fallback commits, React will schedule another render for the suspended siblings to “pre-warm” lazy requests.
React DOM Client
<form> actionprop: Form Actions allow you to manage forms automatically and integrate withuseFormStatus. When a<form> actionsucceeds, React will automatically reset the form for uncontrolled components. The form can be reset manually with the newrequestFormResetAPI.<button> and <input> formActionprop: Actions can be passed to theformActionprop to configure form submission behavior. This allows using different Actions depending on the input.useFormStatus: is a new hook that provides the status of the parent<form> action, as if the form was a Context provider. The hook returns the values:pending,data,method, andaction.- Support for Document Metadata: We’ve added support for rendering document metadata tags in components natively. React will automatically hoist them into the
<head>section of the document.- Support for Stylesheets: React 19 will ensure stylesheets are inserted into the
<head>on the client before revealing the content of a Suspense boundary that depends on that stylesheet.- Support for async scripts: Async scripts can be rendered anywhere in the component tree and React will handle ordering and deduplication.
- Support for preloading resources: React 19 ships with
preinit,preload,prefetchDNS, andpreconnectAPIs to optimize initial page loads by moving discovery of additional resources like fonts out of stylesheet loading. They can also be used to prefetch resources used by an anticipated navigation.React DOM Server
- Added
prerenderandprerenderToNodeStreamAPIs for static site generation. They are designed to work with streaming environments like Node.js Streams and Web Streams. UnlikerenderToString, they wait for data to load for HTML generation.React Server Components
- RSC features such as directives, server components, and server functions are now stable. This means libraries that ship with Server Components can now target React 19 as a peer dependency with a react-server export condition for use in frameworks that support the Full-stack React Architecture. The underlying APIs used to implement a React Server Components bundler or framework do not follow semver and may break between minors in React 19.x. See docs for how to support React Server Components.
Deprecations
- Deprecated:
element.refaccess: React 19 supports ref as a prop, so we’re deprecatingelement.refin favor ofelement.props.ref. Accessing will result in a warning.react-test-renderer: In React 19, react-test-renderer logs a deprecation warning and has switched to concurrent rendering for web usage. We recommend migrating your tests to@testinglibrary.com/docs/react-testing-library/intro/) or@testingesting-library.com/docs/react-native-testing-library/intro)Breaking Changes
React 19 brings in a number of breaking changes, including the removals of long-deprecated APIs. We recommend first upgrading to
18.3.1, where we've added additional deprecation warnings. Check out the upgrade guide for more details and guidance on codemodding.React
- New JSX Transform is now required: We introduced a new JSX transform in 2020 to improve bundle size and use JSX without importing React. In React 19, we’re adding additional improvements like using ref as a prop and JSX speed improvements that require the new transform.
- Errors in render are not re-thrown: Errors that are not caught by an Error Boundary are now reported to window.reportError. Errors that are caught by an Error Boundary are reported to console.error. We’ve introduced
onUncaughtErrorandonCaughtErrormethods tocreateRootandhydrateRootto customize this error handling.- Removed:
propTypes: UsingpropTypeswill now be silently ignored. If required, we recommend migrating to TypeScript or another type-checking solution.- Removed:
defaultPropsfor functions: ES6 default parameters can be used in place. Class components continue to supportdefaultPropssince there is no ES6 alternative.- Removed:
contextTypesandgetChildContext: Legacy Context for class components has been removed in favor of thecontextTypeAPI.
... (truncated)
Changelog
Sourced from react-dom's changelog.
19.0.0 (December 5, 2024)
Below is a list of all new features, APIs, deprecations, and breaking changes. Read React 19 release post and React 19 upgrade guide for more information.
Note: To help make the upgrade to React 19 easier, we’ve published a [email protected] release that is identical to 18.2 but adds warnings for deprecated APIs and other changes that are needed for React 19. We recommend upgrading to React 18.3.1 first to help identify any issues before upgrading to React 19.
New Features
React
- Actions:
startTransitioncan now accept async functions. Functions passed tostartTransitionare called “Actions”. A given Transition can include one or more Actions which update state in the background and update the UI with one commit. In addition to updating state, Actions can now perform side effects including async requests, and the Action will wait for the work to finish before finishing the Transition. This feature allows Transitions to include side effects likefetch()in the pending state, and provides support for error handling, and optimistic updates.useActionState: is a new hook to order Actions inside of a Transition with access to the state of the action, and the pending state. It accepts a reducer that can call Actions, and the initial state used for first render. It also accepts an optional string that is used if the action is passed to a formactionprop to support progressive enhancement in forms.useOptimistic: is a new hook to update state while a Transition is in progress. It returns the state, and a set function that can be called inside a transition to “optimistically” update the state to expected final value immediately while the Transition completes in the background. When the transition finishes, the state is updated to the new value.use: is a new API that allows reading resources in render. In React 19,useaccepts a promise or Context. If provided a promise,usewill suspend until a value is resolved.usecan only be used in render but can be called conditionally.refas a prop: Refs can now be used as props, removing the need forforwardRef.- Suspense sibling pre-warming: When a component suspends, React will immediately commit the fallback of the nearest Suspense boundary, without waiting for the entire sibling tree to render. After the fallback commits, React will schedule another render for the suspended siblings to “pre-warm” lazy requests.
React DOM Client
<form> actionprop: Form Actions allow you to manage forms automatically and integrate withuseFormStatus. When a<form> actionsucceeds, React will automatically reset the form for uncontrolled components. The form can be reset manually with the newrequestFormResetAPI.<button> and <input> formActionprop: Actions can be passed to theformActionprop to configure form submission behavior. This allows using different Actions depending on the input.useFormStatus: is a new hook that provides the status of the parent<form> action, as if the form was a Context provider. The hook returns the values:pending,data,method, andaction.- Support for Document Metadata: We’ve added support for rendering document metadata tags in components natively. React will automatically hoist them into the
<head>section of the document.- Support for Stylesheets: React 19 will ensure stylesheets are inserted into the
<head>on the client before revealing the content of a Suspense boundary that depends on that stylesheet.- Support for async scripts: Async scripts can be rendered anywhere in the component tree and React will handle ordering and deduplication.
- Support for preloading resources: React 19 ships with
preinit,preload,prefetchDNS, andpreconnectAPIs to optimize initial page loads by moving discovery of additional resources like fonts out of stylesheet loading. They can also be used to prefetch resources used by an anticipated navigation.React DOM Server
- Added
prerenderandprerenderToNodeStreamAPIs for static site generation. They are designed to work with streaming environments like Node.js Streams and Web Streams. UnlikerenderToString, they wait for data to load for HTML generation.React Server Components
- RSC features such as directives, server components, and server functions are now stable. This means libraries that ship with Server Components can now target React 19 as a peer dependency with a react-server export condition for use in frameworks that support the Full-stack React Architecture. The underlying APIs used to implement a React Server Components bundler or framework do not follow semver and may break between minors in React 19.x. See docs for how to support React Server Components.
Deprecations
- Deprecated:
element.refaccess: React 19 supports ref as a prop, so we’re deprecatingelement.refin favor ofelement.props.ref. Accessing will result in a warning.react-test-renderer: In React 19, react-test-renderer logs a deprecation warning and has switched to concurrent rendering for web usage. We recommend migrating your tests to@testing-library/reactor@testing-library/react-nativeBreaking Changes
React 19 brings in a number of breaking changes, including the removals of long-deprecated APIs. We recommend first upgrading to
18.3.1, where we've added additional deprecation warnings. Check out the upgrade guide for more details and guidance on codemodding.React
- New JSX Transform is now required: We introduced a new JSX transform in 2020 to improve bundle size and use JSX without importing React. In React 19, we’re adding additional improvements like using ref as a prop and JSX speed improvements that require the new transform.
- Errors in render are not re-thrown: Errors that are not caught by an Error Boundary are now reported to window.reportError. Errors that are caught by an Error Boundary are reported to console.error. We’ve introduced
onUncaughtErrorandonCaughtErrormethods tocreateRootandhydrateRootto customize this error handling.- Removed:
propTypes: UsingpropTypeswill now be silently ignored. If required, we recommend migrating to TypeScript or another type-checking solution.- Removed:
defaultPropsfor functions: ES6 default parameters can be used in place. Class components continue to supportdefaultPropssince there is no ES6 alternative.
... (truncated)
Commits
989af12Make prerendering always non-blocking with fix (#31452)e137890[string-refs] cleanup string ref code (#31443)07aa494Remove enableRefAsProp feature flag (#30346)cae764cRevert "[Re-land] Make prerendering always non-blocking (#31268)" (#31355)d49123fExpose prerender() for SSG in stable (#31298)6c4bbc7[Re-land] Make prerendering always non-blocking (#31268)d8c90faDisable infinite render loop detection (#31088)67fee58[Fizz] Start initial work immediately (#31079)76aee6fRevert "Make prerendering always non-blocking" (#31080)0f1856cMake prerendering always non-blocking (#31056)- Additional commits viewable in compare view
Updates @types/react-dom from 18.3.1 to 19.0.2
Commits
- See full diff in compare view
Updates prism-react-renderer from 2.4.0 to 2.4.1
Release notes
Sourced from prism-react-renderer's releases.
[email protected]
This release enables support for React Server Components 🚀
What's Changed
- Remove theme dictionary hook by
@nlkluthin FormidableLabs/prism-react-renderer#252New Contributors
@nlkluthmade their first contribution in FormidableLabs/prism-react-renderer#252Full Changelog: https://github.com/FormidableLabs/prism-react-renderer/compare/[email protected]@2.4.1
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebasewill rebase this PR -
@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it -
@dependabot mergewill merge this PR after your CI passes on it -
@dependabot squash and mergewill squash and merge this PR after your CI passes on it -
@dependabot cancel mergewill cancel a previously requested merge and block automerging -
@dependabot reopenwill reopen this PR if it is closed -
@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency -
@dependabot ignore <dependency name> major versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) -
@dependabot ignore <dependency name> minor versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) -
@dependabot ignore <dependency name>will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) -
@dependabot unignore <dependency name>will remove all of the ignore conditions of the specified dependency -
@dependabot unignore <dependency name> <ignore condition>will remove the ignore condition of the specified dependency and ignore conditions