diff --git a/.github/workflows/sdk.yml b/.github/workflows/sdk.yml
index f25cc0535..5788728f3 100644
--- a/.github/workflows/sdk.yml
+++ b/.github/workflows/sdk.yml
@@ -28,16 +28,12 @@ jobs:
if [[ "${TARGET}" == "Android" ]]; then
submodules="modules/sentry-java"
elif [[ "${TARGET}" == "Cocoa" ]]; then
- submodules=""
+ submodules="modules/sentry-cocoa"
else
submodules="modules/sentry-native"
fi
echo "submodulesPath=$submodules" >> $GITHUB_OUTPUT
- if [[ "$submodules" == "" ]]; then
- echo "submodules=src/sentry-dotnet" >> $GITHUB_OUTPUT
- else
- echo "submodules=src/sentry-dotnet $submodules" >> $GITHUB_OUTPUT
- fi
+ echo "submodules=src/sentry-dotnet $submodules" >> $GITHUB_OUTPUT
- name: Get submodule status
run: git submodule status --cached $SUBMODULES | tee submodules-status
@@ -66,7 +62,7 @@ jobs:
# hash of package/package.json for cache busting on release builds (version bump)
path: |
package-dev/Plugins
- key: sdk=${{ env.TARGET }}-${{ hashFiles('submodules-status', 'package/package.json', 'Directory.Build.targets', 'sdk-static/**') }}${{ env.TARGET == 'Cocoa' && hashFiles('modules/sentry-cocoa.properties') || '' }}
+ key: sdk=${{ env.TARGET }}-${{ hashFiles('submodules-status', 'package/package.json', 'Directory.Build.targets', 'sdk-static/**', 'scripts/build-cocoa-sdk.ps1') }}
- name: Installing Linux Dependencies
if: ${{ env.TARGET == 'Linux' && steps.cache.outputs.cache-hit != 'true' }}
@@ -95,11 +91,12 @@ jobs:
run: dotnet msbuild /t:Build${{ env.TARGET }}SDK /p:Configuration=Release /p:OutDir=other src/Sentry.Unity
- name: Upload build logs on failure
- # No build logs for Cocoa SDK as we assemble the xcframework from a downloaded release artifact
- if: ${{ failure() && env.TARGET != 'Cocoa' }}
+ if: ${{ failure() }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
- path: ${{ steps.env.outputs.submodulesPath }}/build.log
+ path: |
+ ${{ steps.env.outputs.submodulesPath }}/build.log
+ modules/sentry-cocoa/*.log
# Lower retention period - we only need this to retry CI.
retention-days: 14
diff --git a/.github/workflows/update-deps.yml b/.github/workflows/update-deps.yml
index 47a66e751..29fbb1010 100644
--- a/.github/workflows/update-deps.yml
+++ b/.github/workflows/update-deps.yml
@@ -17,7 +17,7 @@ jobs:
matrix:
include:
- name: Cocoa SDK
- path: modules/sentry-cocoa.properties
+ path: modules/sentry-cocoa
- name: Java SDK
path: modules/sentry-java
- name: Native SDK
diff --git a/.gitignore b/.gitignore
index 7eb5eab99..618d2ab2b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,7 +33,6 @@ package-dev/Tests/Editor/TestFiles/
package-dev/Plugins/*/Sentry/crashpad_handler*
# Download cache for native SDKs
-modules/sentry-cocoa
modules/sentry-native-ndk
# Adding .meta to control target platforms for all of our DLLs
diff --git a/.gitmodules b/.gitmodules
index aaad81671..a9b426fac 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -10,3 +10,6 @@
[submodule "modules/app-runner"]
path = modules/app-runner
url = https://github.com/getsentry/app-runner.git
+[submodule "modules/sentry-cocoa"]
+ path = modules/sentry-cocoa
+ url = https://github.com/getsentry/sentry-cocoa.git
diff --git a/Directory.Build.targets b/Directory.Build.targets
index 9375f617a..ca40195e1 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -12,7 +12,7 @@
../../artifacts/test/editmode/results.xml
$(RepoRoot)package-dev/Plugins/
- $(RepoRoot)modules/sentry-cocoa/
+ $(RepoRoot)modules/sentry-cocoa/
$(SentryArtifactsDestination)iOS/Sentry.xcframework~/
$(SentryArtifactsDestination)macOS/Sentry/
@@ -160,7 +160,7 @@ Expected to exist:
-
+
@@ -190,20 +190,17 @@ Expected to exist:
-
+
-
- $([System.IO.File]::ReadAllText("$(RepoRoot)modules/sentry-cocoa.properties"))
- $([System.Text.RegularExpressions.Regex]::Match($(PropertiesContent), 'version\s*=\s*([^\s]+)').Groups[1].Value)
-
+
-
+
-
+
diff --git a/modules/sentry-cocoa b/modules/sentry-cocoa
new file mode 160000
index 000000000..05d3ce833
--- /dev/null
+++ b/modules/sentry-cocoa
@@ -0,0 +1 @@
+Subproject commit 05d3ce8332097ff0b2347231ac66476fd7d2f4d8
diff --git a/modules/sentry-cocoa.properties b/modules/sentry-cocoa.properties
deleted file mode 100644
index c953972b2..000000000
--- a/modules/sentry-cocoa.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-version = 9.8.0
-repo = https://github.com/getsentry/sentry-cocoa
diff --git a/scripts/build-cocoa-sdk.ps1 b/scripts/build-cocoa-sdk.ps1
new file mode 100644
index 000000000..deb8444b7
--- /dev/null
+++ b/scripts/build-cocoa-sdk.ps1
@@ -0,0 +1,117 @@
+#!/usr/bin/env pwsh
+
+param(
+ [Parameter(Mandatory = $true)]
+ [string]$CocoaRoot,
+
+ [Parameter(Mandatory = $true)]
+ [string]$iOSDestination,
+
+ [Parameter(Mandatory = $true)]
+ [string]$macOSDestination
+)
+
+Set-StrictMode -Version latest
+$ErrorActionPreference = 'Stop'
+$PSNativeCommandUseErrorActionPreference = $true
+
+if (-not (Test-Path (Join-Path $CocoaRoot "Sentry.xcodeproj"))) {
+ Write-Error "sentry-cocoa submodule not checked out at: $CocoaRoot`nRun: git submodule update --init modules/sentry-cocoa"
+ exit 1
+}
+
+# All build artifacts go under XCFrameworkBuildPath/ which is already in sentry-cocoa's .gitignore.
+$buildPath = Join-Path $CocoaRoot "XCFrameworkBuildPath"
+$iOSXcframeworkPath = Join-Path $buildPath "Sentry-Dynamic-iOS.xcframework"
+$macOSXcframeworkPath = Join-Path $buildPath "Sentry-Dynamic-macOS.xcframework"
+
+Write-Host "Building Cocoa SDK from source..." -ForegroundColor Yellow
+
+Push-Location $CocoaRoot
+try {
+ ################ Build and set up iOS support ################
+
+ if (-not (Test-Path $iOSXcframeworkPath)) {
+ Write-Host "Building iOS xcframework..." -ForegroundColor Yellow
+ # Exclude arm64e from the binary. Since Xcode 26, apps without arm64e in the main binary
+ # can't include frameworks with arm64e slices (App Store rejection). The sentry-cocoa SDK
+ # ships separate "-WithARM64e" variants for apps that need it; Unity games don't.
+ & ./scripts/build-xcframework-variant.sh "Sentry" "-Dynamic" "mh_dylib" "" "iOSOnly" "arm64e"
+ & ./scripts/validate-xcframework-format.sh "Sentry-Dynamic.xcframework"
+ # build-xcframework-variant.sh outputs to the working directory — move into our build cache
+ Move-Item -Path "Sentry-Dynamic.xcframework" -Destination $iOSXcframeworkPath -Force
+ # Clean up intermediate archives, keep the final xcframework
+ $archivePath = Join-Path $buildPath "archive"
+ if (Test-Path $archivePath) {
+ Remove-Item -Path $archivePath -Recurse -Force
+ }
+ }
+
+ Write-Host "Setting up iOS frameworks..." -ForegroundColor Yellow
+
+ if (Test-Path $iOSDestination) {
+ Remove-Item -Path $iOSDestination -Recurse -Force
+ }
+
+ # Copy the xcframework as-is, including dSYMs. Since we build from source, the debug symbols
+ # won't be on Sentry's symbol server — they need to ship in the package so the Xcode build phase
+ # can upload them via sentry-cli, consistent with how all other native SDKs ship their debug symbols.
+ Copy-Item -Path $iOSXcframeworkPath -Destination $iOSDestination -Recurse -Force
+
+ $iOSInfoPlist = Join-Path $iOSDestination "Info.plist"
+ if (-not (Test-Path $iOSInfoPlist)) {
+ Write-Error "Failed to set up the iOS SDK."
+ exit 1
+ }
+ Write-Host "iOS SDK set up at: $iOSDestination" -ForegroundColor Green
+
+ ################ Build and set up macOS support ################
+
+ if (-not (Test-Path $macOSXcframeworkPath)) {
+ Write-Host "Building macOS xcframework..." -ForegroundColor Yellow
+ & ./scripts/build-xcframework-variant.sh "Sentry" "-Dynamic" "mh_dylib" "" "macOSOnly" ""
+ & ./scripts/validate-xcframework-format.sh "Sentry-Dynamic.xcframework"
+ Move-Item -Path "Sentry-Dynamic.xcframework" -Destination $macOSXcframeworkPath -Force
+ # Clean up all remaining build intermediates
+ foreach ($dir in @("archive", "DerivedData")) {
+ $dirPath = Join-Path $buildPath $dir
+ if (Test-Path $dirPath) {
+ Remove-Item -Path $dirPath -Recurse -Force
+ }
+ }
+ }
+
+ Write-Host "Setting up macOS support..." -ForegroundColor Yellow
+
+ $macOSSlice = Get-ChildItem -Path $macOSXcframeworkPath -Directory | Where-Object { $_.Name -like "macos-*" } | Select-Object -First 1
+ if (-not $macOSSlice) {
+ Write-Error "No macOS slice found in xcframework at: $macOSXcframeworkPath"
+ exit 1
+ }
+ $macOSFrameworkPath = Join-Path $macOSSlice.FullName "Sentry.framework/Versions/A/Sentry"
+ $macOSdSYMPath = Join-Path $macOSSlice.FullName "dSYMs/Sentry.framework.dSYM/Contents/Resources/DWARF/Sentry"
+
+ $macOSDestDir = Split-Path $macOSDestination -Parent
+ if (-not (Test-Path $macOSDestDir)) {
+ New-Item -ItemType Directory -Path $macOSDestDir -Force | Out-Null
+ }
+
+ if (-not (Test-Path $macOSFrameworkPath)) {
+ Write-Error "macOS framework not found at: $macOSFrameworkPath"
+ exit 1
+ }
+ Copy-Item -Path $macOSFrameworkPath -Destination $macOSDestination -Force
+ Write-Host "Copied macOS dylib to: $macOSDestination" -ForegroundColor Green
+
+ $macOSdSYMDestination = "$macOSDestination.dSYM"
+ if (-not (Test-Path $macOSdSYMPath)) {
+ Write-Error "macOS dSYM not found at: $macOSdSYMPath"
+ exit 1
+ }
+ Copy-Item -Path $macOSdSYMPath -Destination $macOSdSYMDestination -Force
+ Write-Host "Copied macOS dSYM to: $macOSdSYMDestination" -ForegroundColor Green
+} finally {
+ Pop-Location
+}
+
+Write-Host "Cocoa SDK build completed successfully!" -ForegroundColor Green
diff --git a/scripts/download-native-sdks.ps1 b/scripts/download-native-sdks.ps1
index 63c3b9588..6d6853881 100644
--- a/scripts/download-native-sdks.ps1
+++ b/scripts/download-native-sdks.ps1
@@ -28,13 +28,30 @@ $SDKs = @(
Destination = Join-Path $ArtifactsDestination "Android"
CheckDir = "Sentry~"
ExpectedFileCount = 4
+ },
+ @{
+ Name = "Cocoa"
+ Destination = $ArtifactsDestination
+ CheckFiles = @(
+ "iOS/Sentry.xcframework~/Info.plist",
+ "macOS/Sentry/Sentry.dylib"
+ )
}
)
function Test-SDKPresent {
param($SDK)
- if ($SDK.ContainsKey('CheckFile')) {
+ if ($SDK.ContainsKey('CheckFiles')) {
+ foreach ($file in $SDK.CheckFiles) {
+ $checkPath = Join-Path $SDK.Destination $file
+ if (-not (Test-Path $checkPath)) {
+ return $false
+ }
+ }
+ return $true
+ }
+ elseif ($SDK.ContainsKey('CheckFile')) {
$checkPath = Join-Path $SDK.Destination $SDK.CheckFile
return Test-Path $checkPath
}
@@ -75,20 +92,28 @@ function Download-SDK {
Write-Host "Downloading $Name SDK..." -ForegroundColor Yellow
- # Remove existing directory if present (partial download)
- if (Test-Path $Destination) {
- Write-Host " Removing existing directory..." -ForegroundColor Gray
- Remove-Item -Path $Destination -Recurse -Force
+ $artifactName = "$Name-sdk"
+
+ # Download to a temp directory, then move contents into destination
+ $tempDir = Join-Path ([System.IO.Path]::GetTempPath()) "sentry-$Name-sdk-download"
+ if (Test-Path $tempDir) {
+ Remove-Item -Path $tempDir -Recurse -Force
}
- $artifactName = "$Name-sdk"
- gh run download $RunId -n $artifactName -D $Destination
+ gh run download $RunId -n $artifactName -D $tempDir
if ($LASTEXITCODE -ne 0) {
Write-Error "Failed to download $Name SDK"
exit 1
}
+ # Move downloaded contents into the destination
+ if (-not (Test-Path $Destination)) {
+ New-Item -ItemType Directory -Path $Destination -Force | Out-Null
+ }
+ Copy-Item -Path (Join-Path $tempDir "*") -Destination $Destination -Recurse -Force
+ Remove-Item -Path $tempDir -Recurse -Force -ErrorAction SilentlyContinue
+
Write-Host " Downloaded $Name SDK successfully" -ForegroundColor Green
}
diff --git a/scripts/setup-cocoa-sdk.ps1 b/scripts/setup-cocoa-sdk.ps1
deleted file mode 100644
index 3e75c2d50..000000000
--- a/scripts/setup-cocoa-sdk.ps1
+++ /dev/null
@@ -1,147 +0,0 @@
-#!/usr/bin/env pwsh
-
-param(
- [Parameter(Mandatory=$true)]
- [string]$RepoRoot,
-
- [Parameter(Mandatory=$true)]
- [string]$CocoaVersion,
-
- [Parameter(Mandatory=$true)]
- [string]$CocoaCache,
-
- [Parameter(Mandatory=$true)]
- [string]$iOSDestination,
-
- [Parameter(Mandatory=$true)]
- [string]$macOSDestination,
-
- [switch]$iOSOnly
-)
-
-Set-StrictMode -Version latest
-$ErrorActionPreference = 'Stop'
-$PSNativeCommandUseErrorActionPreference = $true
-
-# Clean cache if version does not exist to get rid of old versions
-$zipFile = Join-Path $CocoaCache "Sentry-Dynamic-$CocoaVersion.xcframework.zip"
-if (-not (Test-Path $zipFile)) {
- Write-Host "Cleaning cache directory for new version..." -ForegroundColor Yellow
- if (Test-Path $CocoaCache) {
- Remove-Item -Path $CocoaCache -Recurse -Force
- }
-}
-
-if (-not (Test-Path $CocoaCache)) {
- New-Item -ItemType Directory -Path $CocoaCache -Force | Out-Null
-}
-
-if (-not (Test-Path $zipFile)) {
- Write-Host "Downloading Cocoa SDK version '$CocoaVersion'..." -ForegroundColor Yellow
- $downloadUrl = "https://github.com/getsentry/sentry-cocoa/releases/download/$CocoaVersion/Sentry-Dynamic.xcframework.zip"
- Invoke-WebRequest -Uri $downloadUrl -OutFile $zipFile
-}
-
-$xcframeworkPath = Join-Path $CocoaCache "Sentry-Dynamic.xcframework"
-if (-not (Test-Path $xcframeworkPath)) {
- Write-Host "Extracting xcframework..." -ForegroundColor Yellow
- Expand-Archive -Path $zipFile -DestinationPath $CocoaCache -Force
-}
-
-################ Set up iOS support ################
-# We strip out the iOS frameworks and create a new xcframework out of those.
-
-Write-Host "Setting up iOS frameworks..." -ForegroundColor Yellow
-
-$iOSFrameworks = Get-ChildItem -Path $xcframeworkPath -Directory | Where-Object { $_.Name -like "ios-*" -and $_.Name -notlike "*maccatalyst*" }
-if ($iOSFrameworks.Count -eq 0) {
- Write-Error "No iOS frameworks found in xcframework at: $xcframeworkPath"
- exit 1
-}
-
-Write-Host "Found $($iOSFrameworks.Count) iOS frameworks:" -ForegroundColor Green
-foreach ($framework in $iOSFrameworks) {
- Write-Host " - $($framework.Name)" -ForegroundColor Cyan
-}
-
-$xcodebuildArgs = @("-create-xcframework")
-
-foreach ($framework in $iOSFrameworks) {
- $frameworkPath = Join-Path $framework.FullName "Sentry.framework"
- if (Test-Path $frameworkPath) {
- $xcodebuildArgs += "-framework"
- $xcodebuildArgs += $frameworkPath
- Write-Host "Adding framework: $frameworkPath" -ForegroundColor Cyan
- } else {
- Write-Warning "Framework not found at: $frameworkPath"
- }
-}
-
-# Remove the ~ suffix from destination. xcodebuild requires the output path to end with `.xcframework`
-$xcframeworkDestination = $iOSDestination.TrimEnd('~', '/')
-
-$xcodebuildArgs += "-output"
-$xcodebuildArgs += $xcframeworkDestination
-
-Write-Host "Creating iOS-only xcframework..." -ForegroundColor Yellow
-Write-Host "Command: xcodebuild $($xcodebuildArgs -join ' ')" -ForegroundColor Gray
-
-try {
- & xcodebuild @xcodebuildArgs
- if ($LASTEXITCODE -ne 0) {
- Write-Error "xcodebuild failed with exit code: $LASTEXITCODE"
- exit 1
- }
- Write-Host "Successfully created iOS-only xcframework at: $xcframeworkDestination" -ForegroundColor Green
-} catch {
- Write-Error "Failed to run xcodebuild: $($_.Exception.Message)"
- exit 1
-}
-
-Write-Host "Appending '~' for Unity to ignore the framework"
-Move-Item -Path $xcframeworkDestination -Destination $iOSDestination -Force
-
-$iOSInfoPlist = Join-Path $iOSDestination "Info.plist"
-if (-not (Test-Path $iOSDestination) -or -not (Test-Path $iOSInfoPlist)) {
- Write-Error "Failed to set up the iOS SDK."
- exit 1
-}
-
-################ Set up macOS support ################
-# We copy the .dylib and the .dSYM directly into the plugins folder
-
-if (-not $iOSOnly) {
- Write-Host "Setting up macOS support..." -ForegroundColor Yellow
-
- $macOSFrameworkPath = Join-Path $xcframeworkPath "macos-arm64_x86_64/Sentry.framework/Versions/A/Sentry"
- $macOSdSYMPath = Join-Path $xcframeworkPath "macos-arm64_x86_64/dSYMs/Sentry.framework.dSYM/Contents/Resources/DWARF/Sentry"
-
- $macOSDestDir = Split-Path $macOSDestination -Parent
- if (-not (Test-Path $macOSDestDir)) {
- New-Item -ItemType Directory -Path $macOSDestDir -Force | Out-Null
- }
-
- if (Test-Path $macOSFrameworkPath) {
- Copy-Item -Path $macOSFrameworkPath -Destination $macOSDestination -Force
- Write-Host "Copied macOS dylib to: $macOSDestination" -ForegroundColor Green
- } else {
- Write-Error "macOS framework not found at: $macOSFrameworkPath"
- exit 1
- }
-
- $macOSdSYMDestination = "$macOSDestination.dSYM"
- if (Test-Path $macOSdSYMPath) {
- Copy-Item -Path $macOSdSYMPath -Destination $macOSdSYMDestination -Force
- Write-Host "Copied macOS dSYM to: $macOSdSYMDestination" -ForegroundColor Green
- } else {
- Write-Error "macOS dSYM not found at: $macOSdSYMPath"
- exit 1
- }
-
- if (-not (Test-Path $macOSDestination) -or -not (Test-Path $macOSdSYMDestination)) {
- Write-Error "Failed to set up the macOS SDK."
- exit 1
- }
-}
-
-Write-Host "Cocoa SDK setup completed successfully!" -ForegroundColor Green
\ No newline at end of file
diff --git a/test/Scripts.Tests/package-release.zip.snapshot b/test/Scripts.Tests/package-release.zip.snapshot
index 0fc135018..befe6c7f2 100644
--- a/test/Scripts.Tests/package-release.zip.snapshot
+++ b/test/Scripts.Tests/package-release.zip.snapshot
@@ -52,6 +52,7 @@ Plugins/iOS/SentryNativeBridgeNoOp.m.meta
Plugins/iOS/Sentry.xcframework~/ios-arm64/
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/
Plugins/iOS/Sentry.xcframework~/Info.plist
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/Info.plist
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/PrivacyInfo.xcprivacy
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/Sentry
@@ -124,6 +125,14 @@ Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/Modu
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/Modules/Sentry.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/Modules/Sentry.swiftmodule/x86_64-apple-ios-simulator.swiftdoc
Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/Sentry.framework/Modules/Sentry.swiftmodule/x86_64-apple-ios-simulator.swiftinterface
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/Contents/Resources/
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/Contents/Info.plist
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/Contents/Resources/Relocations/
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/Contents/Resources/Relocations/aarch64/Sentry.yml
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/Contents/Resources/Relocations/x86_64/Sentry.yml
+Plugins/iOS/Sentry.xcframework~/ios-arm64_x86_64-simulator/dSYMs/Sentry.framework.dSYM/Contents/Resources/DWARF/Sentry
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/
Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/Info.plist
Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/PrivacyInfo.xcprivacy
Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/Sentry
@@ -195,6 +204,13 @@ Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/Modules/Sentry.swiftm
Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/Modules/Sentry.swiftmodule/arm64e-apple-ios.private.swiftinterface
Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/Modules/Sentry.swiftmodule/arm64e-apple-ios.swiftdoc
Plugins/iOS/Sentry.xcframework~/ios-arm64/Sentry.framework/Modules/Sentry.swiftmodule/arm64e-apple-ios.swiftinterface
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/Contents/Resources/
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/Contents/Info.plist
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/Contents/Resources/Relocations/
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/Contents/Resources/Relocations/arm64e/Sentry.yml
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/Contents/Resources/Relocations/aarch64/Sentry.yml
+Plugins/iOS/Sentry.xcframework~/ios-arm64/dSYMs/Sentry.framework.dSYM/Contents/Resources/DWARF/Sentry
Plugins/Linux/Sentry.meta
Plugins/Linux/Sentry/libsentry.dbg.so
Plugins/Linux/Sentry/libsentry.dbg.so.meta