I uploaded a build using the Xcode beta, forgetting that you can’t submit builds compiled with beta versions. So I updated to the release version of Xcode via the App Store.
With the Xcode beta, App Store Connect was accurately reflecting the build number (4.8.1). Now with the release version, Connect shows a build number of 5. I tried incrementing in Xcode to 4.8.2, and now Connect showed a build number of 6.
Has this happened to anyone else?
3
Answers
It’s not a bug, it’s a (new) feature.
Your build number must increment on every new build. A lot of people, including you, don’t know that. So now, during the build submission, your build number is validated, and it is automatically incremented if necessary.
So that’s what happened: your build number was corrected to 5; then you tried to lower it, which is illegal, and submitted again, and it was corrected to 6, which is right.
Note that the build number should be just a number, not a dotted version string.
Also, you can reset the build number to 1 if you up the user facing version string.
I experienced the same issue with XCode 13 and finally found the cause: during the process of uploading the archive, you are presented with a dialog that includes a "Manage Version and Build Number" checkbox. By default, it is ticked (i.e. checked). Untick this box to prevent the build number from being auto-managed by Apple.
This is definitely a bug.
The release notes just say the build number must be a valid build number and the current documentation for CFBundleVersion says it is a machine-readable string composed of one to three period-separated integers.
I was using xcrun altool –upload-app to upload my app and after switching to Xcode 13 when uploading my app with version 4.7.123 it automatically "corrected" it to 5.
I am now using xcrun altool –upload-package along with –bundle-version to set the build number which works except that I can no longer upload any version 4.7 apps because the currently uploaded version is 5.