Swift 4.2 发布!

Swift 4.2 现已正式发布!Swift 4.2 基于 Swift 4 的优势构建,提供了更快的编译速度,改进了调试体验,更新了标准库,并趋向于二进制兼容性。

您可以观看 WWDC 2018:Swift 新特性 演示文稿,快速了解其概况,并尝试 Ole Begemann 整理的这个 playground 中的一些新功能。

语言更新

Swift 4.2 是一个主要的语言版本,包含以下通过 Swift 演进过程的语言变更和更新

泛型改进

随着条件一致性支持的完成,Swift 4.2 在实现语言中泛型的愿景方面取得了重大进展。对泛型更好的支持最终减少了代码中所需的样板代码量,并使更多代码可重用。要了解有关条件一致性的更多信息,请参阅

观看 Swift 泛型 WWDC 2018 演示文稿以了解更多详情。

标准库更新

Swift 4.2 中的标准库包含许多新功能,包括对 Hashable 协议的改进以及一组新的统一的随机化函数和协议。

请参阅更多信息:

二进制兼容性

Swift 4.2 使该语言更接近稳定的 ABI,为 Swift 的未来版本实现二进制兼容性。访问 ABI 仪表板 以了解有关此工作当前进度的更多详细信息。

其他语言和编译器更新

Swift 4.2 包含许多改进,这些改进对开发者体验有显著影响,包括

Swift 4.2 还实现了来自 Swift 演进过程的以下语言提案

包管理器更新

Swift 4.2 为 Swift 包管理器引入了新功能

Swift 4.2 还实现了来自 Swift 演进过程的以下包管理器提案

迁移到 Swift 4.2

Swift 4.2 与 Swift 4、Swift 4.1 和 Swift 3 源码兼容。Swift 4.2 将是最后一个提供与 Swift 3 源码兼容性的版本。

为了帮助从早期版本的 Swift 迁移到 Swift 4.2,Apple 的 Xcode 10 包含一个代码迁移工具,可以自动处理许多需要的源码更改。还有一个 迁移指南 可供参考,指导您完成许多更改,特别是那些不太机械化且需要更直接审查的更改。

文档

上提供了 Swift 4.2 的最新版本 《Swift 编程语言》。它也可以在 Apple Books 商店 中免费获取。

平台

Linux

Ubuntu 18.04、Ubuntu 16.04 和 Ubuntu 14.04 的官方二进制文件可供下载

Apple (Xcode)

对于 Apple 平台上的开发,Swift 4.2 作为 Xcode 10 的一部分发布。

工具链也可从 下载

源代码

Swift 4.2 的开发在 GitHub 上以下存储库的 swift-4.2-branch 分支中进行跟踪

标签 swift-4.2-RELEASE 指定了构成 Swift 4.2 最终版本的那些仓库中的特定修订版本。

swift-4.2-branch 分支将保持开放,但会在相同的发布管理流程下,继续累积更改,以便用于潜在的未来错误修复“点”版本。