Make the toolkit fully compliant with Swift 6 and strict concurrency. There's a lot to do with this, fortunately it's already begun with #735, #736, #740, and more. You can see in XCode what all needs to be done by updating Package.swift:
- swift-tools-version:5.10
+ swift-tools-version:6.0
When you build, you'll see a lot of errors. The general requirements for Swift 6 are:
- Moving shared state into actors or marking UI-bound code with @mainactor.
- Ensuring types passed between threads conform to the Sendable protocol.
- Using structured concurrency instead of legacy completion handlers where possible.
This will cause breaking changes for consumers. You can get a rough idea of the changes from this compare, though this was done prior to a lot of changes from 740, so don't cherry-pick from it.
Make the toolkit fully compliant with Swift 6 and strict concurrency. There's a lot to do with this, fortunately it's already begun with #735, #736, #740, and more. You can see in XCode what all needs to be done by updating Package.swift:
When you build, you'll see a lot of errors. The general requirements for Swift 6 are:
This will cause breaking changes for consumers. You can get a rough idea of the changes from this compare, though this was done prior to a lot of changes from 740, so don't cherry-pick from it.