如何创建支持多个swift版本的swift包?
我的代码可以在 swift 4.0、4.2 和 5.0 上正常编译。如果我在 Package.swift 中更新 swift-tools-version 然后我不能在 4.0 或 4.2 上使用它,但如果我将 4.2 或 5.0 添加到 swiftLanguageVersions
它不识别版本枚举。
如果 swift-tools-version 设置为 4.0,.v5
在 swiftLanguageVersions
中无法识别
如果 swift-tools-version 更新到 5.0 那么这个包将不能在 4.0 上运行
正确的做法是什么?或者一旦你更新到最新版本的 swift 包就停止支持旧版本?
最佳答案
您可以为每个版本创建单独的 Package@swift-#.swift 文件或 starting in Swift 4.2您可以使用 .version("#")
枚举。
参见:https://forums.swift.org/t/swiftlanguageversions-best-practices-for-libraries/18443
关于具有多个 swift 版本和 swift-tools-version 的 Swift 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57172786/