Skip to content

Conversation

chrfalch
Copy link
Collaborator

Summary:

Added readme files for both RN dependencies and RN Core precompiled

Changelog:

[IOS] [FIXED] - Added documentation for the prebuild scripts for precompiling React Native Core and React Native Dependencies.

Added readme files for both RN dependencies and RN Core precompiled
@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Oct 13, 2025
@chrfalch chrfalch requested a review from cipolleschi October 13, 2025 08:05
@react-native-bot
Copy link
Collaborator

react-native-bot commented Oct 13, 2025

Warnings
⚠️ 📋 Missing Test Plan - Can you add a Test Plan? To do so, add a "## Test Plan" section to your PR description. A Test Plan lets us know how these changes were tested.

Generated by 🚫 dangerJS against c498034

@facebook-github-bot facebook-github-bot added the Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team. label Oct 13, 2025
Copy link

meta-codesync bot commented Oct 13, 2025

@cortinico has imported this pull request. If you are a Meta employee, you can view this in D84506769.

Copy link
Contributor

@cipolleschi cipolleschi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @chrfalch Amazing job with the docs! Thanks for working on them.

I left some comments that should improve them.

Before submitting, try to run yarn prettier as we have sevarl prettier warnings popping up!

@chrfalch chrfalch requested a review from cipolleschi October 14, 2025 13:07
@chrfalch
Copy link
Collaborator Author

Hey @chrfalch Amazing job with the docs! Thanks for working on them.

I left some comments that should improve them.

Before submitting, try to run yarn prettier as we have sevarl prettier warnings popping up!

Made them both simpler, also changed here and there and aligned the structure a bit better.

Copy link
Contributor

@cipolleschi cipolleschi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some other suggestions for changes. There are a couple of wrong things and we need to fix the formatting, but otherwise it will be good to go.

Comment on lines +3 to +4
This directory contains scripts for prebuilding React Native itself into
XCFrameworks for iOS and related platforms.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This directory contains scripts for prebuilding React Native itself into
XCFrameworks for iOS and related platforms.
This directory contains scripts for prebuilding React Native itself into XCFrameworks for iOS and related platforms.

Comment on lines +8 to +11
These scripts automate the process of building React Native as a Swift Package
and packaging it into XCFrameworks that can be distributed and consumed by iOS
applications. The build process creates optimized frameworks for multiple
architectures and platforms.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
These scripts automate the process of building React Native as a Swift Package
and packaging it into XCFrameworks that can be distributed and consumed by iOS
applications. The build process creates optimized frameworks for multiple
architectures and platforms.
These scripts automate the process of building React Native as a Swift Package and packaging it into XCFrameworks that can be distributed and consumed by iOS applications. The build process creates optimized frameworks for multiple architectures and platforms.

Comment on lines +18 to +19
- Create distributable binaries for iOS, iOS Simulator, Catalyst, Vision, and
visionOS platforms
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Create distributable binaries for iOS, iOS Simulator, Catalyst, Vision, and
visionOS platforms
- Create distributable binaries for iOS, iOS Simulator, Catalyst.

visionOS platforms
- Support both Debug and Release build configurations
- Generate Debug Symbol (dSYM) files for debugging
- Enable library evolution and module stability for Swift packages
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Enable library evolution and module stability for Swift packages

this line does not mean anything concrete.


If no options are passed, the script executes all the steps in this order:

- setup build for all platforms and flavors
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- setup build for all platforms and flavors
- setup the codebase for all platforms and flavors
- build for all platforms and flavors

Comment on lines +58 to +59
To use the prebuilt React Native Dependencies XCFrameworks in your iOS project,
run pod install with the environment variable `RCT_USE_RN_DEP` set to `1`:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To use the prebuilt React Native Dependencies XCFrameworks in your iOS project,
run pod install with the environment variable `RCT_USE_RN_DEP` set to `1`:
To use the prebuilt React Native Dependencies XCFrameworks in your iOS project, run pod install with the environment variable `RCT_USE_RN_DEP` set to `1`:

