bugsnag-js
bugsnag-js copied to clipboard
[expo] error in expo run:ios with sdk 42 and bugsnag 7.12.2
Describe the bug
expo run:ios fails when installing CocoaPods
Steps to reproduce
- npx bugsnag-expo-cli init
Environment
- Bugsnag version: 7.13.2
- Expo SDK: 42.0.1
Error messages:
Installing CocoaPods...
Command `pod install` failed.
└─ Cause: CocoaPods could not find compatible versions for pod "EXDevice":
In Podfile:
EXDevice (from `../node_modules/@bugsnag/plugin-expo-device/node_modules/expo-device/ios`)
Specs satisfying the `EXDevice (from `../node_modules/@bugsnag/plugin-expo-device/node_modules/expo-device/ios`)` dependency were found, but they required a higher minimum deployment target.
Hey @AlejandroGutierrezB, thanks for reporting this.
We'll continue to communicate via the support ticket, but for the benefit of future travellers:
It looks this is an issue with how we're attempting to make our semver-versioned releases work with Expo's breaking SDK changes. Because one of the Expo packages went up a major release our subsequent release broke the earlier compatibility.
We're discussing the best way resolve this going forward, but if you're wanting to use v7.13.2 with Expo 42, you can work around the issue by pinning the version of the following modules to 7.13.2:
@bugsnag/plugin-expo-device@bugsnag/delivery-expo@bugsnag/plugin-expo-app
Using npm:
Add these as explicit dependencies in your package.json:
"dependencies": {
"@bugsnag/expo": "7.13.2",
"@bugsnag/plugin-expo-device": "7.13.2",
"@bugsnag/delivery-expo": "7.13.2",
"@bugsnag/plugin-expo-app": "7.13.2",
},
Using yarn:
Override the dependency versions via a resolutions field in your package.json:
"dependencies": {
"@bugsnag/expo": "7.13.2",
...
},
"resolutions": {
"@bugsnag/expo/@bugsnag/plugin-expo-device": "7.13.2",
"@bugsnag/expo/@bugsnag/delivery-expo": "7.13.2",
"@bugsnag/expo/@bugsnag/plugin-expo-app": "7.13.2"
}