Build number is not unique
kitallis opened this issue · 1 comments
kitallis commented
Build numbers are not unique. A combination of build number + version name, however is.
nid90 commented
Did some experiments on this for App Store. Here are the results.
TL;DR:
- version name should always be greater than the last production release
- version code and version name combination should be unique
- version code does not have constraint on being higher than previous value
Here is more data on this:
Scenario: current release build - 1.48.0 (9201)
___________________
Test Case 1: same version name as production, increased build number
Upload a build to TF with these values:
versionName: 1.48.0
versionCode: 9201
Result:
[07:58:48]: The provided entity includes an attribute with a value that has already been used The bundle version must be higher than the previously uploaded version: ‘9201’. (ID: 25ce3149-2aa2-46b7-a1de-fb5e1f344d10) (-19232)
[07:58:48]: Could not download/upload from App Store Connect!
___________________
Test Case 2: increased version name from production, same build number as production
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9201
Result:
Success
___________________
Test Case 3: same version name from production, increased build number from production
Upload a build to TF with these values:
versionName: 1.48.0
versionCode: 9202
Result:
[08:20:06]: ERROR: Asset validation failed (90186) Invalid Pre-Release Train. The train version '1.48.0' is closed for new build submissions (ID: 70a97821-fb9d-4396-971b-6cbf16c3bdbb)
[08:20:06]: ERROR: Asset validation failed (90062) This bundle is invalid. The value for key CFBundleShortVersionString [1.48.0] in the Info.plist file must contain a higher version than that of the previously approved version [1.48.0]. Please find more information about CFBundleShortVersionString at https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring (ID: 7d08846f-ffbc-407a-9501-10ef6cf9855f)
[08:20:06]: Could not download/upload from App Store Connect!
___________________
Test Case 4: version name lower than production and previously unused
Upload a build to TF with these values:
versionName: 1.47.1
versionCode: 9201
Result:
[08:59:25]: ERROR: Asset validation failed (90062) This bundle is invalid. The value for key CFBundleShortVersionString [1.47.1] in the Info.plist file must contain a higher version than that of the previously approved version [1.48.0]. Please find more information about CFBundleShortVersionString at https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring (ID: 1b140854-882e-412c-a971-2f663cb407cc)
[08:59:25]: Could not download/upload from App Store Connect!
___________________
Test Case 5: same version name as before (non-production), but different build number
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9202
Result:
Success
___________________
Test Case 6: same version name as before (non-production), but different build number -- full duplicate
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9202
Result:
[09:21:44]: The provided entity includes an attribute with a value that has already been used The bundle version must be higher than the previously uploaded version: ‘9202’. (ID: ea5d137d-4c5e-48b0-9336-69988a64acf4) (-19232)
[09:21:44]: Could not download/upload from App Store Connect!
___________________
Test Case 7: ame version name as before (non-production), but lower build number than production
Upload a build to TF with these values:
versionName: 1.49.0
versionCode: 9190
Result:
Success