Swift 5.8 changes concurrency checking defaults?

In today's Xcode 14.3 beta, with Swift 5.8, projects are getting many new concurrency warnings while still having it set to minimal, both in Xcode and using swift build. Have the defaults here changed intentionally? Is there a document to track these changes?


I should clarify that an explicit setting of minimal does turn off the new warnings. But the implicit setting in Xcode, which the UI displays as minimal, or not passing the value to swift build, results in the new warnings.

I have tried Xcode 14.3 beta in my workflow.

And it is reporting a lot of @MainActor is only available at iOS 13 error when parsing the xx.private.swiftinterface file of one binary dependency of swift module.

That’s a different, known bug where @MainActor didn’t have proper availability computed at build time. Not the warnings I’m seeing, which are just the Sendable warnings being triggered by default.

Seems a bug that was fixed yesterday. https://github.com/apple/swift/pull/63786


Thanks, good to see it's being addressed.

1 Like