Quickstart-unity: 馃悰 7.0.1 - Incompatible versions for FirebaseInstallations in generated Podfile

Created on 19 Dec 2020  路  4Comments  路  Source: firebase/quickstart-unity

[REQUIRED] Please fill in the following fields:

  • Unity editor version: 2020.1.17.f1
  • Firebase Unity SDK version: 7.0.1
  • Source you installed the SDK: UPM
  • Problematic Firebase Component: Installations
  • Other Firebase Components in use: Auth, Crashlytics, ANalytics, Messaging, Remote Config
  • Additional SDKs you are using: Facebook, GoogleMobileAds
  • Platform you are using the Unity editor on: Mac
  • Platform you are targeting: iOS
  • Scripting Runtime: IL2CPP

[REQUIRED] Please describe the issue here:

pod install

Analyzing dependencies
[!] CocoaPods could not find compatible versions for pod "FirebaseInstallations":
  In Podfile:
    Firebase/RemoteConfig (= 7.0.0) was resolved to 7.0.0, which depends on
      FirebaseRemoteConfig (~> 7.0.0) was resolved to 7.0.0, which depends on
        FirebaseInstallations (~> 7.0)

    FirebaseInstallations (= 1.7.0)

Steps to reproduce:

package.json

    "com.google.external-dependency-manager": "1.2.163",
    "com.google.firebase.analytics": "7.0.1",
    "com.google.firebase.auth": "7.0.1",
    "com.google.firebase.crashlytics": "7.0.1",
    "com.google.firebase.installations": "7.0.1",
    "com.google.firebase.messaging": "7.0.1",
    "com.google.firebase.remote-config": "7.0.1",

Generated Podfile

source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/CocoaPods/Specs'
platform :ios, '11.0'

target 'UnityFramework' do
  pod 'FBSDKCoreKit', '~> 8.0'
  pod 'FBSDKGamingServicesKit', '~> 8.0'
  pod 'FBSDKLoginKit', '~> 8.0'
  pod 'FBSDKShareKit', '~> 8.0'
  pod 'Firebase/Analytics', '7.0.0'
  pod 'Firebase/Auth', '7.0.0'
  pod 'Firebase/Core', '7.0.0'
  pod 'Firebase/Crashlytics', '7.0.0'
  pod 'Firebase/Messaging', '7.0.0'
  pod 'Firebase/RemoteConfig', '7.0.0'
  pod 'FirebaseInstallations', '1.7.0'
  pod 'GoogleMobileAdsMediationFacebook', '6.2.0.0'
  pod 'GoogleMobileAdsMediationUnity', '3.5.0.0'
  pod 'Google-Mobile-Ads-SDK', '~> 7.68'
  pod 'GoogleSignIn', '>= 5.0.0'
end
target 'Unity-iPhone' do
end
use_frameworks!

Relevant Code:

See above

bug

Most helpful comment

Someone forgot to update the dependencies in the release of Firebase Installations.

Easy fix for now:

Add a new FirebaseInstallationFixDependencies.xml to one of your Editor folders.
This will then bump up the version from 1.7.0 to 7.0.0 (or whatever you need).

<dependencies>
  <iosPods>
    <iosPod name="FirebaseInstallations" version="7.0.0" minTargetSdk="8.0">
    </iosPod>
  </iosPods>
</dependencies>

This is a build issue that could have been prevented via a CI/CD build test before releasing new versions that obsolete an older API.

All 4 comments

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

Someone forgot to update the dependencies in the release of Firebase Installations.

Easy fix for now:

Add a new FirebaseInstallationFixDependencies.xml to one of your Editor folders.
This will then bump up the version from 1.7.0 to 7.0.0 (or whatever you need).

<dependencies>
  <iosPods>
    <iosPod name="FirebaseInstallations" version="7.0.0" minTargetSdk="8.0">
    </iosPod>
  </iosPods>
</dependencies>

This is a build issue that could have been prevented via a CI/CD build test before releasing new versions that obsolete an older API.

Another stopgap fix would be to change the generated podfile line from

pod 'FirebaseInstallations', '1.7.0'

to

pod 'FirebaseInstallations', '7.0.0'

We have a proper fix for this on the way in an upcoming release.

@alexames : FYI I also see this in 7.0.2.

Was this page helpful?
0 / 5 - 0 ratings