Comment on lines +65 to +66
This can be combined with `RCT_USE_RN_DEP=1` to use both React Native and its
dependencies as prebuilt frameworks.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This can be combined with `RCT_USE_RN_DEP=1` to use both React Native and its
dependencies as prebuilt frameworks.
This can be combined with `RCT_USE_RN_DEP=1` to use both React Native and its dependencies as prebuilt frameworks.

Comment on lines +68 to +69
For debugging and troubleshooting the Cocoapods scripts, you can use the
following environment variables:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For debugging and troubleshooting the Cocoapods scripts, you can use the
following environment variables:
For debugging and troubleshooting the Cocoapods scripts, you can use the following environment variables:

Comment on lines +71 to +76
- `RCT_USE_RN_DEP`: If set to 1, it will use the release tarball from Maven
instead of building from source.
- `RCT_USE_LOCAL_RN_DEP`: **TEST ONLY** If set, it will use a local tarball of
ReactNativeDependencies if it exists.
- `RCT_DEPS_VERSION`: **TEST ONLY** If set, it will override the version of
ReactNativeDependencies to be used.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- `RCT_USE_RN_DEP`: If set to 1, it will use the release tarball from Maven
instead of building from source.
- `RCT_USE_LOCAL_RN_DEP`: **TEST ONLY** If set, it will use a local tarball of
ReactNativeDependencies if it exists.
- `RCT_DEPS_VERSION`: **TEST ONLY** If set, it will override the version of
ReactNativeDependencies to be used.
- `RCT_USE_RN_DEP`: If set to 1, it will use the release tarball from Maven instead of building from source.
- `RCT_USE_LOCAL_RN_DEP`: **TEST ONLY** If set, it will use a local tarball of ReactNativeDependencies if it exists.
- `RCT_DEPS_VERSION`: **TEST ONLY** If set, it will override the version of ReactNativeDependencies to be used.

Comment on lines +127 to +137
For consuming, debugging or troubleshooting when using Cocoapods scripts, you
can use the following environment variables:

- `RCT_USE_PREBUILT_RNCORE`: If set to 1, it will use the release tarball from
Maven instead of building from source.
- `RCT_TESTONLY_RNCORE_TARBALL_PATH`: **TEST ONLY** If set, it will use a local
tarball of RNCore if it exists.
- `RCT_TESTONLY_RNCORE_VERSION`: **TEST ONLY** If set, it will override the
version of RNCore to be used.
- `RCT_SYMBOLICATE_PREBUILT_FRAMEWORKS`: If set to 1, it will download the dSYMs
for the prebuilt RNCore frameworks and install these in the framework folders
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For consuming, debugging or troubleshooting when using Cocoapods scripts, you
can use the following environment variables:
- `RCT_USE_PREBUILT_RNCORE`: If set to 1, it will use the release tarball from
Maven instead of building from source.
- `RCT_TESTONLY_RNCORE_TARBALL_PATH`: **TEST ONLY** If set, it will use a local
tarball of RNCore if it exists.
- `RCT_TESTONLY_RNCORE_VERSION`: **TEST ONLY** If set, it will override the
version of RNCore to be used.
- `RCT_SYMBOLICATE_PREBUILT_FRAMEWORKS`: If set to 1, it will download the dSYMs
for the prebuilt RNCore frameworks and install these in the framework folders
For consuming, debugging or troubleshooting when using Cocoapods scripts, you can use the following environment variables:
- `RCT_USE_PREBUILT_RNCORE`: If set to 1, it will use the release tarball from Maven instead of building from source.
- `RCT_TESTONLY_RNCORE_TARBALL_PATH`: **TEST ONLY** If set, it will use a local tarball of RNCore if it exists.
- `RCT_TESTONLY_RNCORE_VERSION`: **TEST ONLY** If set, it will override the version of RNCore to be used.
- `RCT_SYMBOLICATE_PREBUILT_FRAMEWORKS`: If set to 1, it will download the dSYMs for the prebuilt RNCore frameworks and install these in the framework folders

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants