We have an app build with Expo 41 SDK using eas Build & Submit. We have created a release channel in the eas.json
file, called qa
"build": {
"qa": {
"android": {
"env": {
"APP_ENV": "qa"
}
},
"ios": {
"image": "latest",
"env": {
"APP_ENV": "qa"
}
},
"releaseChannel": "qa"
},
...
We find a bug and want to update with expo publish
But the meantime we have upgrade our expo and eas CLI (not expo sdk in our app) to newest version. Our app in our release branch is still using expo 41.
We make some javascript changes that fixes some business logic and run
npx cross-env APP_ENV=qa expo publish --release-channel qa
I doesn’t work. We can see from the expo publish logs that it says
› Expo SDK: 42.0.0
› Release channel: qa
› Workflow: Managed
It looks like because our expo CLI is on a newer version than our app sdk, we don’t get the over the air update.
We have now upgraded our app to Expo sdk 42, and expo publish works again.
But if this is the case, then as soon as we update expo-cli again, we can’t do OTA? And it is not easy to know what version of expo-cli that matches a given version of expo sdk?