firebase / firebase-ios-sdk

Firebase SDK for Apple App Development
https://firebase.google.com
Apache License 2.0
5.59k stars 1.46k forks source link

iOS: Building documentation (Docc) gives error coming from `FirebaseCoreExtension` while building with Xcode 16 #13756

Open VladimirAmiorkovFlutter opened 2 hours ago

VladimirAmiorkovFlutter commented 2 hours ago

Description

With latest Xcode Version 16.0 (16A242d), when building the project everything is fine but when I build the Documentation (Product > Build Documentation), I am getting this error via:

/.../Project/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIRLoggerLevel.h:23:28: redefinition of 'FIRLoggerLevel'

Building the documentation of the same project with Xcode Version 15.4 works just fine, so the error must come from the new xcodebuild (Xcode 16.0 Build version 16A242d).

Here are the pods in the project:

pod 'Firebase/Crashlytics', '11.3.0'

Removing the Firebase/Crashlytics pod from the project resolves the documentation build issue.

Reproducing the issue

  1. Create Xcode project using Xcode 15.4 (do not use Xcode 16.0 as CocoaPods does not yet support it)
  2. Close the Xcode project
  3. Go to project directory and init and install pods: $ pod init
  4. Open the Podfile and add pod 'Firebase/Crashlytics', '11.3.0'
  5. Go to project directory and install the pods: $ pod install --repo-update
  6. Open the newly created Xcode workspace
  7. Make sure that the project target is selected
  8. Build "docc" documentation by pressing "Product > Build Documentation" in the MacOS navigation bar.

You get errors from FirebaseCoreExtension during build.

Firebase SDK Version

11.3

Xcode Version

16.0

Installation Method

CocoaPods

Firebase Product(s)

Crashlytics

Targeted Platforms

iOS

Relevant Log Output

/Users/.../Project/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIRLoggerLevel.h:23:28: redefinition of 'FIRLoggerLevel'

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet
```json Replace this line with the contents of your Package.resolved. ```

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet
```yml PODS: - Firebase/CoreOnly (11.3.0): - FirebaseCore (= 11.3.0) - Firebase/Crashlytics (11.3.0): - Firebase/CoreOnly - FirebaseCrashlytics (~> 11.3.0) - FirebaseCore (11.3.0): - FirebaseCoreInternal (~> 11.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/Logger (~> 8.0) - FirebaseCoreExtension (11.3.0): - FirebaseCore (~> 11.0) - FirebaseCoreInternal (11.3.0): - "GoogleUtilities/NSData+zlib (~> 8.0)" - FirebaseCrashlytics (11.3.0): - FirebaseCore (~> 11.0) - FirebaseInstallations (~> 11.0) - FirebaseRemoteConfigInterop (~> 11.0) - FirebaseSessions (~> 11.0) - GoogleDataTransport (~> 10.0) - GoogleUtilities/Environment (~> 8.0) - nanopb (~> 3.30910.0) - PromisesObjC (~> 2.4) - FirebaseInstallations (11.3.0): - FirebaseCore (~> 11.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/UserDefaults (~> 8.0) - PromisesObjC (~> 2.4) - FirebaseRemoteConfigInterop (11.3.0) - FirebaseSessions (11.3.0): - FirebaseCore (~> 11.0) - FirebaseCoreExtension (~> 11.0) - FirebaseInstallations (~> 11.0) - GoogleDataTransport (~> 10.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/UserDefaults (~> 8.0) - nanopb (~> 3.30910.0) - PromisesSwift (~> 2.1) - GoogleDataTransport (10.1.0): - nanopb (~> 3.30910.0) - PromisesObjC (~> 2.4) - GoogleUtilities/Environment (8.0.2): - GoogleUtilities/Privacy - GoogleUtilities/Logger (8.0.2): - GoogleUtilities/Environment - GoogleUtilities/Privacy - "GoogleUtilities/NSData+zlib (8.0.2)": - GoogleUtilities/Privacy - GoogleUtilities/Privacy (8.0.2) - GoogleUtilities/UserDefaults (8.0.2): - GoogleUtilities/Logger - GoogleUtilities/Privacy - nanopb (3.30910.0): - nanopb/decode (= 3.30910.0) - nanopb/encode (= 3.30910.0) - nanopb/decode (3.30910.0) - nanopb/encode (3.30910.0) - PromisesObjC (2.4.0) - PromisesSwift (2.4.0): - PromisesObjC (= 2.4.0) DEPENDENCIES: - Firebase/Crashlytics (= 11.3.0) SPEC REPOS: trunk: - Firebase - FirebaseCore - FirebaseCoreExtension - FirebaseCoreInternal - FirebaseCrashlytics - FirebaseInstallations - FirebaseRemoteConfigInterop - FirebaseSessions - GoogleDataTransport - GoogleUtilities - nanopb - PromisesObjC - PromisesSwift SPEC CHECKSUMS: Firebase: 5c575140761e22324806f401e38c483d58db2dec FirebaseCore: 8542de610f35f86196ba26cdb2544565a5157c8e FirebaseCoreExtension: 30bb063476ef66cd46925243d64ad8b2c8ac3264 FirebaseCoreInternal: ac26d09a70c730e497936430af4e60fb0c68ec4e FirebaseCrashlytics: ba7b6a55dc10393f6583d87d8600d0d3ab2671d8 FirebaseInstallations: 58cf94dabf1e2bb2fa87725a9be5c2249171cda0 FirebaseRemoteConfigInterop: c3a5c31b3c22079f41ba1dc645df889d9ce38cb9 FirebaseSessions: 655ff17f3cc1a635cbdc2d69b953878001f9e25b GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7 GoogleUtilities: 26a3abef001b6533cf678d3eb38fd3f614b7872d nanopb: fad817b59e0457d11a5dfbde799381cd727c1275 PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851 PODFILE CHECKSUM: dd40a8909158eeaa7bf1342f0d7ee46699de9f64 COCOAPODS: 1.15.2 ```
google-oss-bot commented 2 hours ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.