Files
react-native/Libraries/Renderer
Samuel SuslaandFacebook GitHub Bot e91e468edc React Native sync for revisions d1e35c7...17f6912
Summary:
Three problems popped up during the sync:
- https://github.com/facebook/react/commit/07f46ecf2 breaks breaks tests
- https://github.com/facebook/react/commit/6fb8133ed breaks fbsource tests. I added a workaround and created a test for the team that owns the test.
- https://fb.workplace.com/groups/flowlang/permalink/1198137807458547/ enables local type interference in fbsource but not in github React repo and some code breaks. Addressed in https://github.com/facebook/react/pull/26064

This sync includes the following changes:
- **[17f6912a4](https://github.com/facebook/react/commit/17f6912a4 )**: Add flow types to ReactFiberHooks ([#25752](https://github.com/facebook/react/pull/25752)) //<Samuel Susla>//
- **[f101c2d0d](https://github.com/facebook/react/commit/f101c2d0d )**: Remove Reconciler fork (2/2) ([#25775](https://github.com/facebook/react/pull/25775)) //<Jan Kassens>//
- **[420f0b7fa](https://github.com/facebook/react/commit/420f0b7fa )**: Remove Reconciler fork (1/2) ([#25774](https://github.com/facebook/react/pull/25774)) //<Jan Kassens>//
- **[3ba7add60](https://github.com/facebook/react/commit/3ba7add60 )**: Allow async blocks in `to(Error|Warn)Dev` ([#25338](https://github.com/facebook/react/pull/25338)) //<Sebastian Silbermann>//
- **[fa11bd6ec](https://github.com/facebook/react/commit/fa11bd6ec )**: [ServerRenderer] Add option to send instructions as data attributes ([#25437](https://github.com/facebook/react/pull/25437)) //<mofeiZ>//
- **[e98225485](https://github.com/facebook/react/commit/e98225485 )**: Add ref cleanup function ([#25686](https://github.com/facebook/react/pull/25686)) //<Samuel Susla>//
- **[15557fa67](https://github.com/facebook/react/commit/15557fa67 )**: [Fix] properly track `useId` use in StrictMode in development ([#25713](https://github.com/facebook/react/pull/25713)) //<Josh Story>//
- **[8a23def32](https://github.com/facebook/react/commit/8a23def32 )**: Resubmit Add HydrationSyncLane ([#25711](https://github.com/facebook/react/pull/25711)) //<Tianyu Yao>//
- **[2655c9354](https://github.com/facebook/react/commit/2655c9354 )**: Fizz Browser: fix precomputed chunk being cleared on Node 18 ([#25645](https://github.com/facebook/react/pull/25645)) //<Jimmy Lai>//
- **[c08d8b804](https://github.com/facebook/react/commit/c08d8b804 )**: Revert "Add SyncHydrationLane" ([#25708](https://github.com/facebook/react/pull/25708)) //<Tianyu Yao>//
- **[56ffca8b9](https://github.com/facebook/react/commit/56ffca8b9 )**: Add Bun streaming server renderer ([#25597](https://github.com/facebook/react/pull/25597)) //<Colin McDonnell>//
- **[f31005d6a](https://github.com/facebook/react/commit/f31005d6a )**: Add SyncHydrationLane ([#25698](https://github.com/facebook/react/pull/25698)) //<Tianyu Yao>//
- **[f284d9faf](https://github.com/facebook/react/commit/f284d9faf )**: Track ThenableState alongside other hooks //<Andrew Clark>//
- **[6b4c0314e](https://github.com/facebook/react/commit/6b4c0314e )**: Check thenable instead of thenableState //<Andrew Clark>//
- **[33e3d2878](https://github.com/facebook/react/commit/33e3d2878 )**: Reuse hooks when replaying a suspended component //<Andrew Clark>//
- **[4387d752d](https://github.com/facebook/react/commit/4387d752d )**: Allow more hooks to be added when replaying mount //<Andrew Clark>//
- **[5eb78d0a0](https://github.com/facebook/react/commit/5eb78d0a0 )**: Pass ThenableState to replaySuspendedUnitOfWork //<Andrew Clark>//
- **[4a2d86bdd](https://github.com/facebook/react/commit/4a2d86bdd )**: Don't reset work loop until stack is unwound //<Andrew Clark>//
- **[9dfbd9fa9](https://github.com/facebook/react/commit/9dfbd9fa9 )**: use: Don't suspend if there are pending updates //<Andrew Clark>//
- **[44c4e6f4d](https://github.com/facebook/react/commit/44c4e6f4d )**: Force unwind work loop during selective hydration ([#25695](https://github.com/facebook/react/pull/25695)) //<Andrew Clark>//
- **[7b17f7bbf](https://github.com/facebook/react/commit/7b17f7bbf )**: Enable warning for defaultProps on function components for everyone ([#25699](https://github.com/facebook/react/pull/25699)) //<Sebastian Markbåge>//
- **[6fb8133ed](https://github.com/facebook/react/commit/6fb8133ed )**: Turn on string ref deprecation warning for everybody (not codemoddable) ([#25383](https://github.com/facebook/react/pull/25383)) //<Sebastian Silbermann>//
- **[07f46ecf2](https://github.com/facebook/react/commit/07f46ecf2 )**: Turn on key spread warning in jsx-runtime for everyone ([#25697](https://github.com/facebook/react/pull/25697)) //<Sebastian Markbåge>//
- **[d65b88d03](https://github.com/facebook/react/commit/d65b88d03 )**: Eagerly initialize an mutable object for instance.refs ([#25696](https://github.com/facebook/react/pull/25696)) //<Sebastian Markbåge>//
- **[c343f8025](https://github.com/facebook/react/commit/c343f8025 )**: [react-float] feature detect getRootNode ([#25689](https://github.com/facebook/react/pull/25689)) //<Jan Kassens>//
- **[e1dd0a2f5](https://github.com/facebook/react/commit/e1dd0a2f5 )**: Remove recoverable error when a sync update flows into a dehydrated boundary ([#25692](https://github.com/facebook/react/pull/25692)) //<Sebastian Markbåge>//
- **[c54e3541b](https://github.com/facebook/react/commit/c54e3541b )**: [DevTools] bug fix for Hydrating fibers ([#25663](https://github.com/facebook/react/pull/25663)) //<Mengdi Chen>//

Changelog:
[General][Changed] - React Native sync for revisions d1e35c7...17f6912

jest_e2e[run_all_tests]

Reviewed By: makovkastar

Differential Revision: D42804802

fbshipit-source-id: 6a9f00724cc73378025bbd04edb2d17760a87280
2023-01-30 01:51:33 -08:00
..
2022-12-06 19:34:14 -08:00

React & React Native Versions

This page describes how React and React Native versions interact each other. The version alignment between the two frameworks relies on two synchronization points:

  1. The versions in the package.json of the new app template. For example for React Native 0.68.1 the versions are aligned as follows:
  "dependencies": {
    "react": "17.0.2",
    "react-native": "0.68.1"
  },
  1. The React renderers shipped with React Native inside this folder, the ./Libraries/Renderer folder, of React Native.

This practically means that you can't bump the version of React in your package.json to a later version, as you will still be using the older renderer from the folder mentioned above. Bumping the react version in your package.json will lead to unexpected behaviors.

For the sake of React 18, the first version of React Native compatible with React 18 is 0.69.0. Users on React Native 0.68.0 and previous versions won't be able to use React 18.

If you use the react-native upgrade command or the React Native Upgrade Helper, you'll bump to the correct React version once you upgrade React Native.