Project: titanium
Issue TIMOB-17993: iOS: Split CFBundleVersion and CFBundleShortVersionString 
Early on the growth of iOS development the use of CFBundleVersion and CFBundleShortVersionString interchangeably was a tolerable behavior. However, these are two unique keys. The problem with using them interchangeably was originally raised when the Testflight ad-hoc distribution service became available. With Apple now having acquired the Testflight platform and incorporating it into their iTunes Connect platform, it is time to separate these two keys and to use them properly. This will require changes to the CLI tooling and the exposing of these to the tiapp.xml editor in Studio. Parity: TISTUD-5088 Android: Expose versionCode and versionName in TiApp Editor View Reference: https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html {quote} CFBundleShortVersionString CFBundleShortVersionString (String - iOS, OS X) specifies the release version number of the bundle, which identifies a released iteration of the app. The release version number is a string comprised of three period-separated integers. The first integer represents major revisions to the app, such as revisions that implement new features or major changes. The second integer denotes revisions that implement less prominent features. The third integer represents maintenance releases. The value for this key differs from the value for CFBundleVersion, which identifies an iteration (released or unreleased) of the app. This key can be localized by including it in your InfoPlist.strings files. {quote} {quote} CFBundleVersion CFBundleVersion (String - iOS, OS X) specifies the build version number of the bundle, which identifies an iteration (released or unreleased) of the bundle. The build version number should be a string comprised of three non-negative, period-separated integers with the first integer being greater than zero. The string should only contain numeric (0-9) and period (.) characters. Leading zeros are truncated from each integer and will be ignored (that is, 1.02.3 is equivalent to 1.2.3). This key is not localizable. {quote}
Story points: 8