-
Notifications
You must be signed in to change notification settings - Fork 24.9k
[precompile] added readme/doc files for precompile #54137
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Added readme files for both RN dependencies and RN Core precompiled
@cortinico has imported this pull request. If you are a Meta employee, you can view this in D84506769. |
There was a problem hiding this 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!
Made them both simpler, also changed here and there and aligned the structure a bit better. |
There was a problem hiding this 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.
This directory contains scripts for prebuilding React Native itself into | ||
XCFrameworks for iOS and related platforms. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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. |
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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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. |
- Create distributable binaries for iOS, iOS Simulator, Catalyst, Vision, and | ||
visionOS platforms |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- 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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- 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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- setup build for all platforms and flavors | |
- setup the codebase for all platforms and flavors | |
- build for all platforms and flavors |
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`: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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`: |
This can be combined with `RCT_USE_RN_DEP=1` to use both React Native and its | ||
dependencies as prebuilt frameworks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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. |
For debugging and troubleshooting the Cocoapods scripts, you can use the | ||
following environment variables: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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: |
- `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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- `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. |
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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 |
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.