Commit Graph

12270 Commits

Author SHA1 Message Date
Ruslan Lesiutin 994d7cc2f7 Define OSCompat module (#49302)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49302

# Changelog: [Internal]

Added OS-agnostic module that will implement 2 basic capabilities:
- Getting current process id
- Getting current thread id

Reviewed By: javache

Differential Revision: D69316093

fbshipit-source-id: 114d235f1137eaf9c41d95df76f15532766d1bc8
2025-02-17 09:34:33 -08:00
Oskar Kwaśniewski 74de9526ab chore(iOS): deprecate RCTAppDelegate (#49078)
Summary:
Recently, I've introduced `RCTReactNativeFactory` in this PR: https://github.com/facebook/react-native/issues/46298, which is a good successor for `RCTAppDelegate`.

### Why?

`RCTAppDelegate` introduced strong coupling between React Native and AppDelegate pattern. From iOS 13+ there is a newer equivalent (Scene Delegate) which is not possible to achieve with current architecture. The proposed solution involves migration to a `RCTReactNativeFactory` a class that encapsulates initialization logic of React Native.

This migration will make brownfield initialization easier by making it more flexible and simpler to integrate into already established apps.

### Deprecation plan

The plan I've discussed with cipolleschi involves:

- Deprecation of `RCTAppDelegate` in 0.79 (current main)
- Migration off `RCTAppDelegate` to SceneDelegate + `RCTReactNativeFactory` in 0.80

## Changelog:

[IOS] [DEPRECATED] - deprecate RCTAppDelegate

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

Test Plan: Not needed

Reviewed By: cortinico

Differential Revision: D69061022

Pulled By: cipolleschi

fbshipit-source-id: b02a0ff3f26be9320da749f38c9cf083804f9f30
2025-02-17 09:12:17 -08:00
Kudo Chien cdc166709d Allow passing custom JSRuntimeFactory to DefaultReactHost (#49366)
Summary:
an effort of lean core for jsc: https://github.com/Kudo/discussions-and-proposals/blob/%40kudo/lean-core-jsc/proposals/0836-lean-core-jsc.md

## Changelog:

[ANDROID] [CHANGED] - Allow passing custom JSRuntimeFactory to DefaultReactHost

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

Test Plan:
- ci passed
- test from https://github.com/react-native-community/javascriptcore/pull/4

Reviewed By: cipolleschi

Differential Revision: D69656837

Pulled By: cortinico

fbshipit-source-id: ba8bf744c920a70c10fe5f6743f8dd182c88c4d4
2025-02-17 07:30:45 -08:00
Vitali Zaidman 63080727a7 minor variable names and console message contents and timing refactors (#49464)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49464

Changelog:
[General][Internal] - minor variable names and console message contents and timing refactors

Reviewed By: hoxyq

Differential Revision: D69667948

fbshipit-source-id: 2305b873c85cd193cbbb63b03819a8d360e11880
2025-02-17 07:01:33 -08:00
Nicola Corti bbfccd088b RNGP - Convert if to when in getPackagingOptionsForVariant (#49426)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49426

This is a nit, but I'm following up on a review comment that was left behind.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69656370

fbshipit-source-id: 76de4d77d9993bd9a35d7df019a6cebcce13d632
2025-02-17 06:51:50 -08:00
Samuel Susla 49b7ce0856 delete RCTUIUtils (#49453)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49453

changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D69716706

fbshipit-source-id: 46e786de85fbee142855384e2338529de6c8a644
2025-02-17 06:40:36 -08:00
Kudo Chien 176bed79b4 decouple jsc when USE_THIRD_PARTY_JSC=1 on ios (#49371)
Summary:
an effort of lean core for jsc: https://github.com/Kudo/discussions-and-proposals/blob/%40kudo/lean-core-jsc/proposals/0836-lean-core-jsc.md. this pr tries to decouple all jsc code when `USE_THIRD_PARTY_JSC=1` on ios

this pr includes these changes:
- exclude `React-jsc` pod and pod dependency when `USE_THIRD_PARTY_JSC=1`
- in objcpp code, remove `JSCExecutorFactory` / `RCTJscInstance` references when `USE_THIRD_PARTY_JSC=1`. it throws c++ errors like `No JSRuntimeFactory specified.` when no engine is specified (USE_HERMES=0 && USE_THIRD_PARTY_JSC=1). people need to override delegate methods to specify a JSRuntimeFactory.

## Changelog:

[IOS] [CHANGED] - Decouple JSC when `USE_THIRD_PARTY_JSC=1`

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

Test Plan:
- ci passed
- rn-tester build success for `RCT_NEW_ARCH_ENABLED=1 USE_THIRD_PARTY_JSC=1 USE_HERMES=0 USE_FRAMEWORKS=dynamic bundle exec pod install`
- rn-tester build success for `RCT_NEW_ARCH_ENABLED=0 USE_THIRD_PARTY_JSC=1 USE_HERMES=0 USE_FRAMEWORKS=dynamic bundle exec pod install`
- rn-tester build success for `RCT_NEW_ARCH_ENABLED=0 USE_THIRD_PARTY_JSC=1 USE_HERMES=0 bundle exec pod install`

Reviewed By: cortinico

Differential Revision: D69662457

Pulled By: cipolleschi

fbshipit-source-id: b272f46dde896d0981cfca75c9bfcf6775507307
2025-02-17 06:39:09 -08:00
Alex Hunt 7368265107 Remove unstable_enableLogBox (#49427)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49427

Also refine lint/`$FlowFixMe`s in `index.js`.

Changelog:
[General][Breaking] Remove deprecated `unstable_enableLogBox` function. LogBox is enabled by default.

Reviewed By: cortinico

Differential Revision: D69656713

fbshipit-source-id: 21ce775c84e17da036583f099a17f6524f9b9bf1
2025-02-17 05:48:06 -08:00
Alex Hunt f940be1caa Remove index.js.flow shim from Node packages (#49461)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49461

Flow now supports Package Exports 🎉. This means we can delete the compatiblity pattern in each of our build-enabled Node.js packages.

This simplifies the internal package structure needed to support Flow while developing from source in the monorepo — no prod impact.

Changelog: [Internal]

Reviewed By: cipolleschi

Differential Revision: D69741143

fbshipit-source-id: 070715cb6beb00eb393186dbf95856ceb87fabef
2025-02-17 05:44:22 -08:00
Mateo Guzmán d41f56176c Make ReactOverflowViewWithInset & NativeKind internal (#49456)
Summary:
As part of the initiative to reduce the public API surface, this classes can be internalized. I've checked there are no relevant OSS usages:

- [NativeKind](https://github.com/search?type=code&q=NOT+is%3Afork+NOT+org%3Afacebook+NOT+repo%3Areact-native-tvos%2Freact-native-tvos+NOT+repo%3Anuagoz%2Freact-native+NOT+repo%3A2lambda123%2Freact-native+NOT+repo%3Abeanchips%2Ffacebookreactnative+NOT+repo%3AfabOnReact%2Freact-native-notes+NOT+user%3Ahuntie+NOT+repo%3AMaxdev18%2Fpowersync_app+NOT+repo%3Acarter-0%2Finstagram-decompiled+NOT+repo%3Am0mosenpai%2Finstadamn+NOT+repo%3AA-Star100%2FA-Star100-AUG2-2024+NOT+repo%3Alclnrd%2Fdetox-scrollview-reproductible+NOT+repo%3ADionisisChytiris%2FWorldWiseTrivia_Main+NOT+repo%3Apast3l%2Fhi2+NOT+repo%3AoneDotpy%2FCaribouQuest+NOT+repo%3Abejayoharen%2Fdailytodo+NOT+repo%3Amolangning%2Freversing-discord+NOT+repo%3AScottPrzy%2Freact-native+NOT+repo%3Agabrieldonadel%2Freact-native-visionos+NOT+repo%3AGabriel2308%2FTestes-Soft+NOT+repo%3Adawnzs03%2FflakyBuild+NOT+repo%3Acga2351%2Fcode+NOT+repo%3Astreeg%2Ftcc+com.facebook.react.uimanager.NativeKind)
- [ReactOverflowViewWithInset](https://github.com/search?type=code&q=NOT+is%3Afork+NOT+org%3Afacebook+NOT+repo%3Areact-native-tvos%2Freact-native-tvos+NOT+repo%3Anuagoz%2Freact-native+NOT+repo%3A2lambda123%2Freact-native+NOT+repo%3Abeanchips%2Ffacebookreactnative+NOT+repo%3AfabOnReact%2Freact-native-notes+NOT+user%3Ahuntie+NOT+repo%3AMaxdev18%2Fpowersync_app+NOT+repo%3Acarter-0%2Finstagram-decompiled+NOT+repo%3Am0mosenpai%2Finstadamn+NOT+repo%3AA-Star100%2FA-Star100-AUG2-2024+NOT+repo%3Alclnrd%2Fdetox-scrollview-reproductible+NOT+repo%3ADionisisChytiris%2FWorldWiseTrivia_Main+NOT+repo%3Apast3l%2Fhi2+NOT+repo%3AoneDotpy%2FCaribouQuest+NOT+repo%3Abejayoharen%2Fdailytodo+NOT+repo%3Amolangning%2Freversing-discord+NOT+repo%3AScottPrzy%2Freact-native+NOT+repo%3Agabrieldonadel%2Freact-native-visionos+NOT+repo%3AGabriel2308%2FTestes-Soft+NOT+repo%3Adawnzs03%2FflakyBuild+NOT+repo%3Acga2351%2Fcode+NOT+repo%3Astreeg%2Ftcc+com.facebook.react.uimanager.ReactOverflowViewWithInset&p=1)

## Changelog:

[INTERNAL] - Make ReactOverflowViewWithInset & NativeKind internal

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

Test Plan:
```bash
yarn test-android
yarn android
```

Reviewed By: cipolleschi

Differential Revision: D69736740

Pulled By: cortinico

fbshipit-source-id: 493cd3c10c0a99126b0e9b5536468977bbe03ecc
2025-02-17 04:37:00 -08:00
Vitali Zaidman 502033337e keep heartbeat between inspector proxy and debugger going even if not idle (#49441)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49441

Changelog:
[General][Internal] - keep heartbeat between inspector proxy and debugger going even if not idle

When heartbeat was only used to keep the connection alive and to detect debugger timeouts, it was enough to send a ping every time the connection was idle for 10 seconds.

Now, when we use the heartbeat as a way to track how good is the round trip time between the inspector proxy and the debugger, we would like to make this tracking more reliable by sending a ping 10 seconds after each pong, even if the connection is not idle.

It also simplifies the code and makes it more clear by removing the confusing `shouldSetTerminateTimeout` variable.

Reviewed By: hoxyq

Differential Revision: D69665738

fbshipit-source-id: c8175b54d2b3df32ee60b316ec7bcf7bc0f0a1ee
2025-02-17 04:29:33 -08:00
zhongwuzw 16a476c0ee Fabric: Fix over reporting trait changes (#49431)
Summary:
Fixes https://github.com/facebook/react-native/issues/49330. We can keep the same logic as paper arch , please see https://github.com/facebook/react-native/pull/39439.

## Changelog:

[IOS] [FIXED] - Fabric: Fix over reporting trait changes

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

Test Plan: Repro in https://github.com/facebook/react-native/issues/49330.

Reviewed By: rshest

Differential Revision: D69740128

Pulled By: javache

fbshipit-source-id: 2946df68ab7eb88809c21dfcf33ce23f4cd6cb41
2025-02-17 04:19:28 -08:00
Mateo Guzmán e065411c91 Remove com.facebook.react.modules.network.TLSSocketFactory class (#49457)
Summary:
As part of the initiative to reduce the public API surface, I found that this class is not used in the codebase and can be removed.

[GH search for TLSSocketFactory](https://github.com/search?type=code&q=NOT+is%3Afork+NOT+org%3Afacebook+NOT+repo%3Areact-native-tvos%2Freact-native-tvos+NOT+repo%3Anuagoz%2Freact-native+NOT+repo%3A2lambda123%2Freact-native+NOT+repo%3Abeanchips%2Ffacebookreactnative+NOT+repo%3AfabOnReact%2Freact-native-notes+NOT+user%3Ahuntie+NOT+repo%3AMaxdev18%2Fpowersync_app+NOT+repo%3Acarter-0%2Finstagram-decompiled+NOT+repo%3Am0mosenpai%2Finstadamn+NOT+repo%3AA-Star100%2FA-Star100-AUG2-2024+NOT+repo%3Alclnrd%2Fdetox-scrollview-reproductible+NOT+repo%3ADionisisChytiris%2FWorldWiseTrivia_Main+NOT+repo%3Apast3l%2Fhi2+NOT+repo%3AoneDotpy%2FCaribouQuest+NOT+repo%3Abejayoharen%2Fdailytodo+NOT+repo%3Amolangning%2Freversing-discord+NOT+repo%3AScottPrzy%2Freact-native+NOT+repo%3Agabrieldonadel%2Freact-native-visionos+NOT+repo%3AGabriel2308%2FTestes-Soft+NOT+repo%3Adawnzs03%2FflakyBuild+NOT+repo%3Acga2351%2Fcode+NOT+repo%3Astreeg%2Ftcc+com.facebook.react.modules.network.TLSSocketFactory) – this class has some OSS usages, but all the ones I found are from old/non-active repos so that's why I think it is safe to remove but should be marked as [BREAKING] at the same time.

## Changelog:

[ANDROID] [BREAKING] - Remove com.facebook.react.modules.network.TLSSocketFactory class

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

Test Plan:
```sh
yarn test-android
yarn android
```

Reviewed By: javache

Differential Revision: D69736673

Pulled By: cortinico

fbshipit-source-id: 1e7abe289cd3894eff5967ae224c3fb8d0501f1a
2025-02-17 03:47:28 -08:00
Nicola Corti 43cffb96db Gradle Configuration Cache - Round 3 (#49439)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49439

This is the next part of a series of diff needed to enable G. Configuration Cache:
https://docs.gradle.org/current/userguide/configuration_cache.html
as it will make our CI faster (and will be the default in the future Gradle version).

Here I'm removing the `onlyIf` lambdas to make some tasks CC friendly.

The problem is that some `onlyIf` lambdas can't easily be serialized. Here I'm cleaning up
the problematic one to move the condition checks at execution time

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69664732

fbshipit-source-id: a457b2fae8114568ec4e04d772c9944022b1e1a5
2025-02-17 03:35:43 -08:00
Nicola Corti 0014265795 Gradle Configuration Cache - Round 2 (#49438)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49438

This is the second part of a series of diff needed to enable G. Configuration Cache:
https://docs.gradle.org/current/userguide/configuration_cache.html
as it will make our CI faster (and will be the default in the future Gradle version).

Here I'm making the exec tasks CC friendly.

The problem is that previously we were using explicit streams which are not CC friendly
for stderr/stdout. The solution is to create a custom task and handle files as input
properties.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69662246

fbshipit-source-id: ad7e82e52b12d508ee15b68408882fdc3516d287
2025-02-17 03:35:43 -08:00
Nicola Corti e8b7772dc9 Gradle Configuration Cache - Round 1 (#49421)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49421

This is a first part of a series of diff needed to enable G. Configuration Cache:
https://docs.gradle.org/current/userguide/configuration_cache.html
as it will make our CI faster (and will be the default in the future Gradle version).

Here I'm making all those tasks `prepare*` CC friendly.

Those tasks were not CC friendly as they were referencing an external variable inside their body.
We don't need to know the library version, we can just substring after the first folder
and the tasks will behave as before.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69655168

fbshipit-source-id: 801d7817c7e2d7380342f175565cc9b1ff30c5d0
2025-02-17 03:35:43 -08:00
Richard Barnes acdddef48e Enable -Wunused-variable in js/PACKAGE (#49454)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49454

This diff enables compilation warning flags for the directory in question. Further details are in [this workplace post](https://fb.workplace.com/permalink.php?story_fbid=pfbid02XaWNiCVk69r1ghfvDVpujB8Hr9Y61uDvNakxiZFa2jwiPHscVdEQwCBHrmWZSyMRl&id=100051201402394).

This is a low-risk diff. There are **no run-time effects** and the diff has already been observed to compile locally. **If the code compiles, it work; test errors are spurious.**

Differential Revision: D68513114

fbshipit-source-id: 219e2b9f2961da76cec4d08cc9f77787e08a0a1e
2025-02-16 10:16:22 -08:00
Christoph Purrer 1498566c23 Align logic in BaseTextInputShadowNode to determine updateStateIfNeeded with AndroidTextInputShadowNode (#48585)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48585

[Changelog] [Internal] - Align logic in BaseTextInputShadowNode to determine updateStateIfNeeded with AndroidTextInputShadowNode

As a preparation for https://github.com/facebook/react-native/pull/48165 this aligns the implementation of those 2 methods

Reviewed By: javache

Differential Revision: D68004755

fbshipit-source-id: 519247de0d081f37b5ef8ad6093b43d2c735a50e
2025-02-14 20:37:48 -08:00
Joe Vilches 103f8b3885 Fix bug where we can crash with small blurRadius
Summary:
An internal crash report notified us that we were getting an `IllegalArgumentException` in Android's `BlurMaskFilter` used in Box Shadows. The only requirement for the arguments there are that the blur radius is positive. We ensure that, but pass to `sigmaToRadius` afterwards, which does NOT ensure that. This updates that conversion so that

* We will never return negative numbers, regardless of what `PixelUtil.toDIPFromPixel` is doing
* Small enough numbers ( < 0.5) will just go through as 0.0, which is what Android does in https://cs.android.com/android/platform/superproject/main/+/main:frameworks/base/libs/hwui/utils/Blur.cpp;l=34
* Ensure shadows check that we have a POSITIVE blur radius AFTER conversion. sigmaToRadius can still return 0 which with also throw, so gotta make sure we change our checks. Filter blurs and dropShadow should be ok, renderEffect does not mention anything about being > 0 in the docs.

Changelog: [Android] [Fixed] - Fix issue where boxShadow crashes with small blur radius

Facebook
Post alerting us of this: https://fb.workplace.com/groups/rn.panelapps/permalink/1136446121310146/

Reviewed By: NickGerleman

Differential Revision: D69683031

fbshipit-source-id: 92f0938fea65e1af280bdb12b6c3d2b9014e89c0
2025-02-14 17:44:06 -08:00
David Vacca cf81abc45e Mark LayoutAnimations classes with @LegacyArchitecture (#49445)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49445

This diff marks a subset of LayoutAnimations classes with LegacyArchitecture, since these classes should not be called, loaded nor included in apk that are running in new archtictecture by default

changelog: [internal] internal

Reviewed By: shwanton

Differential Revision: D69674674

fbshipit-source-id: 84c71c7491064abf8d70f52b14ddb81bd0515227
2025-02-14 14:53:25 -08:00
David Vacca 78744d4a85 Remove internal packages from public API (#49444)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49444

Remove internal packages from public API

changelog: [internal] internal

Reviewed By: arushikesarwani94, alanleedev

Differential Revision: D69675450

fbshipit-source-id: 392b9658e2ae44a2df6e39be384b6b820d48f110
2025-02-14 14:53:25 -08:00
David Vacca 3673725560 Introduce internal @LegacyArchitecture annotation (#49443)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49443

This diff introduces an internal annotation called LegacyArchitecture that will be used to document what classes are part of Legacy or new architecture

changelog: [internal] internal

Reviewed By: cortinico

Differential Revision: D69538444

fbshipit-source-id: 5037ba03cd3b1675544f432c3981503c28606f19
2025-02-14 14:53:25 -08:00
Riccardo Cipolleschi 11e53c0369 Setup Package.swift to consume the binaries (#49435)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49435

This change adds a Package.swift file that allows to consume the binary from a local path.

As soon as we publish this on Maven, we will update the path to the url.

## Changelog:
[Internal] - Add the Package.swift file to consume the binary

Reviewed By: cortinico

Differential Revision: D69660943

fbshipit-source-id: c76ff3272d106236b6cf713b7e054070a3d45176
2025-02-14 10:20:10 -08:00
Vitali Zaidman 84f3cf95ea add event on debugger heartbeat and timeout (#49437)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49437

* Log every heartbeat with the same sampling as CDP commands (`debugger_heartbeat`)
* Log abandoned connections due to heartbeat timeout (`debugger_timeout`)

Changelog:
[General][Added] - add inspector proxy events for debugger heartbeat (sampled) and abandoned connections

Reviewed By: robhogan

Differential Revision: D69603217

fbshipit-source-id: f40721f5dc0cc0c33e71a0d29aa50ccf4e7fee3f
2025-02-14 08:42:39 -08:00
Jakub Piasecki 0aa89e9f1c Align View prop types with OSS (#49430)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49430

Changelog: [Internal]

Reviewed By: huntie

Differential Revision: D69658857

fbshipit-source-id: 55bb080f3197a7838e96e0e2cc488064881094c4
2025-02-14 08:22:51 -08:00
Mateo Guzmán deafa72682 Kotlinify ReactZIndexedViewGroup & ReactOverflowViewWithInset (#49384)
Summary:
Kotlinify 2 of the com.facebook.react.uimanager interfaces.

## Changelog:

[INTERNAL] - Kotlinify ReactZIndexedViewGroup & ReactOverflowViewWithInset

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

Test Plan:
```bash
yarn test-android
yarn android
```

Reviewed By: javache

Differential Revision: D69600758

Pulled By: cortinico

fbshipit-source-id: e88d292a94c9676789da2f96b1395694e82386ee
2025-02-14 07:29:25 -08:00
Mateo Guzmán f58d931a32 Make com.facebook.react.views.debuggingoverlay classes internal (#49341)
Summary:
As part of the initiative to reduce the public API surface, this package can be internalized. I've checked there are no relevant OSS usages:

- [DebuggingOverlay](https://github.com/search?type=code&q=NOT+is%3Afork+NOT+org%3Afacebook+NOT+repo%3Areact-native-tvos%2Freact-native-tvos+NOT+repo%3Anuagoz%2Freact-native+NOT+repo%3A2lambda123%2Freact-native+NOT+repo%3Abeanchips%2Ffacebookreactnative+NOT+repo%3AfabOnReact%2Freact-native-notes+NOT+user%3Ahuntie+com.facebook.react.views.debuggingoverlay.DebuggingOverlay)
- [DebuggingOverlayManager](https://github.com/search?type=code&q=NOT+is%3Afork+NOT+org%3Afacebook+NOT+repo%3Areact-native-tvos%2Freact-native-tvos+NOT+repo%3Anuagoz%2Freact-native+NOT+repo%3A2lambda123%2Freact-native+NOT+repo%3Abeanchips%2Ffacebookreactnative+NOT+repo%3AfabOnReact%2Freact-native-notes+NOT+user%3Ahuntie+com.facebook.react.views.debuggingoverlay.DebuggingOverlayManager)
- [TraceUpdate](https://github.com/search?type=code&q=NOT+is%3Afork+NOT+org%3Afacebook+NOT+repo%3Areact-native-tvos%2Freact-native-tvos+NOT+repo%3Anuagoz%2Freact-native+NOT+repo%3A2lambda123%2Freact-native+NOT+repo%3Abeanchips%2Ffacebookreactnative+NOT+repo%3AfabOnReact%2Freact-native-notes+NOT+user%3Ahuntie+com.facebook.react.views.debuggingoverlay.TraceUpdate)

## Changelog:

[INTERNAL] - Make com.facebook.react.views.debuggingoverlay classes internal

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

Test Plan:
```bash
yarn test-android
yarn android
```

Reviewed By: javache

Differential Revision: D69520424

Pulled By: cortinico

fbshipit-source-id: 55495329b46b7b28010ea3dcee05a5d8b10fa042
2025-02-14 07:24:32 -08:00
Vitali Zaidman 29419ce8f0 add logs for inspector proxy connectivity (#49432)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49432

Changelog:
[General][Added] - add inspector proxy info logs in regards to CDP connection to device and DevTools

Reviewed By: robhogan

Differential Revision: D69598477

fbshipit-source-id: 6efe7be886501463acbeea1c97ec84064cd84878
2025-02-14 07:19:07 -08:00
Dawid Małecki 893d1c5fed Add I18nManager and Vibration to buildTypes and align Flow with TS types (#49420)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49420

Changelog:
[Internal]

Reviewed By: huntie

Differential Revision: D69460878

fbshipit-source-id: 09cc702892ed93b6d413e1700e02151aa600bd18
2025-02-14 05:45:28 -08:00
Samuel Susla b29232d75e add unit tests to AnimatedValue to cover native node subscriptions (#48724)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48724

changelog: [internal]

A change in D68154908 caused issues where AnimatedValue would oversubscribe to native module, bring apps to halt.

This is unit test to prevent that.

Reviewed By: yungsters

Differential Revision: D68265033

fbshipit-source-id: 60cc93a619a5c654dc1bf77b00b2d9be2c482894
2025-02-14 05:30:54 -08:00
Iwo Plaza fc6ca26d3f Migrate Utilities/dismissKeyboard.js, Utilities/GlobalPerformanceLogger.js & Utilities/SceneTracker.js to use export syntax (#49402)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49402

## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.

## This diff
- Migrates `Utilities/dismissKeyboard.js`, `Utilities/GlobalPerformanceLogger.js` and `Utilities/SceneTracker.js` to use the export syntax.
- Updates deep-imports of these files to use `.default`
- Updates jest mocks
- Updates the current iteration of API snapshots (intended).

Changelog:
[General][Breaking] - Deep imports to `Utilities/dismissKeyboard.js`, `Utilities/GlobalPerformanceLogger.js` or `Utilities/SceneTracker.js` with `require` syntax need to be appended with '.default'.

Reviewed By: huntie

Differential Revision: D69599636

fbshipit-source-id: 0c450996f908d8139dd0c48677f58e07243d6150
2025-02-14 05:19:32 -08:00
Tommy Nguyen a672a4d007 fix: fix @react-native-community/cli not being found in pnpm setups (#47304)
Summary:
Fix `react-native-community/cli` not being found in pnpm setups

## Changelog:

[GENERAL] [FIXED] - Fix `react-native-community/cli` not being found in pnpm setups

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

Test Plan:
1. Clone/check out this branch: https://github.com/microsoft/rnx-kit/pull/3409
2. Run `yarn react-native config`

Reviewed By: cortinico

Differential Revision: D65209065

Pulled By: robhogan

fbshipit-source-id: 2ceb73ad140b4afe193e879779c2d8a4b9adf3fc
2025-02-14 04:56:55 -08:00
Kudo Chien 66032f22b8 pull out jsctooling when useThirdPartyJSC is true (#49365)
Summary:
an effort of lean core for jsc: https://github.com/Kudo/discussions-and-proposals/blob/%40kudo/lean-core-jsc/proposals/0836-lean-core-jsc.md

## Changelog:

[ANDROID] [CHANGED] - exclude `jsctooling` when `useThirdPartyJSC` gradle property is true

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

Test Plan:
- ci passed
- test from https://github.com/react-native-community/javascriptcore/pull/4

Reviewed By: cipolleschi

Differential Revision: D69654289

Pulled By: cortinico

fbshipit-source-id: 148e07c7114dde05c2014522f9c56119f7f6f0ce
2025-02-14 03:52:30 -08:00
Jakub Piasecki 7295a0b9df Align Blob types with OSS (#49390)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49390

Na
Changelog: [Internal]

Reviewed By: huntie

Differential Revision: D69586908

fbshipit-source-id: 017c427f381e075e4f6a440ab30ae0df79573793
2025-02-14 03:18:48 -08:00
Nicola Corti e78a6d844c RNGP - Do not access .project inside GenerateCodegenArtifactsTask (#49400)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49400

We should not invoke anything on the `project` property inside thet task.
That will break Gradle Configuration Caching which is becoming the default in the next version of Gradle.

This fixes it for the `GenerateCodegenArtifactsTask` task.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69592464

fbshipit-source-id: 72bab3f29299313875f2e7abd1b701c9d74bd2a1
2025-02-14 02:56:32 -08:00
Nicola Corti 0ce56ad953 RNGP - Do not access .project inside GenerateCodegenSchemaTask (#49399)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49399

We should not invoke anything on the `project` property inside thet task.
That will break Gradle Configuration Caching which is becoming the default in the next version of Gradle.

This fixes it for the `GenerateCodegenSchemaTask` task.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69592463

fbshipit-source-id: 56e78b1bdc113ae402cc90960faa05cd73d5b97d
2025-02-14 02:56:32 -08:00
Nicola Corti 0dd901701a RNGP - Do not access .project inside BuildCodegenCLITask (#49398)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49398

We should not invoke anything on the `project` property inside thet task.
That will break Gradle Configuration Caching which is becoming the default in the next version of Gradle.

This fixes it for the `BuildCodegenCLITask` task.

Changelog:
[Internal] [Changed] -

Reviewed By: cipolleschi

Differential Revision: D69592465

fbshipit-source-id: fc69896b61968ace7b7762f873cfa7eaa50c8b17
2025-02-14 02:56:32 -08:00
David Vacca 8c80087c3e Create fantom benchmarking test to verify impact of props parsing (#49417)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49417

In this diff I'm introducing a fantom benchmarking test to verify impact of props parsing in Fabric (testing for 100, 1000 and 1500 nested views)

changelog: [internal] internal

Reviewed By: lenaic

Differential Revision: D69624243

fbshipit-source-id: fe71668fe97558d2b6072fe49c9910cb978f7f78
2025-02-13 21:30:40 -08:00
David Vacca b3c41cef98 EZ refactor in ViewManager (#49415)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49415

Refactoring NAME -> TAG for consistency with other classes

changelog: [internal] internal

Reviewed By: Abbondanzo

Differential Revision: D69622546

fbshipit-source-id: 314db29ddfdbbd7fc614b355b9b18c0a8afe31df
2025-02-13 18:27:59 -08:00
Christoph Purrer 629c289d74 Add missing break; in RCTEventDispatcher.mm (#49416)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49416

[Changelog] [Internal] - Add missing break; in RCTEventDispatcher.mm

This fixes a compile error if a stricter warning setting is used as otherwise compilation fails with
```
react-native-github/packages/react-native/React/CoreModules/RCTEventDispatcher.mm:110:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
  110 |         default:
      |         ^
react-native-github/packages/react-native/React/CoreModules/RCTEventDispatcher.mm:110:9: note: insert 'break;' to avoid fall-through
  110 |         default:
      |         ^
      |         break;
1 error generated.
Interaction with installer failed.
```

Reviewed By: joevilches

Differential Revision: D69625062

fbshipit-source-id: 071ddf113afbc8d8d0870282fc83d762f1f80616
2025-02-13 17:03:44 -08:00
David Vacca b467a7453e Enforce that ViewManagers using codegen override getDelegate() method (#49414)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49414

In this we are enforcing that that ViewManagers using codegen override getDelegate() method.

For now we are logging a softException to get signal from production without crashing the app

changelog: [internal] internal

Reviewed By: javache

Differential Revision: D69621301

fbshipit-source-id: 1434fb3f3c7e5ebebee172ec1d7ad6c21eb453ae
2025-02-13 16:33:37 -08:00
Nick Gerleman 8671529367 Back out "Back out "Back out "[RN][CSS] Wire up native box shadow parsing""" (#49412)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49412

Changelog: [Internal]

Reviewed By: alanleedev

Differential Revision: D69619783

fbshipit-source-id: cffb2f45c30bf1f43914224bc2e46a2653bd0bdb
2025-02-13 16:05:32 -08:00
Riccardo Cipolleschi dd4d4e2923 Add SwiftPM package to build dependencies for iOS (#49361)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49361

This change adds the Package.swift file that we will use to build the dependencies for React Native

## Changelog:
[Internal] - Swift PM file to build ReactNativeDependencies

Reviewed By: cortinico

Differential Revision: D69518776

fbshipit-source-id: 85006c3c5933cc6a5fd772f7b014a823d7bb99b3
2025-02-13 13:55:51 -08:00
Iwo Plaza 028c0b36f6 Migrate Utilities/deepFreezeAndThrowOnMutationInDev.js, Utilities/defineLazyObjectProperty.js, Utilities/DeviceInfo.js & Utilities/FeatureDetection.js to use export syntax (#49408)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49408

## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.

## This diff
- Migrates Utilities/deepFreezeAndThrowOnMutationInDev.js, Utilities/defineLazyObjectProperty.js, Utilities/DeviceInfo.js & Utilities/FeatureDetection.js to use the export syntax.
- Updates deep-imports of files that were migrated to a single export default to use `.default`
- Updates the current iteration of API snapshots (intended).

Changelog:
[General][Breaking] - Deep imports to `Utilities/deepFreezeAndThrowOnMutationInDev`, `Utilities/defineLazyObjectProperty`, `Utilities/DeviceInfo` or `Utilities/FeatureDetection` with `require` syntax may need to be appended with '.default'.

Reviewed By: huntie

Differential Revision: D69602536

fbshipit-source-id: 7ec06995a1d244b95d4f970551955d9e6013de13
2025-02-13 13:11:20 -08:00
Sam Zhou a1eb6de691 Pre-suppress errors ahead of 0.261.1 release in xplat
Summary: Changelog: [Internal]

Reviewed By: panagosg7

Differential Revision: D69610953

fbshipit-source-id: 3eec28d72e26c2f48542523dd610590e298eba69
2025-02-13 13:04:53 -08:00
Iwo Plaza d98116aa44 Migrate Libraries/Utilities/Platform to use export syntax (#49306)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49306

## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.

## This diff
- Migrates `Libraries/Utilities/Platform.*.js` to use the export syntax.
- Updates deep-imports of these files to use `.default`
- Updates jest mocks
- Updates the current iteration of API snapshots (intended).

Changelog:
[General][Breaking] - Deep imports to `Libraries/Utilities/Platform` with `require` syntax needs to be appended with '.default'.

Reviewed By: huntie

Differential Revision: D69404025

fbshipit-source-id: f21501ca5b7e8e6a9e3e501781ed36e7d2bfd4a4
2025-02-13 11:58:41 -08:00
Iwo Plaza 7aef81b984 Migrate Utilities/infoLog, Utilities/logError, Utilities/mapWithSeparator & Utilities/warnOnce to use export syntax (#49406)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49406

## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.

## This diff
- Migrates Utilities/infoLog, Utilities/logError, Utilities/mapWithSeparator & Utilities/warnOnce to use the export syntax.
- Updates deep-imports of these files to use `.default`
- Updates the current iteration of API snapshots (intended).

Changelog:
[General][Breaking] - Deep imports to `Utilities/infoLog`, `Utilities/logError`, `Utilities/mapWithSeparator` or `Utilities/warnOnce` with `require` syntax need to be appended with '.default'.

Reviewed By: huntie

Differential Revision: D69601174

fbshipit-source-id: 821f9ae59d4f898c95631eb7a9aeed138ace3567
2025-02-13 11:16:27 -08:00
Iwo Plaza 152587cda0 Migrate Utilities/binaryToBase64, Utilities/DevSettings, Utilities/PolyfillFunctions & Utilities/RCTLog to use export syntax (#49403)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49403

## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.

## This diff
- Migrates `Utilities/binaryToBase64`, `Utilities/DevSettings`, `Utilities/PolyfillFunctions` & `Utilities/RCTLog` to use the export syntax.
- Updates deep-imports of these files to use `.default`
- Updates the current iteration of API snapshots (intended).

Changelog:
[General][Breaking] - Deep imports to `Utilities/binaryToBase64`, `Utilities/DevSettings`, `Utilities/PolyfillFunctions` or `Utilities/RCTLog` with `require` syntax need to be appended with '.default'.

Reviewed By: huntie

Differential Revision: D69600476

fbshipit-source-id: 3f8ac3a35031e8b20446abc8f52a2817cb31b6d2
2025-02-13 11:13:25 -08:00
Iwo Plaza 827a847791 Migrate Utilities/BackHandler.*.js, Utilities/DevLoadingView.js and Utilities/HMRClient*.js to use export syntax (#49369)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49369

## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.

## This diff
- Migrates `Libraries/Utilities/BackHandler.*.js`, `Utilities/DevLoadingView.js` and `Utilities/HMRClient*.js` to use the export syntax.
- Updates deep-imports of these files to use `.default`
- Updates jest mocks
- Updates the current iteration of API snapshots (intended).

Changelog:
[General][Breaking] - Deep imports to `Libraries/Utilities/BackHandler`, `Utilities/DevLoadingView.js` or `Utilities/HMRClient*.js` with `require` syntax needs to be appended with '.default'.

Reviewed By: huntie

Differential Revision: D69539527

fbshipit-source-id: c10b3523bbcc52bba5b6c27721c33b1e0d9d5104
2025-02-13 10:41:17 -08:00
David Vacca 6632d30678 Remove legacy codegen of $PropSetter classes for ShadowNode classes on apps running on new architecture by default (#49405)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49405

This diff removes legacy codegen of $PropSetter classes for ShadowNode classes when the app has UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE enabled

These classes are not used in the new architecture, let's just remove them from the apk.

This change won't affect OSS

changelog: [internal] internal

Reviewed By: javache

Differential Revision: D69569205

fbshipit-source-id: 178051b9f10576226fd746f9eab1b56b2934ea0b
2025-02-13 10:31:42 -08:00