Now that Swiftly is switching to 5.10 there is the experimental strict concurrency check feature that will help us to prepare for Swift 6's concurrency. You can add the checks like this in the Package.swift:
When trying this out with the Swiftly code there were a number of warnings that will become errors in Swift 6. These should be fixed in preparation for the update. Here are some examples:
/Users/cmcgee/git/swiftly-public/Sources/SwiftlyCore/SwiftlyVersion.swift:7:16: warning: static property 'regex' is not concurrency-safe because it is not either conforming to 'Sendable' or isolated to a global actor; this is an error in Swift 6
static let regex: Regex<(Substring, Substring, Substring, Substring, Substring?)> =
^
/Users/cmcgee/git/swiftly-public/Sources/SwiftlyCore/SwiftlyCore.swift:3:12: warning: let 'version' is not concurrency-safe because it is not either conforming to 'Sendable' or isolated to a global actor; this is an error in Swift 6
public let version = SwiftlyVersion(major: 0, minor: 3, patch: 0)
^
/Users/cmcgee/git/swiftly-public/Sources/SwiftlyCore/SwiftlyCore.swift:7:12: warning: var 'mockedHomeDir' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in Swift 6
public var mockedHomeDir: URL?
^
/Users/cmcgee/git/swiftly-public/Sources/SwiftlyCore/SwiftlyCore.swift:7:12: note: isolate 'mockedHomeDir' to a global actor, or convert it to a 'let' constant and conform it to 'Sendable'
public var mockedHomeDir: URL?
^
Now that Swiftly is switching to 5.10 there is the experimental strict concurrency check feature that will help us to prepare for Swift 6's concurrency. You can add the checks like this in the Package.swift:
When trying this out with the Swiftly code there were a number of warnings that will become errors in Swift 6. These should be fixed in preparation for the update. Here are some examples: