Dependency Conflicts (cocoapods)

Hey everyone, I am running into a dependency conflict between Expo SDK33 and react-native-background-geolocation (GitHub - transistorsoft/react-native-background-geolocation: Sophisticated, battery-conscious background-geolocation with motion-detection). It appears Expo is running CocoaLumberjack (~> 3.2.1) and RNBG is using CocoaLumberjack (~> 3.5.1).
Does anyone know the best way to handle dependency conflicts in cocoapods?
Also is there a reason Expo isn’t using the latest version?

Any help is greatly appreciated.
Thanks

Actually, it looks like that isn’t the only package conflict. The following output comes from running a pod update

[!] CocoaPods could not find compatible versions for pod "CocoaLumberjack":
  In Podfile:
    ExpoKit/Core (from `http://github.com/expo/expo.git`, tag `ios/2.11.0`) was resolved to 33.0.0, which depends on
      CocoaLumberjack (~> 3.2.1)

    RNBackgroundGeolocation (from `../node_modules/react-native-background-geolocation-android`) was resolved to 3.0.6, which depends on
      CocoaLumberjack (~> 3.5.1)

CocoaPods could not find compatible versions for pod "FBAudienceNetwork":
  In Podfile:
    EXAdsFacebook (from `../node_modules/expo-ads-facebook/ios`) was resolved to 5.0.1, which depends on
      FBAudienceNetwork

    ExpoKit/Core (from `http://github.com/expo/expo.git`, tag `ios/2.11.0`) was resolved to 33.0.0, which depends on
      FBAudienceNetwork (= 5.1.1)

There are only pre-release versions available satisfying the following requirements:

	'FBAudienceNetwork', '>= 0'

	'FBAudienceNetwork', '= 5.1.1'

You should explicitly specify the version in order to install a pre-release version
CocoaPods could not find compatible versions for pod "FBSDKCoreKit":
  In Podfile:
    EXFacebook (from `../node_modules/expo-facebook/ios`) was resolved to 5.0.1, which depends on
      FBSDKCoreKit

    ExpoKit/Core (from `http://github.com/expo/expo.git`, tag `ios/2.11.0`) was resolved to 33.0.0, which depends on
      FBSDKCoreKit (= 4.40.0)

CocoaPods could not find compatible versions for pod "FBSDKLoginKit":
  In Podfile:
    EXFacebook (from `../node_modules/expo-facebook/ios`) was resolved to 5.0.1, which depends on
      FBSDKLoginKit

    ExpoKit/Core (from `http://github.com/expo/expo.git`, tag `ios/2.11.0`) was resolved to 33.0.0, which depends on
      FBSDKLoginKit (= 4.40.0)

CocoaPods could not find compatible versions for pod "Google-Mobile-Ads-SDK":
  In Podfile:
    EXAdsAdMob (from `../node_modules/expo-ads-admob/ios`) was resolved to 5.0.1, which depends on
      Google-Mobile-Ads-SDK

    ExpoKit/Core (from `http://github.com/expo/expo.git`, tag `ios/2.11.0`) was resolved to 33.0.0, which depends on
      Google-Mobile-Ads-SDK (~> 7.22.0)
1 Like

We’re seeing the same sorts of errors while trying to upgrade to Expo SDK v33. Any help is appreciated.

Honest, I gave up and rebuilt the app in bare workflow (basically without expo) and had a lot of success. It’s hard when ExpoKit doesn’t keep up its deep versions.

Okay, in case it helps anyone else, what solved this problem for us was upgrading cocoapods to 1.7.2 (we previously were using 1.5.3). This made those version dependency errors go away, but then we got Podfile syntax errors about undefined method native_target. Then I used zanechua’s helpful explanation in undefined method native_target during post install · Issue #8138 · CocoaPods/CocoaPods · GitHub to fix up my Podfile syntax. Now the pod install works without any red errors. My new problem is getting GoogleUtilities/GULAppEnvironmentUtil.h file not found when trying to compile in XCode.

1 Like

pod repo update fixed the issue for me.

I still have the conflicts with FBSDK dependencies like this one:

EXFacebook (from `../node_modules/expo-facebook/ios`) was resolved to 5.0.1, which depends on
      FBSDKCoreKit

    ExpoKit/Core (from `http://github.com/expo/expo.git`, tag `ios/2.12.4`) was resolved to 34.0.0, which depends on
      FBSDKCoreKit (= 4.40.0)

I am on Cocoapods version 1.7.5 and nothing helps, I have 1 week of struggling to update v32 to 33 or 34 and no success…