I'm using the new expo-dev-client and EAS workflow to attempt development with expo, while also including native dependencies (react-native-firebase in my case).
I've managed to build and install a preview of my app with EAS:
eas build --platform ios --profile staging
Where my "staging" profile is setup in eas.json like so:
{
"cli": {
"version": ">= 0.35.0"
},
"build": {
"production": {
"releaseChannel": "prod-v0",
"node": "14.17.4",
"ios": {
"cocoapods": "1.11.2",
"autoIncrement": "buildNumber"
}
},
"staging": {
"extends": "production",
"releaseChannel": "staging",
"distribution": "internal"
},
...
},
...
}
Note the releaseChannel is set to "staging" too.
So far so good. The app is building and I can install it on my device and confirm the releaseChannel using the expo-updates module with Updates.releaseChannel
Now I'd like to publish a pure javascript change, so I run...
expo publish --release-channel staging
But this gives the following warning (which I assume is why I don't see the update on my device):
ios: Expo.plist key: "EXUpdatesReleaseChannel": The value passed to the
--release-channel flag is to "staging", but it is set to "default".
So what/where is "Expo.plist", why isn't it in-sync, and how can I update it?
Update:
So I deleted the iOS folder from a previous expo run:ios build. The warning is now gone when running expo publish --release-channel staging. But still nothing seems to happen on my app - it still doesn't update.