Cover cxxreact:jsbigstring with Stable API guards (#58393) - #58393
Closed
j-piasecki wants to merge 2 commits into
Closed
Cover cxxreact:jsbigstring with Stable API guards (#58393)#58393j-piasecki wants to merge 2 commits into
cxxreact:jsbigstring with Stable API guards (#58393)#58393j-piasecki wants to merge 2 commits into
Conversation
|
@j-piasecki has exported this pull request. If you are a Meta employee, you can view the originating Diff in D119144023. |
cxxreact:jsbigstring with Stable API guardscxxreact:jsbigstring with Stable API guards (#58393)
j-piasecki
added a commit
to j-piasecki/react-native
that referenced
this pull request
Sep 8, 2026
Summary: Pull Request resolved: react#58393 Classifies `cxxreact:jsbigstring` as a public target under the C++ stable API three-tier visibility model. Adds `#include <react/cxxstableapi/UmbrellaGuard.h>` to the target's 2 exported C++ headers and introduces the module umbrella `React/JSBigString.h`, wiring the guard dependency into BUCK, CMake and CocoaPods and the umbrella into BUCK, CMake, CocoaPods, the iOS prebuild header config and the Android prefab export. Consumers that opt into `RN_STRICT_API` now get an error if they include the target's headers directly, and should include `<React/JSBigString.h>` instead; without that flag the guards are inert, so no existing build changes behaviour. Changelog: [Internal] Differential Revision: D119144023
j-piasecki
force-pushed
the
export-D119144023
branch
from
September 8, 2026 13:21
f325708 to
28ddbc1
Compare
cxxreact:jsbigstring with Stable API guards (#58393)cxxreact:jsbigstring with Stable API guards
j-piasecki
force-pushed
the
export-D119144023
branch
from
September 9, 2026 09:22
28ddbc1 to
69e19a9
Compare
Summary: Classifies `react/utils:utils` as a public target under the C++ stable API three-tier visibility model. Adds `#include <react/cxxstableapi/UmbrellaGuard.h>` to the module's 22 exported headers and introduces the module umbrella `React/Utils.h`, wiring the guard dependency into BUCK, CMake and CocoaPods and the umbrella into BUCK, CocoaPods, the iOS prebuild header config and the Android prefab export. Consumers that opt into `RN_STRICT_API` now get an error if they include the module's headers directly, and should include `<React/Utils.h>` instead; without that flag the guards are inert, so no existing build changes behaviour. Changelog: [Internal] Differential Revision: D117858212
Summary: Pull Request resolved: react#58393 Classifies `cxxreact:jsbigstring` as a public target under the C++ stable API three-tier visibility model. Adds `#include <react/cxxstableapi/UmbrellaGuard.h>` to the target's 2 exported C++ headers and introduces the module umbrella `React/JSBigString.h`, wiring the guard dependency into BUCK, CMake and CocoaPods and the umbrella into BUCK, CMake, CocoaPods, the iOS prebuild header config and the Android prefab export. Consumers that opt into `RN_STRICT_API` now get an error if they include the target's headers directly, and should include `<React/JSBigString.h>` instead; without that flag the guards are inert, so no existing build changes behaviour. Under `USE_FRAMEWORKS` the pod now maps its headers relative to `ReactCommon`, so they install under `cxxreact/` inside the built framework rather than at its root. Pods that pick up the framework's `Headers` directory through `install_modules_dependencies` are unaffected. `React-RCTFabric`, `ReactCommon` and `React-NativeModulesApple` pin their own search paths instead and are updated here; pods outside the repository that do the same have to make the equivalent change. Changelog: [iOS][Breaking] - Install `React-cxxreact` headers under `cxxreact/` inside its framework when `USE_FRAMEWORKS` is enabled. Pods that include `<cxxreact/...>` without calling `install_modules_dependencies` must add `React_cxxreact.framework/Headers` to `HEADER_SEARCH_PATHS`. Differential Revision: D119144023
cxxreact:jsbigstring with Stable API guardscxxreact:jsbigstring with Stable API guards (#58393)
j-piasecki
force-pushed
the
export-D119144023
branch
from
September 9, 2026 10:08
69e19a9 to
9444948
Compare
|
This pull request has been merged in 0a92bae. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary:
Classifies
cxxreact:jsbigstringas a public target under the C++ stable API three-tier visibility model. Adds#include <react/cxxstableapi/UmbrellaGuard.h>to the target's 2 exported C++ headers and introduces the module umbrellaReact/JSBigString.h, wiring the guard dependency into BUCK, CMake and CocoaPods and the umbrella into BUCK, CMake, CocoaPods, the iOS prebuild header config and the Android prefab export.Consumers that opt into
RN_STRICT_APInow get an error if they include the target's headers directly, and should include<React/JSBigString.h>instead; without that flag the guards are inert, so no existing build changes behaviour.Under
USE_FRAMEWORKSthe pod now maps its headers relative toReactCommon, so they install undercxxreact/inside the built framework rather than at its root. Pods that pick up the framework'sHeadersdirectory throughinstall_modules_dependenciesare unaffected.React-RCTFabric,ReactCommonandReact-NativeModulesApplepin their own search paths instead and are updated here; pods outside the repository that do the same have to make the equivalent change.Changelog:
[iOS][Breaking] - Install
React-cxxreactheaders undercxxreact/inside its framework whenUSE_FRAMEWORKSis enabled. Pods that include<cxxreact/...>without callinginstall_modules_dependenciesmust addReact_cxxreact.framework/HeaderstoHEADER_SEARCH_PATHS.Differential Revision: D119144023