Swift Evolution

Since Apple Swift went open source, we have of course been investigating and staying on top of the evolution of the Swift language, and engaged with the Swift community. We plan to support future language changes to new versions of the Swift language in a timely fashion.

Without promising exact timelines, we'll continue to try to support all core Swift language changes for the closest upcoming release after they have been finalized, often before and sometimes shortly after they have shipped in Apple Swift. Of course details depend on the timelines for both Apple's releases and ours.

With the promised stabilization of the Swift ABI (currently moved beyond version 4.0), we will also be looking at support for Swift as a platform rather than a language, allowing the consumption and creation of binaries that work at Apple Swift level on the Cocoa platform, rather than at the Objective-C level. This would be on the roadmap for a release in 2018, at this stage.

Elements 9.0 and later provide full compatibility with Swift 3.

The lists below are kept in sync with this overview on swift.org.

Changes

Planned changes for Swift 4:

Confirmed changes for Swift 4.0:

Changes for Swift 3.1:

Changes for Swift 3.0.1:

Changes for Swift 3.0:

Changes for Swift 2.2: