Release soon with Sendable CommandConfiguration?

I see that CommandConfiguration adds the Sendable protocol on the main branch.

This addresses the warning in Swift 5.10 with strict concurrency turned on:

Static property 'configuration' 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

This warning occurs for common ArgumentParser code such as:

struct SnapshotCommand: AsyncParsableCommand {
    
    static let configuration = CommandConfiguration(
        commandName: Help.Snapshot.commandName,
        abstract: Help.Snapshot.abstract,
        discussion: Help.Snapshot.discussion
    )
    ...
}

It would be great if that change could be part of an ArgumentParser release sooner rather than later.

(I realize I could technically depend on the main branch instead of a released version. I don't think that is a great practice with external dependencies.)

2 Likes

I believe @nnnnnnnn is prepping a release which will contain this change.

2 Likes

Thank you @rauhul.

I also realized after posting that the title of my post sounds like one of those old school cat memes:

2 Likes