[ios][precompile] Fixed symbol mapping to slices#54641
Closed
chrfalch wants to merge 1 commit into
Closed
Conversation
Previously the symbolication support when using the precompiled React.XCFramework copied the symbol bundles to the wrong folder in the framework, causing Xcode to not find the symbols. This commit fixes this by copying symbols to the correct slice folders instead of in the root of the framework folder. Reproduction: ``` npx @react-native-community/cli init Next --version next --skip-install cd Next yarn cd ios bundle install RCT_USE_RN_DEP=1 RCT_USE_PREBUILT_RNCORE=1 RCT_SYMBOLICATE_PREBUILT_FRAMEWORKS=1 bundle exec pod install ``` Run Xcode and observe that you are not able to step into React Native source code. After this fix, you should be able to step into the source code of React Native. Note: Running `pod cache clean --all` and `rm -rf Pods` in the iOS folder followed by a clean rebuild in Xcode might be a good thing to ensure you're using the correct binaries when compiling.
|
@cipolleschi has imported this pull request. If you are a Meta employee, you can view this in D87919202. |
cortinico
reviewed
Nov 26, 2025
| slice_name = File.basename(dsym_path) | ||
| slice_dsym_dest = File.join("React.xcframework", slice_name, "React.framework", "dSYMs") | ||
| rncore_log(" Adding dSYM slice #{slice_name} into tarball at #{slice_dsym_dest}") | ||
| `(cd "#{File.dirname(frameworkTarPath)}" && mkdir -p "#{slice_dsym_dest}" && cp -R "#{dsym_path}/." "#{slice_dsym_dest}" && tar -rf "#{frameworkTarPath}" "#{slice_dsym_dest}")` |
Contributor
There was a problem hiding this comment.
IMHO this could be simplified just because is too long. I would avoid doing a cd before, you can invoke all the commands from the current directory.
In theory this could just be a tar invocation with -C which changes the working directory only for tar?
cortinico
approved these changes
Nov 26, 2025
cortinico
left a comment
Contributor
There was a problem hiding this comment.
Review automatically exported from Phabricator review in Meta.
|
@cipolleschi merged this pull request in ac31e96. |
react-native-bot
pushed a commit
that referenced
this pull request
Dec 2, 2025
Summary: Previously the symbolication support when using the precompiled React.XCFramework copied the symbol bundles to the wrong folder in the framework, causing Xcode to not find the symbols. This commit fixes this by copying symbols to the correct slice folders instead of in the root of the framework folder. Note: Running `pod cache clean --all` and `rm -rf Pods` in the iOS folder followed by a clean rebuild in Xcode might be a good thing to ensure you're using the correct binaries when compiling. ## Changelog: [IOS] [FIXED] - Fixed copying symbol bundles into correct slice folder Pull Request resolved: #54641 Test Plan: ``` npx react-native-community/cli init Next --version next --skip-install cd Next yarn cd ios bundle install RCT_USE_RN_DEP=1 RCT_USE_PREBUILT_RNCORE=1 RCT_SYMBOLICATE_PREBUILT_FRAMEWORKS=1 bundle exec pod install ``` Run Xcode and observe that you are not able to step into React Native source code. After this fix, you should be able to step into the source code of React Native. Reviewed By: cortinico Differential Revision: D87919202 Pulled By: cipolleschi fbshipit-source-id: 029bca3e182c170562e358beb50592d5b91d8e8b
Collaborator
|
This pull request was successfully merged by @chrfalch in 2bc6b00 When will my fix make it into a release? | How to file a pick request? |
This was referenced Mar 4, 2026
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:
Previously the symbolication support when using the precompiled React.XCFramework copied the symbol bundles to the wrong folder in the framework, causing Xcode to not find the symbols.
This commit fixes this by copying symbols to the correct slice folders instead of in the root of the framework folder.
Note:
Running
pod cache clean --allandrm -rf Podsin the iOS folder followed by a clean rebuild in Xcode might be a good thing to ensure you're using the correct binaries when compiling.Changelog:
[IOS] [FIXED] - Fixed copying symbol bundles into correct slice folder
Test Plan:
Run Xcode and observe that you are not able to step into React Native source code.
After this fix, you should be able to step into the source code of React Native.