EAS build: The application's Info.plist does not contain a valid CFBundleShortVersionString

I have found the root of the problem.

expo prebuild generates project.pbxproj with wrong CURRENT_PROJECT_VERSION number and without MARKETING_VERSION

As you can see CURRENT_PROJECT_VERSION = 1 not CURRENT_PROJECT_VERSION = 1.9.3.

Changing CURRENT_PROJECT_VERSION to 1.9.3 and adding MARKETING_VERSION solved the problem!

I can’t see your older build than yesterday, because all the logs expired, but I suspect you always built it as a bare project and it never worked for you in managed, that is cleaning android/ios dirs and prebuilding did not help.

It’s hard to tell what is the root issue, but given that this is the only issue I heard this happening I suspect that it’s not a issue with prebuild, but more likely one of the plugins is breaking stuff

Values in Info.plist have a priority, so no, CURRENT_PROJECT_VERSION and MARKETING_VERSION should not be updated.

What values do you have in Info.plist after removing android/ios dirs and running prebuild?

Thanks for the explanation, but in my screenshot it ran yarn install without the --no-immutable option. So I was wondering what causes it to use or not use --no-immutable. But it’s not terribly important :slight_smile:

--no-immutable is used for yarn berry you are using classic yarn

1 Like

rm -rf ios android
npx expo prebuild --clean

Info.plist:

https://pastebin.com/YRJ4u2bX

I’m back with that problem. It was partly resolved after upgrading to Expo 48: CFBundleShortVersionString is set now, but with wrong value.

Info.plist - 1.0
app.json - 2.1.0 - ("buildNumber": "2.1.0",) and ("version": "2.1.0",)

If you create a new app do you get the same behaviour?

What if you install all of the dependencies from your real app? What if you add the same config plugins as your real app?