Should I migrate to swift3?

Good morning, I have an application developed in swift 2.2 with xcode 7.2.1. I would like to know until when I can make changes to my app with this xcode or it will block because it is not in swift3 with xcode8


Should I migrate to swift3?

Replies

Minimum for the store is Xcode 6 right now - I imagine it will be some time before 7.2.1 is not allowed. Not sure I'd wait much longer to migrate.

Should I migrate to swift3?

Yes. In my experience the difficulty associated with migration follows a bathtub curve. When a version of Swift is really new, migration is hard because of Xcode issues and a lack of experience in the community. Eventually that version of Swift stabilises and migration is as simple as it’s ever going to get. However, once the next version of Swift starts looming on the horizon, migration starts getting harder again.

Right now you’re at the bottom of the bath and it’s definitely time to migrate.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Going from 2.2 to 3 will probably be really easy. Xcode will probably convert it all for you, but like Eskimo is saying, the longer you wait, the harder. I would just open the project, follow the prompts and see if its done for you. Can't hurt (but backup first!)

probably migrate now, the jump to swift 4.0 from 2.0 would be an effort in madness


1. DO NOT USE THE MIGRATION TOOL.

2. make sure you have a complete pristine dupe, tarball somewhere

3. make another pristine copy and put it on a USB drive and air gap it


the migration will without a doubt royally as quarter pounder with cheese hose your project, for some reason once that process has started Xcode has been known to go out and search all of the projects still in the recent history list and try to migrate them.

where is theanalogkid these days? i need some AVaudio help.

if you have the chance to have 2 mac, you can keep one with XCode 7.2 and Swift 2.2 (and OSX10.11). Then migrate on the other Mac with XCode 8, Swift 3 and OSX 10.12.


that will also help if you need to test in the future for something that does not work as expected in Swift 3.


that's what I did. The conversion of (large) code took me a few hours to get it working.

Keeping a complete version on a second Mac also helped me understand the issues caused by the switch from OSX 10.11 to 10.12

if you have the chance to have 2 mac, you can keep one with XCode 7.2 and Swift 2.2 (and OSX10.11). Then migrate on the other Mac with XCode 8, Swift 3 and OSX 10.12.

There’s really no need for such extreme measures. Specifically:

  • Xcode supports coexistence, so you can have multiple versions of it installed simultaneously

    Note Xcode 7 is not officially supported on macOS 10.12 but in my experience it runs reasonably well for simple build and debug operations. If you need a 100% supported solution, both Xcode 7 and early Xcode 8 are fully supported on later versions of mac OS 10.11.x.

  • You can use version control to check out working copies from the Swift 2 for Xcode 7 and the Swift 3 branch for Xcode 8

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"