Summary:
If the first element of a line is not contributing (e.g. position absolute), an additional gap will be added to the line, because the first gap element of the line is never identified (wrong start index).
Fix: raise the index of the first line element until we find an element that is contributing to the line.
X-link: https://github.com/facebook/yoga/pull/1408
Reviewed By: yungsters
Differential Revision: D49722065
Pulled By: NickGerleman
fbshipit-source-id: 1068cb0b11ae4b04ec8d063e70540cce06181d5a
Summary:
CircleCI does not run jobs on tags by default. However, when we release a new version of React Native, we push a tag and we want to create a release from that tag only ([CircleCI Docs](https://circleci.com/docs/workflows/#executing-workflows-for-a-git-tag)).
The release job is already configured to run on tag. However, in August, we moved to the CircleCI continuation APIs and the starting job of the pipeline was not set up to run
also on tags.
This change fixes the issue, making the Choose CI Job run also on tags.
## Changelog:
[Internal] - Make the Choose CI Job run also on tags
Pull Request resolved: https://github.com/facebook/react-native/pull/39776
Test Plan:
Tested manually on CircleCI in a separate branch with a test tag (which have been then removed).
See commit history in this PR: https://github.com/facebook/react-native/pull/39774
Reviewed By: dmytrorykun
Differential Revision: D49863095
Pulled By: cipolleschi
fbshipit-source-id: 89c4eaa9903c02322056a4b57f56a24865a58b46
Summary:
These tests seem to have been deprecated for years, let's just remove them.
## Changelog:
[IOS] [REMOVED] - Remove deprecated Snapshot tests
Pull Request resolved: https://github.com/facebook/react-native/pull/39720
Test Plan: CI should pass
Reviewed By: cipolleschi
Differential Revision: D49809496
Pulled By: NickGerleman
fbshipit-source-id: d79f0a0896b190d071bda1eb837b3efa10dbbf3b
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39771
We now support SDK 23 as a minimum. That means we can drop JS side checks.
Because Android has `Platform.Version` as a number, and iOS as a string, it's common to do an Android check before checking version, even if in Android only code. I tried to remove those where it was super clear the code was Android only (i.e. the file is `.android.js`), but otherwise leave the Android platform check to not give the possibility of changing behavior.
Changelog:
[Internal]
Reviewed By: luluwu2032
Differential Revision: D49814610
fbshipit-source-id: f28b09db7091598e187fee0f383561e1c1993e9a
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39755
The goal of this diff is to fix:
```
JNI DETECTED ERROR IN APPLICATION: JNI NewGlobalRef called with pending exception java.lang.NoSuchMethodError: no static or non-static method
"Lcom/facebook/react/jscexecutor/JSCExecutor;.initHybrid(Lcom/facebook/react/bridge/ReadableNativeMap;)Lcom/facebook/jni/HybridData;"
```
changelog: [internal] internal
Reviewed By: luluwu2032
Differential Revision: D49831595
fbshipit-source-id: 9ce22cdccdd02af74edb27be2df72a469d3166c9
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39704
Default to native view configs in bridged mode and to static view configs in bridgeless mode.
Remove `setRuntimeConfigProvider` calls from RNTester and from the Template.
Changelog: [Internal]
Reviewed By: RSNara
Differential Revision: D49687252
fbshipit-source-id: 140e1c510ba3fbc153978b59c8bb4b4e35bc7571
Summary:
Changelog: [Internal] - Set the hermes value as specified by the test-e2e-local script flag. Right now, the script incorrectly ignores the flag
By default, the template project has `hermesEnabled=true`
Reviewed By: cipolleschi
Differential Revision: D49831355
fbshipit-source-id: 7fb8613fa86f2c6140b7d25b16aeb583e6e26c12
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39751
There doesn't seem to be an easy way to drop `folly::makeMoveWrapper` for the reasons explained in below in the diff.
To unblock the folly deprecation in the RN codebase, we are copying the `MoveWrapper` class within the RN codebase.
Changelog: [Internal]
Reviewed By: sammy-SC, cipolleschi
Differential Revision: D49423389
fbshipit-source-id: 8abaa95a6d675b069be8e74933aa8c63f4ea43ee
Summary:
Addresses this issue: https://github.com/facebook/react-native/issues/39708
The embedded docs for `PixelRatio.getFontScale` haven't been updated in a while and it is still claiming lack of support for iOS when this is not the reality anymore. This was confusing for me when looking for docs through my local workspace.
## Changelog:
[INTERNAL] [CHANGED] - Updated PixelRatio.getFontScale docs to match the latest website
Pull Request resolved: https://github.com/facebook/react-native/pull/39709
Test Plan: N/A
Reviewed By: rshest
Differential Revision: D49752103
Pulled By: NickGerleman
fbshipit-source-id: 1b220bc0210639d7863b6961f665aab2cba52889
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39746
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of PerformanceCounter
Reviewed By: arushikesarwani94
Differential Revision: D49803283
fbshipit-source-id: 46d041f632f06a98392f4a67c839266010a1c68d
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39744
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of NativeArrayInterface
Reviewed By: arushikesarwani94
Differential Revision: D49803296
fbshipit-source-id: b0065d3df8ef5f20b71f66caf45856440dd61d80
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39736
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of NativeArgumentsParseException
Reviewed By: RSNara
Differential Revision: D49752145
fbshipit-source-id: 0ceb560a9be7d162b6856d90f57f6bda3888c6e7
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39738
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of JSInstance
Reviewed By: RSNara
Differential Revision: D49752139
fbshipit-source-id: b56667a91abd16d15a321dfc3e83026b596eaad3
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39740
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of JSIModuleRegistry.
Reviewed By: RSNara
Differential Revision: D49752138
fbshipit-source-id: 9878a3c2c431a2a84d4985812605032ed0d2d2d8
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39741
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of JSIModuleHolder
Reviewed By: RSNara
Differential Revision: D49752136
fbshipit-source-id: a2b525e6fe18f2ceabbe8775d6841807d73cdc86
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39737
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of JSCJavaScriptExecutorFactory
Reviewed By: RSNara
Differential Revision: D49752141
fbshipit-source-id: 77039a3b4c3d12f3c98e3659518e9ef10c66a29e
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39739
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of DynamicFromMap
Reviewed By: RSNara
Differential Revision: D49752137
fbshipit-source-id: 6bc8623ca1a8479401b4d8314916f968d708f40c
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39735
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of DynamicFromArray
Reviewed By: RSNara
Differential Revision: D49752134
fbshipit-source-id: 818a2cb0f4cafaad9c13c9b623505f32fb1ebcfe
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39565
CompositeReactPackage is not used at Meta neither in github public repositories, we are deprecating it in v0.73 with the goal to remove it in v0.74
changelog: [Android][Breaking] Deprecate CompositeReactPackage from RN Android
Reviewed By: christophpurrer
Differential Revision: D49440130
fbshipit-source-id: 6a9c220f57fd29f7a530db79c4f76ef169744fba
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39726
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of DecayAnimation
Reviewed By: javache, RSNara
Differential Revision: D49752144
fbshipit-source-id: 94b69f3f2d780aff55f0dbcf030d15199b703abd
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39730
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of AnimatedNodeWithUpdateableConfig
Reviewed By: RSNara
Differential Revision: D49752143
fbshipit-source-id: 023fb7657d922b2bd7ad8e12640e67bc82c96185
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39727
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of AnimatedNodeValueListener
Reviewed By: RSNara
Differential Revision: D49752131
fbshipit-source-id: 153cf0cb97ceadfd4c6acde1e1b51d4243eb5df6
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39728
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of ReactPackageHelper
Reviewed By: RSNara
Differential Revision: D49752142
fbshipit-source-id: d21812609a946faf2f9183993f28192dda34e132
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39729
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of ReactTextInputKeyPressEvent
Reviewed By: RSNara
Differential Revision: D49752135
fbshipit-source-id: 0d00d6558c3e259977c26a53cbb8fe7c5ae6235d
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39731
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of ReactAndroidHWInputDeviceHelper
Reviewed By: RSNara
Differential Revision: D49752132
fbshipit-source-id: 3eadc01f05f5ce49b4019fa8c3dafe8d5f5fc1f3
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39732
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of EagerModuleProvider
Reviewed By: RSNara
Differential Revision: D49752133
fbshipit-source-id: 3d24d471753bbf3857ecf6105a95f90305ac492d
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39725
In an attempt to reduce footprint of React Native Android public APIs we are reducing visibility of classes and interfaces that are not meant to be used publicly OR are public but have no usages.
As part of our analysis, which involved looking for usages inside the Meta codebase and code search in OSS, we've detected that this class/interface is public but it's not used from other packages.
If you are using this class or interface please comment in this PR and we will restate the public access.
changelog: [Android][Changed] Reducing visibility of CanvasUtil
Reviewed By: RSNara
Differential Revision: D49752146
fbshipit-source-id: 26fbcd20b7a9db52043978ca86879c6f6cd7a8db
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39678
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactViewManager
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactViewManager
Reviewed By: NickGerleman
Differential Revision: D48545513
fbshipit-source-id: fba0212cc832b6b309ae0bfb45c0e08bf79bd5d1
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39667
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactDrawableHelper
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactDrawableHelper
Reviewed By: NickGerleman
Differential Revision: D48545508
fbshipit-source-id: df15ad8dcf0ec94abd8291b8cb180be18771809d
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39686
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactTextInputShadowNode
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactTextInputShadowNode
Reviewed By: NickGerleman
Differential Revision: D48545503
fbshipit-source-id: f3b4fb696c3abf1f20ab00a89e786b3787c1b0e9
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39670
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactTextInputLocalData
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactTextInputLocalData
Reviewed By: NickGerleman
Differential Revision: D48545510
fbshipit-source-id: 8601a30a58d0e74c51b7d5dc8cec9e92e65344d8
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39671
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactEditText
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactEditText
Reviewed By: NickGerleman
Differential Revision: D48545507
fbshipit-source-id: 98be52ba36248962864e99e80ff648bbb351ff61
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39677
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class TextLayoutManagerMapBuffer
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in TextLayoutManagerMapBuffer
Reviewed By: NickGerleman
Differential Revision: D48545518
fbshipit-source-id: fe64730c40ddf42aab0a7f5a19e51eecea4c4bcd
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39679
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class TextLayoutManager
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in TextLayoutManager
Reviewed By: NickGerleman
Differential Revision: D48545502
fbshipit-source-id: b478013bfaf71264a1009669a10d9e8dfb396802
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39674
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class TextAttributeProps
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in TextAttributeProps
Reviewed By: NickGerleman
Differential Revision: D48545514
fbshipit-source-id: 38e5560fdb24f1807abc6f458b882d1a5d6d051c
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39666
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactTextView
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactTextView
Reviewed By: NickGerleman
Differential Revision: D48545504
fbshipit-source-id: a37d8532f879ff32626b256c9c1386d04e27cbcd
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39675
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactTextShadowNode
bypass-github-export-checks
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactTextShadowNode
Reviewed By: NickGerleman
Differential Revision: D48545511
fbshipit-source-id: c0462ee72746be73bb3acdf0c2336353e65da57a
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39710
Last week Apple released Xcode 15, which required us to ship a workaround for the new linker.
Unfortunately, the previous fix was not good enough and there were some edge cases that were not covered.
For example, in some occasions the flags are read as an array and the `-Wl` and the `-ld_classic` flags were separated and not properly removed when moving from Xcode 15 to Xcpde 14.3.1.
This change fixes those edge cases, with a more robust solution where:
- We convert the flags to a string.
- We trim the string and the values properly.
- We add the flags when running `pod install` with Xcode 15 as the default iOS toolchain.
- We remove the flags when running `pod install` with Xcode <15 as the default iOS toolchain.
## Changelog:
[Internal] - Make the Xcode 15 workaround more robust.
Reviewed By: dmytrorykun
Differential Revision: D49748844
fbshipit-source-id: 34976d148f123c5aacba6487a500874bb938fe99
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39598
X-link: https://github.com/facebook/yoga/pull/1403
Replaces all usages of YGDimension with Dimension.
Adds `yoga::to_underlying` to act like `std::to_underlying`, added in C++ 23.
This enum is oddly only used internally, and is never an input to the public API, but it handled as any other public generated enum. Potentially some more cleanup to do there.
Changelog: [Internal]
Reviewed By: rshest
Differential Revision: D49475409
fbshipit-source-id: 7d4c31e8a84485baea0dab50b5cf16b86769fa07
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39701
TextInput already uses Pressability, but doesn't expose the onPress prop. Link:https://github.com/facebook/react-native/blob/main/packages/react-native/Libraries/Components/TextInput/TextInput.js#L1381-L1414.
Currently TextInput only exposes the onPressIn() and onPressOut() props from Pressability. While onPressOut() can serve the same purpose as onPress() in most cases, it doesn't fare well with PanResponder...say a swipe gesture implemented using PanResponder.
When the pointer/cursor exits the hit test bounds of TextInput, onPressOut() will be triggered even though the desired behavior could be that we only want to invoke the event handler when the user lifts their finger from the screen (while still in the hit test bounds of the TextInput).
Example of TextInput in a PanResponder:
https://snack.expo.dev/jambalaya/panresponder
Changelog: [General][Added] Add onPress prop to TextInput
Reviewed By: NickGerleman
Differential Revision: D49653011
fbshipit-source-id: 28477416c6c0f17a0737986cab49e51a55094ba7
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39676
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactTextAnchorViewManager
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactTextAnchorViewManager
Reviewed By: NickGerleman
Differential Revision: D48545519
fbshipit-source-id: 4eca438fa9b33314c495f2181559c8f0ce6fd93f
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/39665
Since minsdk version was increased to 23, we are deleting code using Android APIs < 23 for class ReactBaseTextShadowNode
changelog: [Android][Breaking] Remove support for Android API < 23 in ReactBaseTextShadowNode
Reviewed By: NickGerleman
Differential Revision: D48545509
fbshipit-source-id: 2bd1c74251c8af92013b065daafbab3d96a05a2e