Commit Graph

28102 Commits

Author SHA1 Message Date
Kryštof Woldřich 6c729acd12 Use new getCanonicalName and getMessage methods exposed by fbjni (#37879)
Summary:
When a new version of `fbjni` is released, we can simplify `getName` and `getMessage` calls on throwables.

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry.

Pick one each for the category and type tags:

For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[ANDROID] [CHANGED] - Use new `getCanonicalName` and `getMessage` methods exposed by `fbjni`

Pull Request resolved: https://github.com/facebook/react-native/pull/37879

Test Plan: https://github.com/facebookincubator/fbjni/pull/78

Reviewed By: cortinico

Differential Revision: D46966561

Pulled By: javache

fbshipit-source-id: f30720a30146cf8fe5125336435a1512063c253d
2023-06-23 04:49:15 -07:00
Ruslan Shestopalyuk c34aabbb90 Fix copypasta function documentation in ImageLoaderModule (#38029)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38029

# Changelog:
[Internal] -

A trivial fix - I was looking into some deeper issues with `Image.prefetch`, noticed that code docs were copypasted and incorrect.

Reviewed By: cipolleschi

Differential Revision: D46959350

fbshipit-source-id: 4e4196f9399d91402d9b206c20f2bbd0d1d0eb2a
2023-06-23 04:24:59 -07:00
Tommy Nguyen eb5f23c07a fix(ios): fix pod install --project-directory=ios failing (#37992)
Summary:
![image](https://user-images.githubusercontent.com/4123478/217618490-4f99e408-1a07-4acf-a05c-e8837562a931.png)

`pod install --project-directory=ios` currently fails when new arch is enabled: https://github.com/react-native-async-storage/async-storage/pull/910

- Patch for 0.71: https://github.com/facebook/react-native/pull/37993
- Patch for 0.72: https://github.com/facebook/react-native/pull/37994

## Changelog:

[IOS] [FIXED] - Fix `pod install --project-directory=...` when New Arch is enabled

Pull Request resolved: https://github.com/facebook/react-native/pull/37992

Test Plan:
```
git clone https://github.com/react-native-async-storage/async-storage.git
cd async-storage
gh pr checkout 910
yarn
RCT_NEW_ARCH_ENABLED=1 pod install --project-directory=example/ios
```

Reviewed By: cortinico

Differential Revision: D46966225

Pulled By: cipolleschi

fbshipit-source-id: 00b4650189175c09c9ec928f85d075890ba4c7c1
2023-06-23 03:27:05 -07:00
Rubén Norte a94bbfbe0e Enable IntersectionObserver in Catalyst and RNTester (#37863)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37863

This creates 2 examples for IntersectionObserver in RNTester:
* The first example is just a copy of the example provided by MDN in the documentation page for `IntersectionObserver` (https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API). This example is useful to show how React Native behaves the same way with the same code.
* The second example is a "stress test" for the API: a screen with 500 simultaneous node being observed at the same time with different observers. As we compute the intersections after scroll (after "mounting" the state update with the updated scroll position) in the main thread, this highlights a possible impact on scroll performance.

IntersectionObserver isn't yet enabled by default, so no need to add a changelog entry about this. We'll add one when the API becomes generally available.

Changelog: [Internal]

Reviewed By: rshest

Differential Revision: D45736845

fbshipit-source-id: 40b6bce39f90e04653504b1033a4edfaa65e93ca
2023-06-23 02:56:04 -07:00
Rubén Norte 387bd70e49 Basic implementation of IntersectionObserver (#37853)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37853

This adds a basic implementation of `IntersectionObserver`. This will not be available yet and is only compatible with the new React Native architecture. This shouldn't show up in the changelog until we're ready to enable this in some form.

Changelog: [Internal]

## Context

This implements a basic version of the `IntersectionObserver` API (as defined on the Web) for React Native.

The motivation for this is supporting several use cases that are not possible in React Native at the moment, most importantly:
* Tracking paint times for elements in the screen.
* Tracking precise visibility of elements in the screen outside the context of a `VirtualizedList` (with an even better precision and control).

## Implementation details

This API is implemented as a native module that registers a mount hook in Fabric. Whenever there's a mount (an update to the UI of the host platform) we check for intersections in the shadow tree. The shadow tree contains information about the representation of the UI in a given time (including scroll position), which we use as source of truth for this in a cross-platform fashion. We rely on the fact that scroll position is updated regularly in the shadow tree to provide an up-to-date view into the UI.

**This implementation is completely cross-platform.** The only platform-specific part is the report of mounts in mount hooks from the host platform to Fabric.

This API uses a centralized entity in JS and native to handle registration of observers and dispatch of notifications. The dispatch the notifications for all observers in the same callback so we can easily change the sequencing of events easily (for example, we can change this to use microtasks when they're available in RN).

## Known limitations

* Timestamps are generally accurate for paint (as we report mounts right after they happen in the host platform), but **state updates (like scroll) are reported with a slight delay**.
  * In regular rendering, we first update the shadow tree and then mount it (paint), which is generally precise. In state updates, the UI is updated first and then the shadow tree is updated. In this case, we're not correctly reporting the timestamp of the scroll event (which we should be using) but the timestamp of when the update is processed. We'll fix this in a following diff.
* The IntersectionObserver API has a concept of initial notification. This is a mechanism to report the initial state of an observed target. If we start observing a target when it's added to the tree but before it's painted, this initial notification is supposed to provide initial paint time (which is important for performance measurements). This implements some logic to handle that correctly (we check if there is a pending transaction) but it's currently unreliable:
  * React Native does not currently block paint on microtasks or layout effects, so setting up an observer in these stages could have race conditions with actual mount. If mount happens before the observation is started, the initial notification doesn't report initial time but observation time. If mount happens after, the initial notification should be fine (except in some cases on Android, see the next point).
  * On Android, we have a push model to send mutations to the host platform, we means we consume transactions after commit, not immediately before mount. This breaks this logic and we need to figure out a solution in a following diff.

----

Reviewed By: sammy-SC, rshest

Differential Revision: D45278720

fbshipit-source-id: de350388c6325128f1cf73328779a9d3577a258a
2023-06-23 02:56:04 -07:00
Nicola Corti c54092fe3b Update NativeAnimatedNodeTraversalTest to be more idiomatic (#37970)
Summary:
Follow up to:
- https://github.com/facebook/react-native/pull/37960

## Changelog:

[INTERNAL] - Update NativeAnimatedNodeTraversalTest to be more idiomatic

Pull Request resolved: https://github.com/facebook/react-native/pull/37970

Test Plan: Will run on CI

Reviewed By: javache, cipolleschi

Differential Revision: D46853581

Pulled By: cortinico

fbshipit-source-id: 73776493163413b045482344b7b1be0635f5aa25
2023-06-23 02:31:39 -07:00
Intl Scheduler 7e934947d7 translation auto-update for i18n/fb4a.config.json on master
Summary:
Chronos Job Instance ID: 1125907905026809
Sandcastle Job Instance ID: 9007200231768659
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46959288

fbshipit-source-id: 6d3e6c9a40a99847babddf1264a17cf332eb51eb
2023-06-22 18:08:55 -07:00
Intl Scheduler 5f18d7f993 translation auto-update for i18n/anna.config.json on master
Summary:
Chronos Job Instance ID: 1125907905026809
Sandcastle Job Instance ID: 9007200231768659
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46959269

fbshipit-source-id: 8cba4ed298805285ed0ece857eec08c9d7a704a3
2023-06-22 18:08:55 -07:00
Intl Scheduler 90563967d6 translation auto-update for i18n/pages-manager.config.json on master
Summary:
Chronos Job Instance ID: 1125907905026809
Sandcastle Job Instance ID: 9007200231768659
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46959285

fbshipit-source-id: b71267bcd6b1ca8e2ebaaf3fc42391b4bf8406a3
2023-06-22 18:08:55 -07:00
Intl Scheduler 79e9e56939 translation auto-update for i18n/instagram.config.json on master
Summary:
Chronos Job Instance ID: 1125907905026809
Sandcastle Job Instance ID: 9007200231768659
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46959284

fbshipit-source-id: a22f30e57eef3708a265992df1dde6ff0985759a
2023-06-22 18:08:55 -07:00
Intl Scheduler 1f8eb1de58 translation auto-update for i18n/messenger.config.json on master
Summary:
Chronos Job Instance ID: 1125907905026809
Sandcastle Job Instance ID: 9007200231768659
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46959274

fbshipit-source-id: a98311c9026999808fe4fb365595a71959d45615
2023-06-22 18:08:55 -07:00
g4rb4g3 79e8474b14 fix: int cast can cause endless loop if value < 1 (#38016)
Summary:
I faced an issue that on Android the whole UI would freeze when using minimumFontScale. This is caused by an int cast that turns the while loop into an endless loop.
Also the docs are not correct since they say it is an iOS only prop.
https://reactnative.dev/docs/text#minimumfontscale-ios

## Changelog:

[ANDROID] [FIXED] - UI freezing when using minimumFontScale

Pull Request resolved: https://github.com/facebook/react-native/pull/38016

Test Plan:
Run this sample app with and without this fix. https://github.com/g4rb4g3/androidMinimumFontScaleBug
Without the ui will freeze when hitting the + button, with the fix a Text component will be shown and no freeze will happen. 🙂

Reviewed By: cipolleschi

Differential Revision: D46931439

Pulled By: NickGerleman

fbshipit-source-id: 6985443b3424539b40bc0081fe742ab59105a2ae
2023-06-22 17:19:40 -07:00
David Vacca 95847fcd7e Initialize "rninstance" at ReactInstance class loading time (#38026)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38026

In this diff I'm moving the initialization of "rninstance" so as soon as the class is loaded

The goal is to ensure so is loaded earlier and prevent issues like T156403678

changelog: [internal] internal

Reviewed By: luluwu2032

Differential Revision: D46945464

fbshipit-source-id: f4d68574030ca3bda5d55fe3a9c1630a4879f3ab
2023-06-22 16:38:28 -07:00
Lulu Wu 0a9284a242 Fix UnsupportedOperationException
Summary:
This would cause an UnsupportedOperationException in java and thus result in a white screen.

The root cause is that ```mDelegate.getReactPackages()``` returns a non-resizable list so we wrap it to a resizable list in this diff.

Created from CodeHub with https://fburl.com/edit-in-codehub

Reviewed By: cortinico, adanoff

Differential Revision: D46943066

fbshipit-source-id: 27fcb78610aea0c8cb98d6ead4d0e1603a767e6e
2023-06-22 15:44:03 -07:00
Intl Scheduler 0201e51bbe translation auto-update for i18n/instagram.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940637

fbshipit-source-id: 4395bfa1b14062447ad2cf7533bafd9686ef6822
2023-06-22 09:53:49 -07:00
Intl Scheduler 43602b8185 translation auto-update for i18n/anna.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940647

fbshipit-source-id: dac7416563336629fcfe0a0f41c8f2b27b518d48
2023-06-22 09:53:49 -07:00
Intl Scheduler f87577dbc5 translation auto-update for i18n/pages-manager.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940639

fbshipit-source-id: fa3c3685febd710d1364d941637a713ba0d67c40
2023-06-22 09:53:49 -07:00
Intl Scheduler 10facdde36 translation auto-update for i18n/fb4a.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940646

fbshipit-source-id: fa9706267b3a0248c2a0ec7ad8a6d34071d23c19
2023-06-22 09:53:49 -07:00
Intl Scheduler a572608734 translation auto-update for i18n/messenger.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940632

fbshipit-source-id: e450cc47199642fbb086f28676f0c4a82cfc4d08
2023-06-22 09:53:49 -07:00
Intl Scheduler b1b9276293 translation auto-update for i18n/barcelona.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940635

fbshipit-source-id: 8b04233b04b900a2b0cd8348d5d635a122613f86
2023-06-22 09:53:49 -07:00
Intl Scheduler 5c7a8e0187 translation auto-update for i18n/creatorstudio.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940633

fbshipit-source-id: 04ab452df0f47a8150a52eb6931fb3ab3ee12250
2023-06-22 09:53:49 -07:00
Intl Scheduler 1d861f38b4 translation auto-update for i18n/portal_ar.config.json on master
Summary:
Chronos Job Instance ID: 1125907904820442
Sandcastle Job Instance ID: 13510799860416949
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46940650

fbshipit-source-id: 8a4e143c4122096b450d6f46103e40bf7868faa2
2023-06-22 09:53:49 -07:00
Arushi Kesarwani 2eb25cbdbe Update Node.js to v18 in all RN packages (#37791)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37791

## Bump minimum Node JS version to 18 via `react-native/package.json#engines`

In https://github.com/facebook/react-native/pull/35443 we bumped up the node version from 16 to 18.

Node 16 [ends maintenance releases on 2023-09-11](https://nodejs.org/en/blog/announcements/nodejs16-eol/), and bumping this minimum will allow other associated Node JS tools (CLI, Metro, Jest) to reduce their support burden.

This follows up by formally making Node 18 the minimum supported version.

**Docs PR:**
https://github.com/facebook/react-native-website/pull/3748

**Changelog:**
[General][Breaking] Bump minimum Node JS version to 18

Reviewed By: cortinico, NickGerleman

Differential Revision: D46583997

fbshipit-source-id: 1f31e2f205ac8b09494c2a7d3b73b9f36eff221b
2023-06-22 09:53:21 -07:00
Arushi Kesarwani 43a6ea9831 Breaking - Bump minimum Node version from 16 to 18 (#37709)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37709

## Bump minimum Node JS version to 18 via `react-native/package.json#engines`

In https://github.com/facebook/react-native/pull/35443 we bumped up the node version from 16 to 18.

Node 16 [ends maintenance releases on 2023-09-11](https://nodejs.org/en/blog/announcements/nodejs16-eol/), and bumping this minimum will allow other associated Node JS tools (CLI, Metro, Jest) to reduce their support burden.

This follows up by formally making Node 18 the minimum supported version.

**Docs PR:**
https://github.com/facebook/react-native-website/pull/3748

**Changelog:**
[General][Breaking] Bump minimum Node JS version to 18

Reviewed By: yungsters

Differential Revision: D46462639

fbshipit-source-id: d3b607788f596e8b5a9c4a6855d3b2f4bafe9a7a
2023-06-22 09:53:21 -07:00
Arushi Kesarwani 4af80b7ed9 Updating Node references in Circle CI (#38003)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38003

Changelog:
[General] [Fixed] - Update node version in `prepare_hermes_workspace`

Reviewed By: cortinico, NickGerleman

Differential Revision: D46905458

fbshipit-source-id: 970c0d2dba8601a8b39176852846aaad94cae24a
2023-06-22 09:53:21 -07:00
Pieter De Baets 1001cf653c Pass native stack to ExceptionManager (#37995)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37995

We now have native stack symbols (since D45182122) for TurboModule exceptions, so report those to ExceptionManager so they can end up in the crash reporting pipeline. It will likely not get symbolicated properly yet, but at least we'll have some metadata.

Changelog: [Internal]

Reviewed By: sammy-SC

Differential Revision: D46893131

fbshipit-source-id: 2b2713ed3af9a366cc43f8ceaef36000834310c7
2023-06-22 09:13:25 -07:00
Samuel Susla ede86a3c0c Create a pod for renderer debug module (#37620)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37620

changelog: [internal]

To better align cocoapods structure with BUCK structure internally, we need render debug module to be a seaparate pod. This diff does that.

Reviewed By: cortinico, cipolleschi

Differential Revision: D46275529

fbshipit-source-id: d4402f264608e3297c232fcaa4fdc3df88551a65
2023-06-22 07:40:16 -07:00
Lorenzo Sciandra 0daf9e19d1 split the changelog into decades (#38017)
Summary:
Well, looks like we've hit a GH limit 🤣

<img width="1272" alt="Screenshot 2023-06-22 at 10 32 19" src="https://github.com/facebook/react-native/assets/16104054/d1901d7c-a06b-4dae-9ec4-1846dc458eb1">

This PR splits the changelog into (for lack of better term) decades:

* lower than 0.60 (turns out we only started having proper changelogs in the mid 0.50-ish)
* 60->69
* 70+

This also works well because anything lower than 0.70 is now in the unsupported range.

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry.

Pick one each for the category and type tags:

[ANDROID|GENERAL|IOS|INTERNAL] [BREAKING|ADDED|CHANGED|DEPRECATED|REMOVED|FIXED|SECURITY] - Message

For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[Internal] [Changed] - split the changelog into decades

Pull Request resolved: https://github.com/facebook/react-native/pull/38017

Test Plan: N/A

Reviewed By: GijsWeterings

Differential Revision: D46932308

Pulled By: cipolleschi

fbshipit-source-id: f384d24cdf73c932b0b560919ac732bd993e93da
2023-06-22 04:19:40 -07:00
Abdennour JEBBAR 8ddb334bb0 Convert BaseJavaModuleTest to Kotlin (#37822)
Summary:
As part of the effort to Kotlin-fy React Native tests, I've converted [BaseJavaModuleTest](https://github.com/facebook/react-native/blob/main/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/BaseJavaModuleTest.java) to Kotlin.

## Changelog:
[Internal] [Changed] - Convert BaseJavaModuleTest to Kotlin

Pull Request resolved: https://github.com/facebook/react-native/pull/37822

Test Plan:
Tests pass: ./gradlew :packages:react-native:ReactAndroid:test
Formatted with [KtFmt](https://facebook.github.io/ktfmt/)

Reviewed By: cortinico

Differential Revision: D46639573

Pulled By: rshest

fbshipit-source-id: d971d3a86ad05195885b8fbed8a165ab9efa9e78
2023-06-22 02:54:59 -07:00
Moti Zilberman cd56347dca Prevent LogBox from crashing on long messages (#38005)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38005

Fixes https://github.com/facebook/react-native/issues/32093 by guarding the expensive `BABEL_CODE_FRAME_ERROR_FORMAT` regex with a cheaper initial scan. (Longer term, we should reduce our reliance on string parsing and propagate more structured errors.)

Changelog: [General][Fixed] Prevent LogBox from crashing on very long messages

Reviewed By: GijsWeterings

Differential Revision: D46892454

fbshipit-source-id: 3afadcdd75969c2589bbb06f47d1c4c1c2690abd
2023-06-22 02:09:45 -07:00
Nick Gerleman f544376f7c Revert D46871197: Add workaround for android API 33 ANR when inverting ScrollView
Differential Revision:
D46871197

Original commit changeset: 872a2ce5313f

Original Phabricator Diff: D46871197

fbshipit-source-id: d07e9e536d578f0612126bae07a83a02b5e6b792
2023-06-22 01:34:56 -07:00
Intl Scheduler 0e41ad09b0 translation auto-update for i18n/instagram.config.json on master
Summary:
Chronos Job Instance ID: 1125907904351530
Sandcastle Job Instance ID: 980317346
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46924702

fbshipit-source-id: ad103cbe0f4c019c9b2cb9add8aac3137c53a253
2023-06-21 20:44:35 -07:00
Intl Scheduler 84d278d107 translation auto-update for i18n/pages-manager.config.json on master
Summary:
Chronos Job Instance ID: 1125907904351530
Sandcastle Job Instance ID: 980317346
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46924707

fbshipit-source-id: 473fada8057f37698c3b31d385087057dc2d38ed
2023-06-21 20:44:35 -07:00
Intl Scheduler fba5b4db59 translation auto-update for i18n/anna.config.json on master
Summary:
Chronos Job Instance ID: 1125907904351530
Sandcastle Job Instance ID: 980317346
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46924714

fbshipit-source-id: ac7eeb3a05818ff48b17a2afea1b2b9aac5c0b10
2023-06-21 20:44:35 -07:00
Intl Scheduler 7f4a972ab1 translation auto-update for i18n/fb4a.config.json on master
Summary:
Chronos Job Instance ID: 1125907904351530
Sandcastle Job Instance ID: 980317346
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46924705

fbshipit-source-id: a50d017ac411fed113d63f77fbb33b23905d7dc9
2023-06-21 20:44:35 -07:00
Intl Scheduler d5e820c980 translation auto-update for i18n/barcelona.config.json on master
Summary:
Chronos Job Instance ID: 1125907904351530
Sandcastle Job Instance ID: 980317346
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46924711

fbshipit-source-id: c40725601f11f063db349c72470063c2615254d8
2023-06-21 20:44:35 -07:00
Hanno J. Gödecke 90186cd9b7 Add workaround for android API 33 ANR when inverting ScrollView (#37913)
Summary:
As explained in this issue:

- https://github.com/facebook/react-native/issues/35350

starting from android API 33 there are severe performance issues when using `scaleY: -1` on a view, and its child view, which is what we are doing when inverting the `ScrollView` component (e.g. in `FlatList`).

This PR adds a workaround. The workaround is to also scale on the X-Axis which causes a different transform matrix to be created, that doesn't cause the ANR (see the issue for details).
However, when doing that the vertical scroll bar will be on the wrong side, thus we switch the position in the native code once we detect that the list is inverted.

The goal of this PR is that react-native users can just use `<FlatList inverted={true} />` without running into any ANRs or the need to apply manual hot fixes 😄

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry.

Pick one each for the category and type tags:

[ANDROID] [FIXED] - ANR when having an inverted `FlatList` on android API 33+

For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[ANDROID] [FIXED] - ANR when having an inverted `FlatList` on android API 33+

Pull Request resolved: https://github.com/facebook/react-native/pull/37913

Test Plan:
- The change is minimal, and only affects android.
- Run the RNTesterApp for android and confirm that in the flatlist example the inverted list is still working as expected.

Reviewed By: rozele

Differential Revision: D46871197

Pulled By: NickGerleman

fbshipit-source-id: 872a2ce5313f16998f0e4d2804d61e4d8dca7bfd
2023-06-21 19:57:19 -07:00
David Vacca 74e6c95572 Refactor integration of BridgelessReactPackage into ReactHost (#38010)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38010

This diff refactors the integration of ReactPackages into ReactHost and ReactHostDelegate.

As part of this diff I'm also modifying ReactHostDelegate to depend on TurboModuleManagerDelegate.Builder instead of TurboModuleManagerDelegateBuilder. This is necessary to be able to create BridgelessReactPackage inside ReactInstance

bypass-github-export-checks

changelog: [internal] internal

Reviewed By: luluwu2032

Differential Revision: D46410795

fbshipit-source-id: 221f0f5ce06b7c57410dc4d351d1a1eae29f2733
2023-06-21 19:26:40 -07:00
David Vacca c018c7bda2 Move BridgelessReactPackage to com.facebook.react package (#38013)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38013

Move BridgelessReactPackage to com.facebook.react package.
This is necessary because BridgelessReactPackage is a core package that needs to be part of RN (and should not be re-defined by all apps)
I will revisit naming in a later diff

changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D46918732

fbshipit-source-id: c0d0dd0147a6e160189a8cfabc713c348f2499a2
2023-06-21 19:26:40 -07:00
Ramanpreet Nara a1b64b7f15 Introduce SampleLegacyModule example in RNTester (#38008)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/38008

Introduce a legacy module (+ example) in RNTester.

In the future, SampleLegacyModule will be used to:
- Showcase the TurboModule interop layer in RNTester, once Bridgeless mode is ready
- E2E Test the TurboModule interop layer.

The TurboModule interop layer is just an extension to the TurboModule system that allows the system to create legacy modules. Unlike regular TurboModules, these legacy modules don't need codegen for JavaScript -> native method dispatch.

Changelog: [Internal]

Reviewed By: cipolleschi

Differential Revision: D46874160

fbshipit-source-id: f9810d0bdb3bd0c0a74099fcb6f74ca547977a53
2023-06-21 18:30:09 -07:00
Intl Scheduler 7920ae854e translation auto-update for i18n/instagram.config.json on master
Summary:
Chronos Job Instance ID: 1125907903983344
Sandcastle Job Instance ID: 13510799859528763
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46913433

fbshipit-source-id: 0ed0541a69babfbbe516bf15fa3050696cc1f963
2023-06-21 14:26:31 -07:00
Intl Scheduler 8cd3b50ecc translation auto-update for i18n/adsmanager.config.json on master
Summary:
Chronos Job Instance ID: 1125907903983344
Sandcastle Job Instance ID: 13510799859528763
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46913417

fbshipit-source-id: 91a190711913cf9750cb430ee53a9e763d825929
2023-06-21 14:26:31 -07:00
Intl Scheduler 03b5bc29af translation auto-update for i18n/messenger.config.json on master
Summary:
Chronos Job Instance ID: 1125907903983344
Sandcastle Job Instance ID: 13510799859528763
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46913426

fbshipit-source-id: 3d13f0838deec311dc800d189de2dc3453b81317
2023-06-21 14:26:31 -07:00
Intl Scheduler 46c15c3956 translation auto-update for i18n/anna.config.json on master
Summary:
Chronos Job Instance ID: 1125907903983344
Sandcastle Job Instance ID: 13510799859528763
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46913427

fbshipit-source-id: 52d607dfa15956261627d405e61e360798ea9a96
2023-06-21 14:26:31 -07:00
Intl Scheduler 4715e043cc translation auto-update for Apps/Wilde/scripts/intl-config.json on master
Summary:
Chronos Job Instance ID: 1125907904247194
Sandcastle Job Instance ID: 9007200230628689
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46908607

fbshipit-source-id: 6d4eea12412578ed2603adc622342894730397de
2023-06-21 12:22:03 -07:00
Lorenzo Sciandra 3fe9654b45 add 0.72.0 changelog (#36553)
Summary:
Adds changelog for new minor 0.72.0

## Changelog:

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->

[Internal] [Changed] - add changelog entry for 0.72.0

Pull Request resolved: https://github.com/facebook/react-native/pull/36553

Test Plan: N/A

Reviewed By: rshest

Differential Revision: D45778748

Pulled By: cipolleschi

fbshipit-source-id: c3cca1327db0f0d3c579137f7368a2861bb72bf7
2023-06-21 10:14:29 -07:00
Pieter De Baets 5f7c5a88a1 Undeprecated GuardedAsyncTask constructor (#37864)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/37864

This was deprecated as part of bridgeless development, but since we now have `BridgelessReactContext`, which is also a `ReactContext`, this deprecation is no longer necessary.

Changelog: [Internal]

Reviewed By: rshest

Differential Revision: D46685374

fbshipit-source-id: 4d13418419ac987261b1d10bd50aeb311caadc95
2023-06-21 06:26:53 -07:00
Intl Scheduler e5c824ced7 translation auto-update for i18n/instagram.config.json on master
Summary:
Chronos Job Instance ID: 1125907903824394
Sandcastle Job Instance ID: 36028797996670317
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46894914

fbshipit-source-id: 4b1e1071b1cb277a8d187b380665980f6172e7d4
2023-06-21 04:45:13 -07:00
Intl Scheduler c8eb235bf7 translation auto-update for i18n/fb4a.config.json on master
Summary:
Chronos Job Instance ID: 1125907903824394
Sandcastle Job Instance ID: 36028797996670317
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46894920

fbshipit-source-id: 7c1c4c1ef83f07b211efa745c78d00a1f6bcae36
2023-06-21 04:45:13 -07:00
Intl Scheduler 859083e963 translation auto-update for i18n/creatorstudio.config.json on master
Summary:
Chronos Job Instance ID: 1125907903824394
Sandcastle Job Instance ID: 36028797996670317
allow-large-files
ignore-conflict-markers
opt-out-review

Differential Revision: D46894916

fbshipit-source-id: 045309665f3b6b4521c16daf5658a84a88de7d5d
2023-06-21 04:45:13 -07:00