Search code examples
iosfirebasecocoapods

Why aren't all Firebase dependencies updated in a full CocoaPods update?


My Podfile is configured to update Firebase to all of the latest versions.

target 'MyApp' do
  use_frameworks!
  
  pod 'Firebase/Analytics'
  pod 'Firebase/Auth'
  pod 'Firebase/Crashlytics'
  pod 'Firebase/Firestore'
  pod 'Firebase/Functions'
  pod 'Firebase/Messaging'
  pod 'Firebase/Storage'
end

However, when I run pod outdated, I notice that not all dependencies are set to update in the subsequent update, such as the following:

- gRPC-C++ 1.44.0 -> 1.44.0 (latest version 1.50.0)
- gRPC-Core 1.44.0 -> 1.44.0 (latest version 1.52.0-pre2)

Is this because Firebase has determined it does not want the latest version in this update?


Solution

  • Yes, FirebaseFirestore depends specifically on version 1.44.0 of gRPC-C++. See https://github.com/CocoaPods/Specs/blob/master/Specs/0/9/f/FirebaseFirestore/10.4.0/FirebaseFirestore.podspec.json#L87.

    gRPC changed its C++ version in later releases that require some Firestore updates. A PR is in progress at https://github.com/firebase/firebase-ios-sdk/pull/10650