[🐛] [iOS][SPM] Archive signature-collision workaround misses the `-ios-simulator` slice
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 77/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- ios, ruby
- Ambito
- build-system, mobile
Direzione di ricerca
Inizia da packages/app/firebase_spm.rb, in particolare da rnfirebase_fix_spm_archive_signature_collision alle righe 1325–1353 e dall’avviso di fallback alle righe 809–814. Controlla come lo script gestisce i file di firma di iOS e del simulatore iOS, quindi esegui il comando di archiviazione fornito ./repro.sh per confermare il fallimento e verificare che l’archiviazione riesca dopo la modifica.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Issue
rnfirebase_fix_spm_archive_signature_collision (firebase_spm.rb L1325–1353) adds a Run Script phase that only removes <name>.xcframework-ios.signature (L1336–1338). An archive for a simulator destination stages <name>.xcframework-ios-simulator.signature instead, so the phase removes nothing and Archive fails:
xcodebuild: error: “GoogleAdsOnDeviceConversion.xcframework-ios-simulator.signature” couldn’t be copied to “Signatures” because an item with the same name already exists.
This is what Bitrise's xcode-build-for-simulator step does by default: it always runs archive with -destination "generic/platform=iOS Simulator".
Repro: https://github.com/opfeffer/rnfb-sandbox/tree/07134d103d52485792d198d03573d2a9a4eeac7d. Run ./repro.sh (Expo SDK 57 blank TS, CNG, RNFB app + analytics 27.1.0, useFrameworks: "dynamic"):
xcodebuild archive … -destination "generic/platform=iOS Simulator"→ fails with the error above- Same command with
build→ passes (only archive stages the signatures) - Same
archivewith the patch below → passes
Suggested fix:
- rm_lines = RNFIREBASE_SPM_SIGNATURE_FIX_ARTIFACT_NAMES.map do |name|
- "rm -f \"${CONFIGURATION_BUILD_DIR}\"/#{name}.xcframework-ios.signature"
+ rm_lines = RNFIREBASE_SPM_SIGNATURE_FIX_ARTIFACT_NAMES.flat_map do |name|
+ %w[ios ios-simulator].map { |slice| "rm -f \"${CONFIGURATION_BUILD_DIR}\"/#{name}.xcframework-#{slice}.signature" }
end
The fallback warning (L809–814) also only mentions -ios.signature.
Project Files
Javascript
Click To Expand
package.json:
{
"dependencies": {
"@react-native-firebase/analytics": "27.1.0",
"@react-native-firebase/app": "27.1.0",
"expo": "57.0.31",
"expo-build-properties": "57.0.22",
"expo-status-bar": "57.0.1",
"react": "19.2.3",
"react-native": "0.86.3"
},
"devDependencies": {
"@types/react": "19.2.18",
"patch-package": "8.0.1",
"typescript": "6.0.3"
}
}
firebase.json for react-native-firebase v6:
# N/A
iOS
Click To Expand
ios/Podfile:
- I'm not using Pods
- I'm using Pods and my Podfile looks like:
# Unmodified Podfile from `expo prebuild` (Expo SDK 57, CNG), with
# expo-build-properties `ios.useFrameworks: "dynamic"`. See the repro repo.
AppDelegate.m:
// N/A: unmodified Expo-generated AppDelegate.swift
Android
Click To Expand
Have you converted to AndroidX?
- my application is an AndroidX application?
- I am using
android/gradle.settingsjetifier=truefor Android compatibility? - I am using the NPM package
jetifierfor react-native compatibility?
android/build.gradle:
// N/A
android/app/build.gradle:
// N/A
android/settings.gradle:
// N/A
MainApplication.java:
// N/A
AndroidManifest.xml:
<!-- N/A -->
Environment
Click To Expand
react-native info output:
System:
OS: macOS 26.7.1
CPU: (14) arm64 Apple M4 Pro
Binaries:
Node: 24.22.1
npm: 11.19.1
Managers:
CocoaPods: 1.16.2
SDKs:
iOS SDK: iOS 26.5
IDEs:
Xcode: 26.6/17F113
Languages:
Ruby: 3.3.10
npmPackages:
react: 19.2.3
react-native: 0.86.3
- Platform that you're experiencing the issue on:
- iOS
- Android
- iOS but have not tested behavior on Android
- Android but have not tested behavior on iOS
- Both
react-native-firebaseversion you're using that has this issue:27.1.0
Firebasemodule(s) you're using that has the issue:app(firebase_spm.rb), triggered byanalytics(firebase-ios-sdk 13.1.1 via SPM)
- Are you using
TypeScript?Y&6.0.3
- Lingua principale
- TypeScript
- Stelle
- 12.3k
- Fork
- 2.3k
- Merge medio
- 1g 19h
- PR unite (30g)
- 21
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di invertase/react-native-firebase
-
[📚] migrating-to-v27: Android fails on Expo SDK 58 (Kotlin 2.2) — document the BoM 34.19.0 overrideAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
invertase/react-native-firebase#9418 ·
I maintainer di solito rispondono entro 1 giorno
-
platform: android type: enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
invertase/react-native-firebase#9399 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
invertase/react-native-firebase#9419 ·
I maintainer di solito rispondono entro 1 giorno
-
[🐛] Firestore pipelines: Bytes and VectorValue constants are sent as their private fieldsForse già presa @Mastersam07 l’ha presa 3 giorni fa. Apertaimpact: web-implementation platform: all plugin: firestore type: bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
invertase/react-native-firebase#9413 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[🐛] Firestore pipelines: Timestamp (and Date) constants are sent as plain mapsForse già presa @Mastersam07 l’ha presa 3 giorni fa. Apertaimpact: web-implementation platform: all plugin: firestore type: bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
invertase/react-native-firebase#9412 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di invertase/react-native-firebase
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
JuliusBrussee/caveman#1449 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
linagora/twake-calendar-frontend#1924 ·
I maintainer di solito rispondono entro 1 giorno
-
Add: Class TV ModaApertacheck:passed streams:add
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
libnativeapi/nativeapi#21 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
GiganticMinecraft/seichi-playguide#183 ·
I maintainer di solito rispondono entro 1 giorno