I have several projects developed in Xcode 10, but now Apple is saying (April 2020) that will not accept apps developed in Xcode 10, only Xcode 11. Is there any compatibility problem ? All my projects will compile properly in Xcode 11 ?
2 Answers
Is there any compatibility problem ? All my projects will compile properly in Xcode 11 ?
Try it and see? You don't really have a choice in the matter if Apple is going to stop accepting your Xcode 10 apps, so you might as well get started.
You can have multiple versions of Xcode installed at the same time. The best plan is to download Xcode from the developer site instead of the App Store, and rename each one with its version (e.g. Xcode-10.1, Xcode 11.4, etc.) so that they can all exist in your /Applications folder at the same time.
Xcode 11 will happily open your Xcode 10 projects, and everything should be fine. You may need to update some project settings to whatever Xcode 11 recommends, and your code will probably benefit from updates for the latest macOS or iOS versions.

- 124,013
- 19
- 183
- 272
-
Thanks a lot. I use XCode 10.2 swift 5.0 and I download from https://developer.apple.com/xcode/resources instead of Apple Store as you suggested. I installed Xcode 11.3 because I have Mojave 10.14.4 and Xcode 11.3 it is the maximum Xcode supported (because Xcode 11.4 requires Catalina 10.15.2). My swift is 5.0. I installed Xcode 11.3 and it seems to be ok, my app is compiling even though the swift is 5.1 now. Thanks a lot – Antonio Abrantes Apr 09 '20 at 01:42
What Apple will require is that apps be built with the latest versions of their platform's SDKs in order to be submitted and approved to be distributed through the App Store. They have extended the deadline for this to June 30, 2020 at the time I'm writing this (as you can see here).
This means that you need to make sure your project can be built using the latest SDK major versions. Make sure to open and build your projects using Xcode 11, which has the latests SDKs embedded in it. If your project fails to build, it can usually be because of 2 things:
- The new SDKs API have changed and code that you wrote a while back might now be invalid. Go through the issues found by Xcode and update your code to make it work with the latest API.
- The Swift language itself might have changed and code that you wrote a while back might now be invalid. These type of issues can be avoided by setting a specific Swift version to be used on your project in its build settings. Migrating your codebase to the latest Swift version (the one that's bundled with Xcode) might not be mandatory, but I'd recommend you do it if it involves just minor changes.
if after doing this, your project can be built, you should be good to go.

- 41
- 3