fix(client): enforce dSYM generation for all targets#2716
Conversation
There was a problem hiding this comment.
Pull request overview
This pull request enforces dSYM (debug symbol) file generation for all Apple/Xcode targets to improve debugging capabilities and reduce warnings about missing debug symbols. The PR modifies build settings in Xcode project configuration files to ensure consistent dSYM generation across all targets, which reduces debug symbol warnings from 3 to 1 according to the PR description.
Changes:
- Consolidated DEBUG_INFORMATION_FORMAT settings to project level in Outline.xcodeproj to ensure all targets use "dwarf-with-dsym"
- Updated OutlineLib.xcodeproj Debug configuration to use "dwarf-with-dsym" instead of "dwarf"
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| client/src/cordova/apple/xcode/Outline.xcodeproj/project.pbxproj | Removed target-specific DEBUG_INFORMATION_FORMAT settings and added project-level "dwarf-with-dsym" configuration for both Debug and Release builds |
| client/src/cordova/apple/OutlineLib/OutlineLib.xcodeproj/project.pbxproj | Changed Debug configuration from "dwarf" to "dwarf-with-dsym" to match Release configuration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
It seems the missing symbols are for Sentry, so I think we are ok with that. Below is the explanation from Gemini. The problem isn't with your main The warning from App Store Connect is complaining about missing dSYMs for the UUIDs Based on my investigation into the derived data and the Sentry Swift Package, the missing dSYMs are for the pre-compiled Sentry framework Here is what's happening:
How to Fix ThisBecause this is an Xcode bug related to Swift Package Manager and dynamic frameworks, the standard workaround is to add a small Run Script phase to your Since you've already opened the Xcode project, here is how you can implement this fix:
# This script works around an Xcode 15 bug where dSYMs from dynamic XCFrameworks
# included via Swift Package Manager are not copied into the final archive.
# Without this, App Store Connect warns about missing symbols.
if [ "$CONFIGURATION" = "Release" ]; then
echo "Copying Sentry dSYMs to archive..."
# Path to where Swift Package Manager downloaded the Sentry artifacts
SENTRY_DSYM_PATH="${BUILD_DIR}/../../SourcePackages/artifacts/sentry-cocoa/Sentry-Dynamic/Sentry-Dynamic.xcframework/macos-arm64_x86_64/dSYMs/Sentry.fram
ork.dSYM"
# Destination path inside the archive
DEST_DIR="${DWARF_DSYM_FOLDER_PATH}"
if [ -d "$SENTRY_DSYM_PATH" ]; then
mkdir -p "$DEST_DIR"
cp -R "$SENTRY_DSYM_PATH" "$DEST_DIR/"
echo "Successfully copied Sentry dSYM."
else
echo "warning: Sentry dSYM not found at expected path: $SENTRY_DSYM_PATH"
fi
fiAlternative: Sentry's Fastlane/CLIAlternatively, if you use |
ohnorobo
left a comment
There was a problem hiding this comment.
thanks for hunting this down!
19a586e to
8e60a0d
Compare
This reduces the warnings about debug symbols not loading from 3 to 1. It's unclear what the remaining component is.
I'm hoping this will give us better error logs, so we can find issues with iOS/macOS. Let's make sure we include this in the next release.
Before:

After:
