Xcode Project Format: what are the differences between 3.1, 3.2, 6.3 and 8.0?

IosObjective CXcodeMacosSwift

Ios Problem Overview


When I open a project in Xcode 9 (or previous versions) and check the File Inspector, there's a section called Project Document, with a combo box named Project Format.
The available options (in Xcode 9) are Xcode 3.1-compatible, Xcode 3.2-compatible, Xcode 6.3-compatible, and Xcode 8.0-compatible:

Project Format Options

What are the differences between those formats?

-- UPDATE HISTORY (as of 20 May 2019) --

I originally asked this question when Xcode 6.4 was around.
Xcode 6.4's list included Xcode 3.1-compatible, Xcode 3.2-compatible and Xcode 6.3-compatible, and defaulted to Xcode 3.2-compatible.
Xcode 7 didn't introduce any changes.
Xcode 8 added an Xcode 8.0-compatible item.
Xcode 9 changed the default for new projects to Xcode 8.0-compatible. (8 Oct 2017)
Xcode 10.2 added Xcode 9.3-compatible, Xcode 10.0-compatible (May 2019)

Ios Solutions


Solution 1 - Ios

There does not seem to be any major breaking change in this format change (I tried few of my project, nothing changed in the xml structure itself except the version parameter..).

As far as I remember, there were few project formats before that, some of which actually had major changes, but that is probably not going to happen again because that was in the times of major structural changes to iOS, like from iOS2 to iOS3.

Also, just side note, the default for new projects is still 3.2 so it is very likely that 6.3 is basically for testing and version that they will force later will be -7.

My best guess would be that the new format is there for Swift 2 and the way how modules / dependencies are handled in there, as it for sure requires some additional data to be present in the project. But to be 100% sure we would need information from somebody on the Apple Team.

Hope it helps!

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionParaView Question on Stackoverflow
Solution 1 - IosJiri TrecakView Answer on Stackoverflow