Resolve run script build phase warnings#48495
Closed
woxtu wants to merge 1 commit into
Closed
Conversation
Contributor
|
@rshest has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
Contributor
Collaborator
|
This pull request was successfully merged by @woxtu in 088fcb1 When will my fix make it into a release? | How to file a pick request? |
ramonclaudio
added a commit
to ramonclaudio/react-native
that referenced
this pull request
Jun 2, 2026
The `[Hermes] Replace Hermes for the right configuration, if needed` script_phase has no declared outputs because it overwrites the prebuilt Hermes binary in place based on `$CONFIGURATION`. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project on the prebuilt-release tarball path. Set `script_phase[:always_out_of_date] = "1"` guarded by a `Pod::VERSION >= 1.13.0` check. Apple's documented opt-in for "yes, this phase intentionally runs every build." The phase still runs every build. The warning downgrades to a `note`. Matches the existing shape of the two sibling `Replace X for the right configuration` script_phases in the same package: - `React-Core-prebuilt.podspec` (react#52133) - `third-party-podspecs/ReactNativeDependencies.podspec` (react#49812) Same property previously accepted in react#48495 (`088fcb1e5d`) for `React-RCTFBReactNativeSpec.podspec` and the codegen podspecs (later consolidated in react#50317). `hermes-engine` is the last `Replace X` phase in the package without it.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jun 22, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jun 22, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jun 27, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jun 27, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 8, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 8, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 8, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 9, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 10, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 16, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
ramonclaudio
added a commit
to ramonclaudio/react-native
that referenced
this pull request
Jul 16, 2026
The `[Hermes] Replace Hermes for the right configuration, if needed` script_phase has no declared outputs because it overwrites the prebuilt Hermes binary in place based on `$CONFIGURATION`. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project on the prebuilt-release tarball path. Set `script_phase[:always_out_of_date] = "1"` guarded by a `Pod::VERSION >= 1.13.0` check. Apple's documented opt-in for "yes, this phase intentionally runs every build." The phase still runs every build. The warning downgrades to a `note`. Matches the existing shape of the two sibling `Replace X for the right configuration` script_phases in the same package: - `React-Core-prebuilt.podspec` (react#52133) - `third-party-podspecs/ReactNativeDependencies.podspec` (react#49812) Same property previously accepted in react#48495 (`088fcb1e5d`) for `React-RCTFBReactNativeSpec.podspec` and the codegen podspecs (later consolidated in react#50317). `hermes-engine` is the last `Replace X` phase in the package without it.
ramonclaudio
added a commit
to ramonclaudio/expo-fork
that referenced
this pull request
Jul 24, 2026
…hase The `Generate updates resources for expo-updates` script_phase in `packages/expo-updates/ios/EXUpdates.podspec` has no declared outputs because it regenerates `EXUpdates.bundle` from the bundling step every build. Xcode 14+ emits "will be run during every build because it does not specify any outputs" on every clean build of every project using `expo-updates`. Adding `:always_out_of_date => '1'` to the script_phase hash is Apple's documented opt-in for "yes, this phase intentionally runs every build." CocoaPods supports the key natively since 1.13. The phase still runs every build. The warning downgrades to a `note`. Same pattern facebook/react-native has merged three times for sibling podspecs: - react/react-native#48495 (088fcb1e5d), React-RCTFBReactNativeSpec, React-Fabric, React-FabricComponents - react/react-native#49812, ReactNativeDependencies - react/react-native#50317, codegen merge retained the flag `EXUpdates.podspec` was not touched in any of those passes.
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:
This PR updates podspecs and resolve the following Xcode warnings:
Enabling the
always_out_of_dateflag will uncheck "Based on dependency analysis" in a script phase.Changelog:
[INTERNAL] [FIXED] - Resolve run script build phase warnings
Test Plan:
bundle exec pod installin the RNTester folder