Commit Graph
36147 Commits
Author SHA1 Message Date
Tim YungandFacebook GitHub Bot d0c8716bfd RN: Revert Okio.buffer(…) Change from D72632266 (#50669)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50669

Fixes a bug that was introduced while migrating from Java to Kotlin.

Changelog:
[Android][Changed] - Fixed a bug with synchronously fetching resources from Metro.

Reviewed By: cortinico, mdvacca

Differential Revision: D72878362

fbshipit-source-id: feb881fa51f6eaa2cb5c7ba87ac93b7fdc29dc2c
2025-04-11 13:32:12 -07:00
Andrew DatsenkoandFacebook GitHub Bot 14fdf3257f move rncxx profiling (#50651)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50651

Changelog: [Internal]

Reviewed By: javache

Differential Revision: D72792459

fbshipit-source-id: d010508ca6311b6981090a64e4746141eda67976
2025-04-11 12:07:12 -07:00
Joe VilchesandFacebook GitHub Bot 52173ab701 Use CA shadow apis for box shadow (#50636)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50636

A while ago someone on GitHub reported that box shadow on iOS was causing frame drops when animating a large, pretty blurry shadow: https://github.com/facebook/react-native/issues/49128. This week I finally got around to fixing this!

The slowness was happening since we were using CG to draw this shadow, which is very CPU intensive and, to my knowledge, does not take advantage of GPUs to do anything. Couple that with an animating, large, blurry shadow and we have frame issues. These shadows were taking very long to draw, to get the image of the shadow (which then needs to be copied into some texture 3 times as big, composited, put on the screen etc) took 12-14ms :o, thats very slow.

To fix this I figured out how to get CA's shadow APIs working, which take advantage of the GPU. The enable inset shadows and spread you have to get creative with a mix of `shadowPath` and `mask` with a `CAShapeLayer`, but we got it done! Things are much faster, I am not sure how to time this but using a real device shows no frame drops :D

Changelog: [iOS][Fixed] - Box shadows on iOS are faster

Reviewed By: lenaic

Differential Revision: D72823334

fbshipit-source-id: 460339c9d77e7423ce59a1a9178b6b3ad527e4b0
2025-04-11 11:55:50 -07:00
Zeya PengandFacebook GitHub Bot c5e9ef53ae allow setting SurfaceStartedCallback on UIManager
Summary:
## Changelog:

[General] [Added] - allow setting SurfaceStartedCallback on UIManager

Reviewed By: rshest

Differential Revision: D71917124

fbshipit-source-id: b8f8eaef892518e3aaa3da82ab91b06173a644a0
2025-04-11 10:54:07 -07:00
Zeya PengandFacebook GitHub Bot 8d6098a645 create UIManagerNativeAnimatedDelegate to drive per frame NativeAnimated update
Summary:
## Changelog:

[Android] [Added] - create UIManagerNativeAnimatedDelegate to potentially drive per frame NativeAnimated update
* I'm imitating the way LayoutAnimation kicks off (`UIManagerAnimationDelegate`); re-using `UIManager::animationTick` function to schedule per frame animation callback

Reviewed By: rshest

Differential Revision: D71419497

fbshipit-source-id: ba867e4c2ed2ad89a7c9229c1156e20aca45e0e9
2025-04-11 10:54:07 -07:00
Zeya PengandFacebook GitHub Bot a812cac176 call TurboModuleWithJSIBindings::installJSIBindings at core TurboModuleBinding instead of on each platform (#50534)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50534

## Changelog:

[Internal] [Changed] - call `TurboModuleWithJSIBindings::installJSIBindings` at core TurboModuleBinding instead of on each platform

Reviewed By: rshest

Differential Revision: D72073835

fbshipit-source-id: 17adde1e003876d41695f4679e6fe85a82fbaff7
2025-04-11 10:54:07 -07:00
Zeya PengandFacebook GitHub Bot 5747fc4b17 Fix license comment block in ReactCxxPlatform code
Summary:
## Changelog:

[Internal] [Changed] - Fix license comment block in ReactCxxPlatform code

Reviewed By: rshest

Differential Revision: D72802801

fbshipit-source-id: 987a532bfe10d66db0aa2dad687d064225fa609d
2025-04-11 10:44:01 -07:00
Rubén NorteandFacebook GitHub Bot 143beaaa99 Improve format of navigation to home (#50665)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50665

Changelog: [internal]

Just a stylistic change of the link back to the documentation home.

It also changes the link in the template to make sure it's incorrect so people are forced to edit it when creating new docs.

Reviewed By: lenaic

Differential Revision: D72866823

fbshipit-source-id: fa7be286f996049b3f06e2defa5a8c486d63091b
2025-04-11 10:28:04 -07:00
Rubén NorteandFacebook GitHub Bot 9fde76a02d Improve documentation for Fantom (expanding on pragmas) (#50663)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50663

Changelog: [internal]

Adds additional documentation about pragmas and feature flags for Fantom.

Changes the diagram to mention that feature flags are passed to the Fantom CLI.

Reviewed By: andrewdacenko

Differential Revision: D72865960

fbshipit-source-id: abfd167279195495064f3c4dbdcaff92dd865bcf
2025-04-11 10:28:04 -07:00
artus9033andFacebook GitHub Bot 86a7388355 refactor: migrate DynamicFromMap to Kotlin (#50597)
Summary:
This PR introduces a rewrite of `DynamicFromMap.java` to Kotlin as requested in https://github.com/facebook/react-native/issues/50513.

## Changelog:

[ANDROID] [CHANGED] - Migrated `DynamicFromMap.java` to Kotlin

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

Test Plan:
1. Implement unit tests for `DynamicFromMap.kt` - `DynamicFromMapTests.kt`
2. Ensure the tests pass: `./gradlew test`
3. Run the RN tester app on new & on old architectures

Reviewed By: javache, rshest

Differential Revision: D72853616

Pulled By: cortinico

fbshipit-source-id: 855acdc7fa7810ab9f223b0be7778c028a646de5
2025-04-11 09:59:00 -07:00
Rubén NorteandFacebook GitHub Bot 39b2d664bf Fix incorrect formatting (#50662)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50662

Changelog: [internal]

Prettier accidentally removed the line break here, breaking the Github Markdown format for this.

Reviewed By: andrewdacenko

Differential Revision: D72861208

fbshipit-source-id: 565e9f146a5eed12a9bbc465bb599057a4511d21
2025-04-11 09:11:28 -07:00
Rubén NorteandFacebook GitHub Bot 6a746e8855 Move src/private/component files to specific directories (#50653)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50653

Changelog: [internal]

Just moving some private modules to scoped directories within `src/private/components`.

Reviewed By: rshest

Differential Revision: D72855151

fbshipit-source-id: ae61c9fa976fde4f5f58622525bf16eceb9de7bf
2025-04-11 08:49:03 -07:00
Riccardo CipolleschiandFacebook GitHub Bot bd64ec817d Backout "Add warning when a component is loaded with the interop layer"
Summary:
Backing out https://github.com/facebook/react-native/pull/50244 as it is causing unexpected issues internally.

## Changelog:
[iOS][Changed] - Revert  "Add warning when a component is loaded with the interop layer"

Reviewed By: cortinico

Differential Revision: D72857290

fbshipit-source-id: cfae6ccf85a472ae03983349fc7a2620e157865d
2025-04-11 08:16:46 -07:00
Gijs WeteringsandFacebook GitHub Bot 5fd08ce3de Fix ReactInstanceIntegrationTest.cpp poisoning future tests. (#50658)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50658

The root cause of this is D67857739, confirmed via bisect.

The ReactInstanceIntegrationTest.cpp tests caused some sort of state poisoning. Because of that all tests in the same buck module that ran after, failed. These cpp tests have a retry mechanism where failing tests are retried, and because in that situation the integration tests didn't run, they passed there.

This turned into a total of 24 tests being 50% flaky, as every first attempt failed but every second attempt (in isolation) succeeded.

I did a bit of trial and error with resetting InspectorFlags and ReactNativeFeatureFlags (the latter was already being done before D67857739), and added an extra assertion to the tests to make sure that after that, `dangerouslyDisableFuseboxForTest` still worked in the right (but only the right) contexts.

Changelog: [Internal]

Reviewed By: hoxyq

Differential Revision: D72860850

fbshipit-source-id: 959e67ff7a43ccc3c35db108bdb1138d8c27d328
2025-04-11 08:15:26 -07:00
Nicola CortiandFacebook GitHub Bot 45e725b3dc Convert to Kotlin - ReactTextInputShadowNode (#50648)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50648

This diff converts another class to Kotlin - ReactTextInputShadowNode

Changelog:
[Internal] [Changed] - ReactTextInputShadowNode to Kotlin

Reviewed By: rshest

Differential Revision: D72854819

fbshipit-source-id: 94d2f4e05ecdbf0d7507e59a0e11fd02d4dbfa55
2025-04-11 08:09:24 -07:00
Andrew DatsenkoandFacebook GitHub Bot 798eb0ab84 move rncxx logging (#50652)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50652

Changelog: [Internal]

Reviewed By: zeyap

Differential Revision: D72800216

fbshipit-source-id: 722546b4538fce0d30d90a346a737a564bfd21ee
2025-04-11 08:06:06 -07:00
Rubén NorteandFacebook GitHub Bot d18abc8ec7 Use scrollTop for scrolling tests (#50660)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50660

Changelog: [internal]

This is just a simpler way to test for changes in scroll position.

Reviewed By: andrewdacenko

Differential Revision: D72860138

fbshipit-source-id: a92d430399255a278f5c3c72005a5288d28310ab
2025-04-11 08:05:48 -07:00
Rubén NorteandFacebook GitHub Bot 277d39a216 Add technical documentation for Fantom
Summary:
Changelog: [internal]

This adds some technical documentation for the Fantom testing system.

Reviewed By: andrewdacenko

Differential Revision: D72861981

fbshipit-source-id: edcf71c98bea0b95dfdbb6289aaf7eda4b0b24b1
2025-04-11 07:52:26 -07:00
d06b32d215 Add usage documentation for Fantom (#50659)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50659

Changelog: [internal]

This adds the user guide documentation for Fantom.

Reviewed By: sammy-SC

Differential Revision: D72860137

fbshipit-source-id: 672224b38d045e29af2468ab05fed98991218bf7

Co-authored-by: Samuel Susla <samuelsusla@meta.com>
2025-04-11 07:52:26 -07:00
Rubén NorteandFacebook GitHub Bot 1ac682ca83 Fix link to main doc in Event Loop documentation (#50650)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50650

Changelog: [internal]

just a fix in the docs

Reviewed By: rshest

Differential Revision: D72855852

fbshipit-source-id: 3919b71861c1a803df755d1917df5bf29fb39462
2025-04-11 07:52:26 -07:00
Rubén NorteandFacebook GitHub Bot c8cbf7f813 Improve documentation for feature flags (#50644)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50644

Changelog: [internal]

This improves the documentation for the feature flag system by extending information about 2 areas:
- Codegen
- `print` command in CLI

Reviewed By: lenaic

Differential Revision: D72852768

fbshipit-source-id: 97932ea078595ef54cd437a433072f83bbdff609
2025-04-11 07:52:26 -07:00
Rubén NorteandFacebook GitHub Bot c8455804dd Disable default markdownlint rules to prevent conflicts with prettier (#50649)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50649

Changelog: [internal]

`markdownlint` failed on https://github.com/facebook/react-native/actions/runs/14400262967/job/40384250331?fbclid=IwZXh0bgNhZW0CMTEAAR51hcoM4zuGTG4SNbqas4z9X0FsIO8Y9DsCgxJepvD5qSdDezhhIV-uLTpn5w_aem_FF2OiYft3uMzK4xJrKGvuA because lines were too long, but that's already handled by Prettier and I thought that I had disabled that rule in the configuration/

It turns out you have to explicitly set `default: false` to actually disable the default rules and only use the options explicitly set in the config (which this does).

Reviewed By: andrewdacenko

Differential Revision: D72855229

fbshipit-source-id: 8e0c74e8e47e298ebf1450b1a0e31f31179c626c
2025-04-11 07:52:26 -07:00
Riccardo CipolleschiandFacebook GitHub Bot e83ece0d17 Do not generate Apple specific files for Android (#50654)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50654

We realized that when calling
```
npx react-native-community/cli codegen --path . --platform all --outputPath /tmp/codegen
```

We were generating in the android folder some files that are Apple-specific.

With this change, we should stop generating the Apple specific files in Android.

## Changelog
[General][Fixed] - Do not generate Apple specific files for Android

Reviewed By: cortinico

Differential Revision: D72859336

fbshipit-source-id: 443c4dca032e8e68c1da9d829d361d5e0ed007a0
2025-04-11 07:41:38 -07:00
Ruslan ShestopalyukandFacebook GitHub Bot c50f3e5f66 Migrate Event class (#49887)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49887

## Changelog:
[Internal] -

As in the title.

This was the last Java file in the `events-common` module, so now it can be a pure Kotlin one.

NOTE: I opted to make the base method `Event.getEventData` public (instead of previously protected), as based on the usage patterns by the users this seems to make the most sense in this context.

Reviewed By: cortinico

Differential Revision: D70777597

fbshipit-source-id: fdaa52e4400ad8e86a8711daf359eb5a10974d05
2025-04-11 07:02:03 -07:00
Mateo GuzmánandFacebook GitHub Bot c134c41cd7 Fix unresolved KDoc references (#50640)
Summary:
Static code analysis shows that there are a lot of unresolved KDoc references. This is just another round addressing several of them.

## Changelog:

[INTERNAL] - Fix unresolved KDoc references

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

Test Plan: Verify that the comments link the classes correctly using Android Studio

Reviewed By: cortinico

Differential Revision: D72848152

Pulled By: javache

fbshipit-source-id: e09b1ddad494885ef3090d7f0f62a782eed922c1
2025-04-11 06:25:14 -07:00
Fabrizio CucciandFacebook GitHub Bot 57768bfbcd Kotlinify ColorPropConverter (#50626)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50626

As per title.

Changelog:
[Android][Breaking] Kotlinify ColorPropConverter

Reviewed By: javache

Differential Revision: D72788490

fbshipit-source-id: 1c81c70566437db36e45e59995093c4c808369d8
2025-04-11 05:14:34 -07:00
Pieter De BaetsandFacebook GitHub Bot 398f2068d1 Migrate com.facebook.react.runtime.ReactSurfaceImpl to Kotlin
Summary: Changelog: [Internal]

Reviewed By: rshest

Differential Revision: D72804023

fbshipit-source-id: ceb046ca271e97d8f314c1ba3599c7c65c4295fe
2025-04-11 05:01:45 -07:00
Omar BafagihandFacebook GitHub Bot 5fe814e38f Convert ReactPropGroup.java to Kotlin (#50629)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50629

Changelog:
[Internal]

Reviewed By: cortinico

Differential Revision: D72770907

fbshipit-source-id: 249bdf84b1d2d27c2f9d4e201d5b4f35285b4b32
2025-04-11 04:05:30 -07:00
Rubén NorteandFacebook GitHub Bot 3839861dbe Clean up feature flag fixMountingCoordinatorReportedPendingTransactionsOnAndroid (#50632)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50632

Changelog: [internal]

This cleans up the `fixMountingCoordinatorReportedPendingTransactionsOnAndroid` feature flag that is no longer necessary.

Reviewed By: javache

Differential Revision: D72561255

fbshipit-source-id: 0942122832ce40cacc273265e4c95b5fe251dbe6
2025-04-11 04:02:33 -07:00
Rubén NorteandFacebook GitHub Bot c0fac7ba74 Reference print command in featureflags CLI help (#50643)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50643

Changelog: [internal]

Just realized this was missing from the message.

Reviewed By: lenaic

Differential Revision: D72852138

fbshipit-source-id: 27ed4b6e6d8b370cfa34a9878ca9bb0815cb75eb
2025-04-11 03:40:27 -07:00
Pieter De BaetsandFacebook GitHub Bot 86cd31eb6b Remove unused loadSplitBundleFromServer
Summary:
This code is not referenced internally or externally and was part of the DevSplitBundleLoader which was removed in D43597007.

Changelog: [Android][Breaking][Removed] Removed loadSplitBundleFromServer from DevSupportManager interface

Reviewed By: cortinico

Differential Revision: D72790533

fbshipit-source-id: 9e0960af4c528d9019943c89466ab442f34619e1
2025-04-11 03:27:04 -07:00
Pieter De BaetsandFacebook GitHub Bot bf8d6da101 Make Task.call API simpler (#50545)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50545

All usages of Task.call involve a Runnable which returns another Task, which we then extract using `.continueWithTask(Task::getResult)`. Instead inline this behaviour inside `Task.call` to avoid allocation of unnecessary intermediate objects.

Changelog: [Internal]

Reviewed By: rshest

Differential Revision: D72600051

fbshipit-source-id: 7e7c0c8e1de24b1aeff7addab2eb10272bc73ddb
2025-04-11 03:05:00 -07:00
Pieter De BaetsandFacebook GitHub Bot 26e89cf9e3 Remove UnobservedTaskException (#50546)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50546

We do not use this mechanism for exception handing with Tasks, so remove it.

Changelog: [Internal]

Reviewed By: cortinico, fabriziocucci

Differential Revision: D72600053

fbshipit-source-id: f9ae877b05ece66682cb6c291b05257953f5aebb
2025-04-11 03:05:00 -07:00
Nicola CortiandFacebook GitHub Bot 5ef68569b3 Bump CMake to 3.30.x and Enable INTERPROCEDURAL_OPTIMIZATION for libhermes.so in OSS
Summary:
PR is here https://github.com/facebook/react-native/pull/50581

This enables INTERPROCEDURAL_OPTIMIZATION for Hermes in OSS, similar to how we did for libreactnative.so
I also had to bump CMake to 3.30.x to unblock the build failure with `-fuse-ld=gold`

Changelog:
[Internal] [Changed] -

Reviewed By: alanleedev

Differential Revision: D72696879

fbshipit-source-id: e842f6cdf41f6936ef4baeb70e4833a1a0c2d19b
2025-04-11 03:03:09 -07:00
Alan LeeandFacebook GitHub Bot f62bd98a32 Convert ReconnectingWebSocket.java to Kotlin (#50614)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50614

Convert Java to Kotlin

Changelog:
[Internal]

Reviewed By: cortinico

Differential Revision: D72750330

fbshipit-source-id: 03014c47938697a337109a6d213388837eccfb71
2025-04-10 19:52:23 -07:00
Alan LeeandFacebook GitHub Bot 61c539fa6a Convert FileIoHandler.java to Kotlin (#50612)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50612

Java to Kotlin conversion

Changelog:
[Internal]

Reviewed By: cortinico

Differential Revision: D72742937

fbshipit-source-id: b72b51460555226fa7fe99f4ca5290f46c478291
2025-04-10 19:52:23 -07:00
Peter AbbondanzoandFacebook GitHub Bot c51c4b1922 xplat/js/react-native-github/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java (#50630)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50630

Changelog: [Internal] - Convert AlertFragment to Kotlin

Reviewed By: mlord93

Differential Revision: D72729380

fbshipit-source-id: f7d8ee4cd5938c453b865aea60b6f0533bd8fe0e
2025-04-10 18:26:47 -07:00
Peter AbbondanzoandFacebook GitHub Bot 7101adf611 xplat/js/react-native-github/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java (#50631)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50631

Changelog: [Internal] - Convert DialogModule to Kotlin

Reviewed By: mlord93

Differential Revision: D72729281

fbshipit-source-id: fb5ced042f48c8615c1c7ea4bc1de07671d652e6
2025-04-10 18:26:47 -07:00
Tim YungandFacebook GitHub Bot eeab47e61a Animated: Ship avoidAnimatedRefInvalidation (#50635)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50635

Ships the feature flag introduced by https://github.com/facebook/react-native/pull/50002.

Changelog:
[General][Changed] - Animated components' `ref` will now only reattach when receiving new props if the new props contain different `AnimatedValue` or `AnimatedEvent` instances. (Previously, Animated components' `ref` would always reattach when receiving new props.)

Differential Revision: D72802613

fbshipit-source-id: 4495eb778e3bb9473172c393bd984d93c4ba5f00
2025-04-10 18:26:23 -07:00
David VaccaandFacebook GitHub Bot f8b2956437 Delete ChoreographerCompat
Summary:
Deleting ChoreographerCompat as its only method is deprecated and it's unused.

Use Choreographer.FrameCallback instead

changelog: [Android][Breaking] Deleting ChoreographerCompat, Use Choreographer.FrameCallback instead

Reviewed By: alanleedev

Differential Revision: D72817152

fbshipit-source-id: 08624dd07e916116381293cde57a0fdf5452a670
2025-04-10 17:58:01 -07:00
David VaccaandFacebook GitHub Bot d34cbfa819 Delete react/bridge/bridge.pro
Summary:
react/bridge/bridge.pro is unused and out-of-sync, let's delete it

changelog: [internal] internal

Reviewed By: javache

Differential Revision: D72090835

fbshipit-source-id: 6bbfd870465c6e440943a7d715d6dfeb5e5bd043
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot 98d0847440 Remove DoNotStripAny annotation from ReactModuleWithSpec
Summary:
ReactModuleWithSpec is deprecated and unused, it was replaced by TurboModule interface.
In this diff I'm removing DoNotStripAny annotation from ReactModuleWithSpec to make sure proguard doesn't retain any reference to it

changelog: [internal] internal

Reviewed By: javache

Differential Revision: D72090838

fbshipit-source-id: 44aa0d6d4b2b592b5b8fea1b9e4578e2df3a9a8e
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot df0e479644 Delete InvalidIteratorException
Summary:
InvalidIteratorException is not used in java, kotlin nor C++. This diff just removes this class

This is not a breaking change due to the lack of usages

changelog: [internal] internal

Reviewed By: javache

Differential Revision: D72090837

fbshipit-source-id: 75aa4a8d2c1abbeb32bd38e5e60cbf7f04be823e
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot 767462a910 Introduce UseReactNativeNewArchitectureFeatureFlagDetector
Summary:
In this diff I'm introducing a new lint error called UseReactNativeNewArchitectureFeatureFlagDetector to prevent usages of:

```
ReactNativeFeatureFlags.enableBridgelessArchitecture
ReactNativeFeatureFlags.enableFabricRenderer
ReactNativeFeatureFlags.useFabricInterop
ReactNativeFeatureFlags.useTurboModuleInterop
ReactNativeFeatureFlags.useTurboModules
```

in favor of:
```
ReactNativeNewArchitectureFeatureFlags.enableBridgelessArchitecture
ReactNativeNewArchitectureFeatureFlags.enableFabricRenderer
ReactNativeNewArchitectureFeatureFlags.useFabricInterop
ReactNativeNewArchitectureFeatureFlags.useTurboModuleInterop
ReactNativeNewArchitectureFeatureFlags.useTurboModules
```

changelog: [internal] internal

Reviewed By: cortinico

Differential Revision: D72028734

fbshipit-source-id: c9ca39133e3ce5e5f2d393e9b9ee1803b350bdad
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot 9ad8f22d00 Migrate ReactNativeFeatureFlags -> ReactNativeNewArchitectureFeatureFlags for new architecture feature flags
Summary:
This diff migrates all usages of new architecture feature flags from ReactNativeFeatureFlags -> ReactNativeNewArchitectureFeatureFlags

changelog: [internal] internal

Reviewed By: alanleedev

Differential Revision: D71988913

fbshipit-source-id: 2cdfaeaf19ebbe236ea2bd0539854b69f70a6e01
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot aaf0d7dc7f Introduce ReactNativeNewArchitectureFeatureFlags (#50605)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50605

In order to help Proguard to stripping-out bytecode, we need a way to statically enable all Feature Flags used by the New Architecture at build time (e.g. enableBridgelessArchitecture, useTurboModule, etc). The React Native Feature Flag system is mostly implemented in C++ and unfortunately Proguard can’t follow C++ code to understand what feature flags are enabled or disabled at build time.

After analyzing several proposals, we decided to introduce a new internal API called ReactNativeNewArchitectureFeatureFlags, this API will help us detect if an app is using the new architecture at build time.
In order to make this API to work I’ve migrated all usages of new architecture feature flags from ReactNativeFeatureFlags -> ReactNativeNewArchitectureFeatureFlags

changelog: [internal] internal

Reviewed By: mlord93

Differential Revision: D71988912

fbshipit-source-id: a6d58c5b1f39f85370298a347db228e933c6c743
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot 7aed1fe6a0 Ensure interop is disabled when ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE == true (#50604)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50604

ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE asume Fabric and TurboModule interops are disabled, in this diff I'm adding an assertion to validate this at runtime

changelog: [internal] internal

Reviewed By: mlord93

Differential Revision: D71854550

fbshipit-source-id: a4b3acfe4c3227115300b100be4d6222d5eace8e
2025-04-10 17:57:13 -07:00
David VaccaandFacebook GitHub Bot c962980363 Mark ReactPackageLogger as @LegacyArchitecture (#50596)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50596

Mark ReactPackageLogger as LegacyArchitecture

changelog: [internal] internal

Reviewed By: shwanton

Differential Revision: D72067076

fbshipit-source-id: 128d005f8de7eb3b3a2d90a86a375f8db6f7f4ec
2025-04-10 17:57:13 -07:00
Fabrizio CucciandFacebook GitHub Bot 68f0b7cd73 Back out "Kotlinify TouchTargetHelper"
Summary:
Original commit changeset: 2e3e7ff41e27

Original Phabricator Diff: D72716749

Changelog: [Internal]

Reviewed By: GijsWeterings

Differential Revision: D72796716

fbshipit-source-id: e716fb4dbfbb73f7dc6d27e0f7572992d316adb6
2025-04-10 17:56:24 -07:00
David VaccaandFacebook GitHub Bot 212c68ea96 Make @FrameworkAPI classes internal
Summary:
FrameworkAPI classes are not part of the public API, this diff will remove all FrameworkAPI classes from our public API tracking

changelog: [internal] internal

Reviewed By: alanleedev

Differential Revision: D72805466

fbshipit-source-id: b16791ab854017be681ceabd61b628d2d0ba0c5c
2025-04-10 16:51:51 -07:00