The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of SwiftCLI, reference master (2e9490), with Swift 6.1 for Linux on 26 Apr 2025 15:14:13 UTC.

Swift 6 data race errors: 21

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jakeheis/SwiftCLI.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/jakeheis/SwiftCLI
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 2e94905 Merge pull request #104 from EricRabil/master
Cloned https://github.com/jakeheis/SwiftCLI.git
Revision (git rev-parse @):
2e949055d9797c1a6bddcda0e58dada16cc8e970
SUCCESS checkout https://github.com/jakeheis/SwiftCLI.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/jakeheis/SwiftCLI.git
https://github.com/jakeheis/SwiftCLI.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftCLI",
  "name" : "SwiftCLI",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftCLI",
      "targets" : [
        "SwiftCLI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftCLITests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCLITests",
      "path" : "Tests/SwiftCLITests",
      "sources" : [
        "ArgumentListTests.swift",
        "CompletionGeneratorTests.swift",
        "Fixtures.swift",
        "HelpMessageGeneratorTests.swift",
        "InputTests.swift",
        "OptionRegistryTests.swift",
        "ParameterFillerTests.swift",
        "ParserTests.swift",
        "RouterTests.swift",
        "StreamTests.swift",
        "SwiftCLITests.swift",
        "TaskTests.swift",
        "ValidationTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "SwiftCLI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftCLI",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCLI",
      "path" : "Sources/SwiftCLI",
      "product_memberships" : [
        "SwiftCLI"
      ],
      "sources" : [
        "ArgumentList.swift",
        "ArgumentListManipulator.swift",
        "CLI.swift",
        "Command.swift",
        "Compatibility.swift",
        "CompletionGenerator.swift",
        "Error.swift",
        "HelpCommand.swift",
        "HelpMessageGenerator.swift",
        "Input.swift",
        "Option.swift",
        "OptionGroup.swift",
        "OptionRegistry.swift",
        "Parameter.swift",
        "Parser.swift",
        "Path.swift",
        "Stream.swift",
        "Task.swift",
        "Term.swift",
        "Validation.swift",
        "ValueBox.swift",
        "VersionCommand.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/23] Emitting module SwiftCLI
/host/spi-builder-workspace/Sources/SwiftCLI/Command.swift:158:16: warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
156 |     // Fix for strange crash on Linux with Swift >= 4.2
157 |
158 |     static var stream = NoStream()
    |                |- warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'stream' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'stream' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
159 |
160 |     mutating func write(_ string: String) {
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:178:23: warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
176 |
177 |     @available(*, unavailable, message: "Create a custom HelpMessageGenerator instead")
178 |     public static var helpCommand: Command? = nil
    |                       |- warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'helpCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'helpCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:181:23: warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
181 |     public static var versionCommand: Command? = nil
    |                       |- warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'versionCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'versionCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
182 |
183 |     @available(*, unavailable, message: "Create a new CLI object: let cli = CLI(..)")
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:44:16: warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 42 |
 43 | public struct RouteError: Swift.Error {
 44 |     public let partialPath: CommandGroupPath
    |                `- warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 45 |     public let notFound: String?
 46 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:18:15: note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 16 | }
 17 |
 18 | public struct CommandGroupPath: RoutablePath {
    |               `- note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 19 |
 20 |     public let groups: [CommandGroup]
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:91:16: warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 89 |     }
 90 |
 91 |     public let command: CommandPath?
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 92 |     public let kind: Kind
 93 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:92:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 53 | public struct OptionError: Swift.Error {
 54 |
 55 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 56 |         case expectedValueAfterKey(String)
 57 |         case unrecognizedOption(String)
    :
 90 |
 91 |     public let command: CommandPath?
 92 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 93 |
 94 |     public init(command: CommandPath?, kind: Kind) {
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:124:16: warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
122 |     }
123 |
124 |     public let command: CommandPath
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
125 |     public let kind: Kind
126 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:125:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
100 | public struct ParameterError: Swift.Error {
101 |
102 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
103 |         case wrongNumber(Int, Int?)
104 |         case invalidValue(NamedParameter, InvalidValueReason)
    :
123 |
124 |     public let command: CommandPath
125 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
126 |
127 |     public init(command: CommandPath, kind: Kind) {
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:58:23: warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 56 |
 57 |     /// A stream which writes to the current process's standard output
 58 |     public static let stdout: WritableStream = WriteStream.for(fileHandle: .standardOutput)
    |                       |- warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 59 |
 60 |     /// A stream which writes to the current process's standard error
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:61:23: warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 59 |
 60 |     /// A stream which writes to the current process's standard error
 61 |     public static let stderr: WritableStream = WriteStream.for(fileHandle: .standardError)
    |                       |- warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |
 63 |     /// A stream which does nothing upon write
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:64:23: warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 62 |
 63 |     /// A stream which does nothing upon write
 64 |     public static let null: WritableStream = WriteStream.for(path: "/dev/null")!
    |                       |- warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'null' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Create a stream which writes to the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:296:23: warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
185 | // MARK: - Readable
186 |
187 | public protocol ReadableStream: AnyObject {
    |                 `- note: protocol 'ReadableStream' does not conform to the 'Sendable' protocol
188 |     var readHandle: FileHandle { get }
189 |     var processObject: Any { get }
    :
294 |     /// A stream which reads from the current process's standard input
295 |     /// - Warning: do not call readLine on this stream and also call Swift.readLine() or Input.readLine()
296 |     public static let stdin: ReadableStream = FileHandleStream(readHandle: .standardInput)
    |                       |- warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
297 |
298 |     /// Create a new FileStream for the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:361:16: warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
359 |
360 |     /// Data which was captured prior to the process failing
361 |     public let captured: CaptureResult
    |                `- warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
362 |
363 |     public var message: String? {
    :
371 | }
372 |
373 | public struct CaptureResult {
    |               `- note: consider making struct 'CaptureResult' conform to the 'Sendable' protocol
374 |
375 |     /// The full stdout data
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:407:24: warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
405 |
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
    |                        |- warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'lock' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'lock' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:408:24: warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
    |                        |- warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'hasBeenSetup' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'hasBeenSetup' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
410 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:409:24: warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
    |                        |- warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'tasks' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'tasks' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
410 |
411 |     private static func setup() {
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:12:56: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
10 | public enum Term {
11 |
12 |     public static let isTTY = isatty(fileno(Foundation.stdout)) != 0
   |                                                        `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
/usr/include/stdio.h:144:14: note: var declared here
142 | /* Standard streams.  */
143 | extern FILE *stdin;		/* Standard input stream.  */
144 | extern FILE *stdout;		/* Standard output stream.  */
    |              `- note: var declared here
145 | extern FILE *stderr;		/* Standard error output stream.  */
146 | /* C89/C99 say they're macros.  Make them happy.  */
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:14:23: warning: static property 'stdout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |     public static let isTTY = isatty(fileno(Foundation.stdout)) != 0
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
   |                       |- warning: static property 'stdout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stdout' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:15:23: warning: static property 'stderr' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
15 |     public static var stderr: WritableStream = WriteStream.stderr
   |                       |- warning: static property 'stderr' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stderr' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |     public static var stdin: ReadableStream = ReadStream.stdin
17 |     public static var read: () -> String? = { readLine() }
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:16:23: warning: static property 'stdin' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public static var stdout: WritableStream = WriteStream.stdout
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
   |                       |- warning: static property 'stdin' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stdin' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var read: () -> String? = { readLine() }
18 |
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:17:23: warning: static property 'read' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
17 |     public static var read: () -> String? = { readLine() }
   |                       |- warning: static property 'read' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'read' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | }
[4/25] Compiling SwiftCLI Error.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:44:16: warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 42 |
 43 | public struct RouteError: Swift.Error {
 44 |     public let partialPath: CommandGroupPath
    |                `- warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 45 |     public let notFound: String?
 46 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:18:15: note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 16 | }
 17 |
 18 | public struct CommandGroupPath: RoutablePath {
    |               `- note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 19 |
 20 |     public let groups: [CommandGroup]
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:91:16: warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 89 |     }
 90 |
 91 |     public let command: CommandPath?
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 92 |     public let kind: Kind
 93 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:92:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 53 | public struct OptionError: Swift.Error {
 54 |
 55 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 56 |         case expectedValueAfterKey(String)
 57 |         case unrecognizedOption(String)
    :
 90 |
 91 |     public let command: CommandPath?
 92 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 93 |
 94 |     public init(command: CommandPath?, kind: Kind) {
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:124:16: warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
122 |     }
123 |
124 |     public let command: CommandPath
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
125 |     public let kind: Kind
126 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:125:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
100 | public struct ParameterError: Swift.Error {
101 |
102 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
103 |         case wrongNumber(Int, Int?)
104 |         case invalidValue(NamedParameter, InvalidValueReason)
    :
123 |
124 |     public let command: CommandPath
125 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
126 |
127 |     public init(command: CommandPath, kind: Kind) {
[5/25] Compiling SwiftCLI HelpCommand.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:44:16: warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 42 |
 43 | public struct RouteError: Swift.Error {
 44 |     public let partialPath: CommandGroupPath
    |                `- warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 45 |     public let notFound: String?
 46 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:18:15: note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 16 | }
 17 |
 18 | public struct CommandGroupPath: RoutablePath {
    |               `- note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 19 |
 20 |     public let groups: [CommandGroup]
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:91:16: warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 89 |     }
 90 |
 91 |     public let command: CommandPath?
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 92 |     public let kind: Kind
 93 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:92:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 53 | public struct OptionError: Swift.Error {
 54 |
 55 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 56 |         case expectedValueAfterKey(String)
 57 |         case unrecognizedOption(String)
    :
 90 |
 91 |     public let command: CommandPath?
 92 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 93 |
 94 |     public init(command: CommandPath?, kind: Kind) {
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:124:16: warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
122 |     }
123 |
124 |     public let command: CommandPath
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
125 |     public let kind: Kind
126 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:125:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
100 | public struct ParameterError: Swift.Error {
101 |
102 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
103 |         case wrongNumber(Int, Int?)
104 |         case invalidValue(NamedParameter, InvalidValueReason)
    :
123 |
124 |     public let command: CommandPath
125 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
126 |
127 |     public init(command: CommandPath, kind: Kind) {
[6/25] Compiling SwiftCLI HelpMessageGenerator.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:44:16: warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 42 |
 43 | public struct RouteError: Swift.Error {
 44 |     public let partialPath: CommandGroupPath
    |                `- warning: stored property 'partialPath' of 'Sendable'-conforming struct 'RouteError' has non-sendable type 'CommandGroupPath'; this is an error in the Swift 6 language mode
 45 |     public let notFound: String?
 46 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:18:15: note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 16 | }
 17 |
 18 | public struct CommandGroupPath: RoutablePath {
    |               `- note: consider making struct 'CommandGroupPath' conform to the 'Sendable' protocol
 19 |
 20 |     public let groups: [CommandGroup]
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:91:16: warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 89 |     }
 90 |
 91 |     public let command: CommandPath?
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'CommandPath?'; this is an error in the Swift 6 language mode
 92 |     public let kind: Kind
 93 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:92:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 53 | public struct OptionError: Swift.Error {
 54 |
 55 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 56 |         case expectedValueAfterKey(String)
 57 |         case unrecognizedOption(String)
    :
 90 |
 91 |     public let command: CommandPath?
 92 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'OptionError' has non-sendable type 'OptionError.Kind'; this is an error in the Swift 6 language mode
 93 |
 94 |     public init(command: CommandPath?, kind: Kind) {
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:124:16: warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
122 |     }
123 |
124 |     public let command: CommandPath
    |                `- warning: stored property 'command' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'CommandPath'; this is an error in the Swift 6 language mode
125 |     public let kind: Kind
126 |
/host/spi-builder-workspace/Sources/SwiftCLI/Path.swift:61:15: note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 59 | }
 60 |
 61 | public struct CommandPath: RoutablePath {
    |               `- note: consider making struct 'CommandPath' conform to the 'Sendable' protocol
 62 |
 63 |     public let groupPath: CommandGroupPath
/host/spi-builder-workspace/Sources/SwiftCLI/Error.swift:125:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
100 | public struct ParameterError: Swift.Error {
101 |
102 |     public enum Kind {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
103 |         case wrongNumber(Int, Int?)
104 |         case invalidValue(NamedParameter, InvalidValueReason)
    :
123 |
124 |     public let command: CommandPath
125 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'ParameterError' has non-sendable type 'ParameterError.Kind'; this is an error in the Swift 6 language mode
126 |
127 |     public init(command: CommandPath, kind: Kind) {
[7/25] Compiling SwiftCLI ValueBox.swift
[8/25] Compiling SwiftCLI VersionCommand.swift
[9/25] Compiling SwiftCLI OptionRegistry.swift
[10/25] Compiling SwiftCLI Parameter.swift
[11/25] Compiling SwiftCLI Parser.swift
[12/25] Compiling SwiftCLI Command.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Command.swift:158:16: warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
156 |     // Fix for strange crash on Linux with Swift >= 4.2
157 |
158 |     static var stream = NoStream()
    |                |- warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'stream' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'stream' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
159 |
160 |     mutating func write(_ string: String) {
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:178:23: warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
176 |
177 |     @available(*, unavailable, message: "Create a custom HelpMessageGenerator instead")
178 |     public static var helpCommand: Command? = nil
    |                       |- warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'helpCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'helpCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:181:23: warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
181 |     public static var versionCommand: Command? = nil
    |                       |- warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'versionCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'versionCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
182 |
183 |     @available(*, unavailable, message: "Create a new CLI object: let cli = CLI(..)")
[13/25] Compiling SwiftCLI Compatibility.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Command.swift:158:16: warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
156 |     // Fix for strange crash on Linux with Swift >= 4.2
157 |
158 |     static var stream = NoStream()
    |                |- warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'stream' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'stream' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
159 |
160 |     mutating func write(_ string: String) {
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:178:23: warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
176 |
177 |     @available(*, unavailable, message: "Create a custom HelpMessageGenerator instead")
178 |     public static var helpCommand: Command? = nil
    |                       |- warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'helpCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'helpCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:181:23: warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
181 |     public static var versionCommand: Command? = nil
    |                       |- warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'versionCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'versionCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
182 |
183 |     @available(*, unavailable, message: "Create a new CLI object: let cli = CLI(..)")
[14/25] Compiling SwiftCLI CompletionGenerator.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Command.swift:158:16: warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
156 |     // Fix for strange crash on Linux with Swift >= 4.2
157 |
158 |     static var stream = NoStream()
    |                |- warning: static property 'stream' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'stream' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'stream' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
159 |
160 |     mutating func write(_ string: String) {
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:178:23: warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
176 |
177 |     @available(*, unavailable, message: "Create a custom HelpMessageGenerator instead")
178 |     public static var helpCommand: Command? = nil
    |                       |- warning: static property 'helpCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'helpCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'helpCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
/host/spi-builder-workspace/Sources/SwiftCLI/Compatibility.swift:181:23: warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
179 |
180 |     @available(*, unavailable, message: "Create the CLI object with a nil version and register a custom version command")
181 |     public static var versionCommand: Command? = nil
    |                       |- warning: static property 'versionCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'versionCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'versionCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
182 |
183 |     @available(*, unavailable, message: "Create a new CLI object: let cli = CLI(..)")
[15/25] Compiling SwiftCLI ArgumentList.swift
[16/25] Compiling SwiftCLI ArgumentListManipulator.swift
[17/25] Compiling SwiftCLI CLI.swift
[18/25] Compiling SwiftCLI Term.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:12:56: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
10 | public enum Term {
11 |
12 |     public static let isTTY = isatty(fileno(Foundation.stdout)) != 0
   |                                                        `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
/usr/include/stdio.h:144:14: note: var declared here
142 | /* Standard streams.  */
143 | extern FILE *stdin;		/* Standard input stream.  */
144 | extern FILE *stdout;		/* Standard output stream.  */
    |              `- note: var declared here
145 | extern FILE *stderr;		/* Standard error output stream.  */
146 | /* C89/C99 say they're macros.  Make them happy.  */
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:14:23: warning: static property 'stdout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |     public static let isTTY = isatty(fileno(Foundation.stdout)) != 0
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
   |                       |- warning: static property 'stdout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stdout' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:15:23: warning: static property 'stderr' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
15 |     public static var stderr: WritableStream = WriteStream.stderr
   |                       |- warning: static property 'stderr' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stderr' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |     public static var stdin: ReadableStream = ReadStream.stdin
17 |     public static var read: () -> String? = { readLine() }
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:16:23: warning: static property 'stdin' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public static var stdout: WritableStream = WriteStream.stdout
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
   |                       |- warning: static property 'stdin' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stdin' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var read: () -> String? = { readLine() }
18 |
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:17:23: warning: static property 'read' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
17 |     public static var read: () -> String? = { readLine() }
   |                       |- warning: static property 'read' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'read' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | }
[19/25] Compiling SwiftCLI Validation.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:12:56: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
10 | public enum Term {
11 |
12 |     public static let isTTY = isatty(fileno(Foundation.stdout)) != 0
   |                                                        `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
/usr/include/stdio.h:144:14: note: var declared here
142 | /* Standard streams.  */
143 | extern FILE *stdin;		/* Standard input stream.  */
144 | extern FILE *stdout;		/* Standard output stream.  */
    |              `- note: var declared here
145 | extern FILE *stderr;		/* Standard error output stream.  */
146 | /* C89/C99 say they're macros.  Make them happy.  */
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:14:23: warning: static property 'stdout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |     public static let isTTY = isatty(fileno(Foundation.stdout)) != 0
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
   |                       |- warning: static property 'stdout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stdout' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:15:23: warning: static property 'stderr' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 |
14 |     public static var stdout: WritableStream = WriteStream.stdout
15 |     public static var stderr: WritableStream = WriteStream.stderr
   |                       |- warning: static property 'stderr' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stderr' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |     public static var stdin: ReadableStream = ReadStream.stdin
17 |     public static var read: () -> String? = { readLine() }
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:16:23: warning: static property 'stdin' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public static var stdout: WritableStream = WriteStream.stdout
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
   |                       |- warning: static property 'stdin' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'stdin' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var read: () -> String? = { readLine() }
18 |
/host/spi-builder-workspace/Sources/SwiftCLI/Term.swift:17:23: warning: static property 'read' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |     public static var stderr: WritableStream = WriteStream.stderr
16 |     public static var stdin: ReadableStream = ReadStream.stdin
17 |     public static var read: () -> String? = { readLine() }
   |                       |- warning: static property 'read' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'read' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | }
[20/25] Compiling SwiftCLI Path.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:58:23: warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 56 |
 57 |     /// A stream which writes to the current process's standard output
 58 |     public static let stdout: WritableStream = WriteStream.for(fileHandle: .standardOutput)
    |                       |- warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 59 |
 60 |     /// A stream which writes to the current process's standard error
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:61:23: warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 59 |
 60 |     /// A stream which writes to the current process's standard error
 61 |     public static let stderr: WritableStream = WriteStream.for(fileHandle: .standardError)
    |                       |- warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |
 63 |     /// A stream which does nothing upon write
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:64:23: warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 62 |
 63 |     /// A stream which does nothing upon write
 64 |     public static let null: WritableStream = WriteStream.for(path: "/dev/null")!
    |                       |- warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'null' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Create a stream which writes to the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:296:23: warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
185 | // MARK: - Readable
186 |
187 | public protocol ReadableStream: AnyObject {
    |                 `- note: protocol 'ReadableStream' does not conform to the 'Sendable' protocol
188 |     var readHandle: FileHandle { get }
189 |     var processObject: Any { get }
    :
294 |     /// A stream which reads from the current process's standard input
295 |     /// - Warning: do not call readLine on this stream and also call Swift.readLine() or Input.readLine()
296 |     public static let stdin: ReadableStream = FileHandleStream(readHandle: .standardInput)
    |                       |- warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
297 |
298 |     /// Create a new FileStream for the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:431:30: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
429 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
430 |         queue.async { [weak self] in
431 |             while let line = readStream.readLine() {
    |                              `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
432 |                 each(line)
433 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:432:17: warning: capture of 'each' with non-sendable type '(String) -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
430 |         queue.async { [weak self] in
431 |             while let line = readStream.readLine() {
432 |                 each(line)
    |                 |- warning: capture of 'each' with non-sendable type '(String) -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
433 |             }
434 |             self?.semaphore.signal()
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:434:13: warning: capture of 'self' with non-sendable type 'LineStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
410 | }
411 |
412 | public class LineStream: ProcessingStream {
    |              `- note: class 'LineStream' does not conform to the 'Sendable' protocol
413 |
414 |     public let writeHandle: FileHandle
    :
432 |                 each(line)
433 |             }
434 |             self?.semaphore.signal()
    |             `- warning: capture of 'self' with non-sendable type 'LineStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
435 |         }
436 |     }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:465:31: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
463 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
464 |         queue.async { [weak self] in
465 |             while let chunk = readStream.readData() {
    |                               `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
466 |                 self?.content += chunk
467 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:466:17: warning: capture of 'self' with non-sendable type 'CaptureStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
444 | }
445 |
446 | public class CaptureStream: ProcessingStream {
    |              `- note: class 'CaptureStream' does not conform to the 'Sendable' protocol
447 |
448 |     public let processObject: Any
    :
464 |         queue.async { [weak self] in
465 |             while let chunk = readStream.readData() {
466 |                 self?.content += chunk
    |                 `- warning: capture of 'self' with non-sendable type 'CaptureStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
467 |             }
468 |             self?.semaphore.signal()
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:515:30: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
513 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
514 |         queue.async { [weak self] in
515 |             while let data = readStream.readData() {
    |                              `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
516 |                 self?.streams.forEach { $0.writeData(data) }
517 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:516:17: warning: capture of 'self' with non-sendable type 'SplitStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
495 | }
496 |
497 | public class SplitStream: ProcessingStream {
    |              `- note: class 'SplitStream' does not conform to the 'Sendable' protocol
498 |
499 |     public let writeHandle: FileHandle
    :
514 |         queue.async { [weak self] in
515 |             while let data = readStream.readData() {
516 |                 self?.streams.forEach { $0.writeData(data) }
    |                 `- warning: capture of 'self' with non-sendable type 'SplitStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
517 |             }
518 |             self?.streams.filter { $0 !== WriteStream.stdout && $0 !== WriteStream.stderr }.forEach {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:361:16: warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
359 |
360 |     /// Data which was captured prior to the process failing
361 |     public let captured: CaptureResult
    |                `- warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
362 |
363 |     public var message: String? {
    :
371 | }
372 |
373 | public struct CaptureResult {
    |               `- note: consider making struct 'CaptureResult' conform to the 'Sendable' protocol
374 |
375 |     /// The full stdout data
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:407:24: warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
405 |
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
    |                        |- warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'lock' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'lock' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:408:24: warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
    |                        |- warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'hasBeenSetup' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'hasBeenSetup' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
410 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:409:24: warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
    |                        |- warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'tasks' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'tasks' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
410 |
411 |     private static func setup() {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:55:26: warning: 'launchPath' is deprecated: renamed to 'executableURL'
 53 |         self.process = Process()
 54 |         if executable.hasPrefix("/") || executable.hasPrefix(".") {
 55 |             self.process.launchPath = executable
    |                          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                          `- note: use 'executableURL' instead
 56 |             self.process.arguments = arguments
 57 |         } else {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:58:26: warning: 'launchPath' is deprecated: renamed to 'executableURL'
 56 |             self.process.arguments = arguments
 57 |         } else {
 58 |             self.process.launchPath = "/usr/bin/env"
    |                          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                          `- note: use 'executableURL' instead
 59 |             self.process.arguments = [executable] + arguments
 60 |         }
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:62:26: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
 60 |         }
 61 |         if let directory = directory {
 62 |             self.process.currentDirectoryPath = directory
    |                          |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                          `- note: use 'currentDirectoryURL' instead
 63 |         }
 64 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:177:17: warning: 'launch()' is deprecated: renamed to 'run'
175 |
176 |         process.environment = env
177 |         process.launch()
    |                 |- warning: 'launch()' is deprecated: renamed to 'run'
    |                 `- note: use 'run' instead
178 |     }
179 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:169:34: warning: capture of 'self' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | // MARK: -
 13 |
 14 | public class Task {
    |              `- note: class 'Task' does not conform to the 'Sendable' protocol
 15 |
 16 |     private let process: Process
    :
167 |
168 |         self.process.terminationHandler = { [weak self] (process) in
169 |             guard let weakSelf = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
170 |             if weakSelf.forwardInterrupt {
171 |                 InterruptPasser.remove(weakSelf)
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:296:33: warning: result of call to 'changeCurrentDirectoryPath' is unused
294 |         if let directory = directory {
295 |             priorDir = FileManager.default.currentDirectoryPath
296 |             FileManager.default.changeCurrentDirectoryPath(directory)
    |                                 `- warning: result of call to 'changeCurrentDirectoryPath' is unused
297 |         }
298 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:322:33: warning: result of call to 'changeCurrentDirectoryPath' is unused
320 |
321 |         if let priorDir = priorDir {
322 |             FileManager.default.changeCurrentDirectoryPath(priorDir)
    |                                 `- warning: result of call to 'changeCurrentDirectoryPath' is unused
323 |         }
324 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:332:37: warning: 'launchPath' is deprecated: renamed to 'executableURL'
330 | extension Task: CustomStringConvertible {
331 |     public var description: String {
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
    |                                     |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                                     `- note: use 'executableURL' instead
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
334 |             str += " , directory: " + process.currentDirectoryPath
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:333:20: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
331 |     public var description: String {
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
    |                    |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                    `- note: use 'currentDirectoryURL' instead
334 |             str += " , directory: " + process.currentDirectoryPath
335 |         }
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:334:47: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
334 |             str += " , directory: " + process.currentDirectoryPath
    |                                               |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                                               `- note: use 'currentDirectoryURL' instead
335 |         }
336 |         str += ")"
[21/25] Compiling SwiftCLI Stream.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:58:23: warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 56 |
 57 |     /// A stream which writes to the current process's standard output
 58 |     public static let stdout: WritableStream = WriteStream.for(fileHandle: .standardOutput)
    |                       |- warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 59 |
 60 |     /// A stream which writes to the current process's standard error
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:61:23: warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 59 |
 60 |     /// A stream which writes to the current process's standard error
 61 |     public static let stderr: WritableStream = WriteStream.for(fileHandle: .standardError)
    |                       |- warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |
 63 |     /// A stream which does nothing upon write
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:64:23: warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 62 |
 63 |     /// A stream which does nothing upon write
 64 |     public static let null: WritableStream = WriteStream.for(path: "/dev/null")!
    |                       |- warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'null' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Create a stream which writes to the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:296:23: warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
185 | // MARK: - Readable
186 |
187 | public protocol ReadableStream: AnyObject {
    |                 `- note: protocol 'ReadableStream' does not conform to the 'Sendable' protocol
188 |     var readHandle: FileHandle { get }
189 |     var processObject: Any { get }
    :
294 |     /// A stream which reads from the current process's standard input
295 |     /// - Warning: do not call readLine on this stream and also call Swift.readLine() or Input.readLine()
296 |     public static let stdin: ReadableStream = FileHandleStream(readHandle: .standardInput)
    |                       |- warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
297 |
298 |     /// Create a new FileStream for the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:431:30: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
429 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
430 |         queue.async { [weak self] in
431 |             while let line = readStream.readLine() {
    |                              `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
432 |                 each(line)
433 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:432:17: warning: capture of 'each' with non-sendable type '(String) -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
430 |         queue.async { [weak self] in
431 |             while let line = readStream.readLine() {
432 |                 each(line)
    |                 |- warning: capture of 'each' with non-sendable type '(String) -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
433 |             }
434 |             self?.semaphore.signal()
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:434:13: warning: capture of 'self' with non-sendable type 'LineStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
410 | }
411 |
412 | public class LineStream: ProcessingStream {
    |              `- note: class 'LineStream' does not conform to the 'Sendable' protocol
413 |
414 |     public let writeHandle: FileHandle
    :
432 |                 each(line)
433 |             }
434 |             self?.semaphore.signal()
    |             `- warning: capture of 'self' with non-sendable type 'LineStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
435 |         }
436 |     }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:465:31: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
463 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
464 |         queue.async { [weak self] in
465 |             while let chunk = readStream.readData() {
    |                               `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
466 |                 self?.content += chunk
467 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:466:17: warning: capture of 'self' with non-sendable type 'CaptureStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
444 | }
445 |
446 | public class CaptureStream: ProcessingStream {
    |              `- note: class 'CaptureStream' does not conform to the 'Sendable' protocol
447 |
448 |     public let processObject: Any
    :
464 |         queue.async { [weak self] in
465 |             while let chunk = readStream.readData() {
466 |                 self?.content += chunk
    |                 `- warning: capture of 'self' with non-sendable type 'CaptureStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
467 |             }
468 |             self?.semaphore.signal()
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:515:30: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
513 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
514 |         queue.async { [weak self] in
515 |             while let data = readStream.readData() {
    |                              `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
516 |                 self?.streams.forEach { $0.writeData(data) }
517 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:516:17: warning: capture of 'self' with non-sendable type 'SplitStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
495 | }
496 |
497 | public class SplitStream: ProcessingStream {
    |              `- note: class 'SplitStream' does not conform to the 'Sendable' protocol
498 |
499 |     public let writeHandle: FileHandle
    :
514 |         queue.async { [weak self] in
515 |             while let data = readStream.readData() {
516 |                 self?.streams.forEach { $0.writeData(data) }
    |                 `- warning: capture of 'self' with non-sendable type 'SplitStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
517 |             }
518 |             self?.streams.filter { $0 !== WriteStream.stdout && $0 !== WriteStream.stderr }.forEach {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:361:16: warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
359 |
360 |     /// Data which was captured prior to the process failing
361 |     public let captured: CaptureResult
    |                `- warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
362 |
363 |     public var message: String? {
    :
371 | }
372 |
373 | public struct CaptureResult {
    |               `- note: consider making struct 'CaptureResult' conform to the 'Sendable' protocol
374 |
375 |     /// The full stdout data
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:407:24: warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
405 |
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
    |                        |- warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'lock' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'lock' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:408:24: warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
    |                        |- warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'hasBeenSetup' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'hasBeenSetup' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
410 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:409:24: warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
    |                        |- warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'tasks' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'tasks' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
410 |
411 |     private static func setup() {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:55:26: warning: 'launchPath' is deprecated: renamed to 'executableURL'
 53 |         self.process = Process()
 54 |         if executable.hasPrefix("/") || executable.hasPrefix(".") {
 55 |             self.process.launchPath = executable
    |                          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                          `- note: use 'executableURL' instead
 56 |             self.process.arguments = arguments
 57 |         } else {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:58:26: warning: 'launchPath' is deprecated: renamed to 'executableURL'
 56 |             self.process.arguments = arguments
 57 |         } else {
 58 |             self.process.launchPath = "/usr/bin/env"
    |                          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                          `- note: use 'executableURL' instead
 59 |             self.process.arguments = [executable] + arguments
 60 |         }
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:62:26: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
 60 |         }
 61 |         if let directory = directory {
 62 |             self.process.currentDirectoryPath = directory
    |                          |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                          `- note: use 'currentDirectoryURL' instead
 63 |         }
 64 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:177:17: warning: 'launch()' is deprecated: renamed to 'run'
175 |
176 |         process.environment = env
177 |         process.launch()
    |                 |- warning: 'launch()' is deprecated: renamed to 'run'
    |                 `- note: use 'run' instead
178 |     }
179 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:169:34: warning: capture of 'self' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | // MARK: -
 13 |
 14 | public class Task {
    |              `- note: class 'Task' does not conform to the 'Sendable' protocol
 15 |
 16 |     private let process: Process
    :
167 |
168 |         self.process.terminationHandler = { [weak self] (process) in
169 |             guard let weakSelf = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
170 |             if weakSelf.forwardInterrupt {
171 |                 InterruptPasser.remove(weakSelf)
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:296:33: warning: result of call to 'changeCurrentDirectoryPath' is unused
294 |         if let directory = directory {
295 |             priorDir = FileManager.default.currentDirectoryPath
296 |             FileManager.default.changeCurrentDirectoryPath(directory)
    |                                 `- warning: result of call to 'changeCurrentDirectoryPath' is unused
297 |         }
298 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:322:33: warning: result of call to 'changeCurrentDirectoryPath' is unused
320 |
321 |         if let priorDir = priorDir {
322 |             FileManager.default.changeCurrentDirectoryPath(priorDir)
    |                                 `- warning: result of call to 'changeCurrentDirectoryPath' is unused
323 |         }
324 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:332:37: warning: 'launchPath' is deprecated: renamed to 'executableURL'
330 | extension Task: CustomStringConvertible {
331 |     public var description: String {
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
    |                                     |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                                     `- note: use 'executableURL' instead
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
334 |             str += " , directory: " + process.currentDirectoryPath
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:333:20: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
331 |     public var description: String {
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
    |                    |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                    `- note: use 'currentDirectoryURL' instead
334 |             str += " , directory: " + process.currentDirectoryPath
335 |         }
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:334:47: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
334 |             str += " , directory: " + process.currentDirectoryPath
    |                                               |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                                               `- note: use 'currentDirectoryURL' instead
335 |         }
336 |         str += ")"
[22/25] Compiling SwiftCLI Task.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:58:23: warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 56 |
 57 |     /// A stream which writes to the current process's standard output
 58 |     public static let stdout: WritableStream = WriteStream.for(fileHandle: .standardOutput)
    |                       |- warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdout' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 59 |
 60 |     /// A stream which writes to the current process's standard error
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:61:23: warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 59 |
 60 |     /// A stream which writes to the current process's standard error
 61 |     public static let stderr: WritableStream = WriteStream.for(fileHandle: .standardError)
    |                       |- warning: static property 'stderr' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stderr' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |
 63 |     /// A stream which does nothing upon write
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:64:23: warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | // MARK: - WritableStream
 12 |
 13 | public protocol WritableStream: AnyObject {
    |                 `- note: protocol 'WritableStream' does not conform to the 'Sendable' protocol
 14 |     var writeHandle: FileHandle { get }
 15 |     var processObject: Any { get }
    :
 62 |
 63 |     /// A stream which does nothing upon write
 64 |     public static let null: WritableStream = WriteStream.for(path: "/dev/null")!
    |                       |- warning: static property 'null' is not concurrency-safe because non-'Sendable' type 'any WritableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'null' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Create a stream which writes to the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:296:23: warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
185 | // MARK: - Readable
186 |
187 | public protocol ReadableStream: AnyObject {
    |                 `- note: protocol 'ReadableStream' does not conform to the 'Sendable' protocol
188 |     var readHandle: FileHandle { get }
189 |     var processObject: Any { get }
    :
294 |     /// A stream which reads from the current process's standard input
295 |     /// - Warning: do not call readLine on this stream and also call Swift.readLine() or Input.readLine()
296 |     public static let stdin: ReadableStream = FileHandleStream(readHandle: .standardInput)
    |                       |- warning: static property 'stdin' is not concurrency-safe because non-'Sendable' type 'any ReadableStream' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'stdin' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
297 |
298 |     /// Create a new FileStream for the given path
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:431:30: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
429 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
430 |         queue.async { [weak self] in
431 |             while let line = readStream.readLine() {
    |                              `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
432 |                 each(line)
433 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:432:17: warning: capture of 'each' with non-sendable type '(String) -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
430 |         queue.async { [weak self] in
431 |             while let line = readStream.readLine() {
432 |                 each(line)
    |                 |- warning: capture of 'each' with non-sendable type '(String) -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
433 |             }
434 |             self?.semaphore.signal()
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:434:13: warning: capture of 'self' with non-sendable type 'LineStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
410 | }
411 |
412 | public class LineStream: ProcessingStream {
    |              `- note: class 'LineStream' does not conform to the 'Sendable' protocol
413 |
414 |     public let writeHandle: FileHandle
    :
432 |                 each(line)
433 |             }
434 |             self?.semaphore.signal()
    |             `- warning: capture of 'self' with non-sendable type 'LineStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
435 |         }
436 |     }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:465:31: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
463 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
464 |         queue.async { [weak self] in
465 |             while let chunk = readStream.readData() {
    |                               `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
466 |                 self?.content += chunk
467 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:466:17: warning: capture of 'self' with non-sendable type 'CaptureStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
444 | }
445 |
446 | public class CaptureStream: ProcessingStream {
    |              `- note: class 'CaptureStream' does not conform to the 'Sendable' protocol
447 |
448 |     public let processObject: Any
    :
464 |         queue.async { [weak self] in
465 |             while let chunk = readStream.readData() {
466 |                 self?.content += chunk
    |                 `- warning: capture of 'self' with non-sendable type 'CaptureStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
467 |             }
468 |             self?.semaphore.signal()
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:515:30: warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
363 |     }
364 |
365 |     public class FileHandleStream: ReadableStream {
    |                  `- note: class 'FileHandleStream' does not conform to the 'Sendable' protocol
366 |
367 |         public let readHandle: FileHandle
    :
513 |         let readStream = ReadStream.for(fileHandle: pipe.fileHandleForReading)
514 |         queue.async { [weak self] in
515 |             while let data = readStream.readData() {
    |                              `- warning: capture of 'readStream' with non-sendable type 'ReadStream.FileHandleStream' in a '@Sendable' closure; this is an error in the Swift 6 language mode
516 |                 self?.streams.forEach { $0.writeData(data) }
517 |             }
/host/spi-builder-workspace/Sources/SwiftCLI/Stream.swift:516:17: warning: capture of 'self' with non-sendable type 'SplitStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
495 | }
496 |
497 | public class SplitStream: ProcessingStream {
    |              `- note: class 'SplitStream' does not conform to the 'Sendable' protocol
498 |
499 |     public let writeHandle: FileHandle
    :
514 |         queue.async { [weak self] in
515 |             while let data = readStream.readData() {
516 |                 self?.streams.forEach { $0.writeData(data) }
    |                 `- warning: capture of 'self' with non-sendable type 'SplitStream?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
517 |             }
518 |             self?.streams.filter { $0 !== WriteStream.stdout && $0 !== WriteStream.stderr }.forEach {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:361:16: warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
359 |
360 |     /// Data which was captured prior to the process failing
361 |     public let captured: CaptureResult
    |                `- warning: stored property 'captured' of 'Sendable'-conforming struct 'CaptureError' has non-sendable type 'CaptureResult'; this is an error in the Swift 6 language mode
362 |
363 |     public var message: String? {
    :
371 | }
372 |
373 | public struct CaptureResult {
    |               `- note: consider making struct 'CaptureResult' conform to the 'Sendable' protocol
374 |
375 |     /// The full stdout data
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:407:24: warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
405 |
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
    |                        |- warning: static property 'lock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'lock' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'lock' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:408:24: warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
406 | private class InterruptPasser {
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
    |                        |- warning: static property 'hasBeenSetup' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'hasBeenSetup' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'hasBeenSetup' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
410 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:409:24: warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
407 |     private static var lock = NSLock()
408 |     private static var hasBeenSetup = false
409 |     private static var tasks: [ObjectIdentifier: Task] = [:]
    |                        |- warning: static property 'tasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'tasks' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'tasks' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
410 |
411 |     private static func setup() {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:55:26: warning: 'launchPath' is deprecated: renamed to 'executableURL'
 53 |         self.process = Process()
 54 |         if executable.hasPrefix("/") || executable.hasPrefix(".") {
 55 |             self.process.launchPath = executable
    |                          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                          `- note: use 'executableURL' instead
 56 |             self.process.arguments = arguments
 57 |         } else {
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:58:26: warning: 'launchPath' is deprecated: renamed to 'executableURL'
 56 |             self.process.arguments = arguments
 57 |         } else {
 58 |             self.process.launchPath = "/usr/bin/env"
    |                          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                          `- note: use 'executableURL' instead
 59 |             self.process.arguments = [executable] + arguments
 60 |         }
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:62:26: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
 60 |         }
 61 |         if let directory = directory {
 62 |             self.process.currentDirectoryPath = directory
    |                          |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                          `- note: use 'currentDirectoryURL' instead
 63 |         }
 64 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:177:17: warning: 'launch()' is deprecated: renamed to 'run'
175 |
176 |         process.environment = env
177 |         process.launch()
    |                 |- warning: 'launch()' is deprecated: renamed to 'run'
    |                 `- note: use 'run' instead
178 |     }
179 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:169:34: warning: capture of 'self' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | // MARK: -
 13 |
 14 | public class Task {
    |              `- note: class 'Task' does not conform to the 'Sendable' protocol
 15 |
 16 |     private let process: Process
    :
167 |
168 |         self.process.terminationHandler = { [weak self] (process) in
169 |             guard let weakSelf = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
170 |             if weakSelf.forwardInterrupt {
171 |                 InterruptPasser.remove(weakSelf)
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:296:33: warning: result of call to 'changeCurrentDirectoryPath' is unused
294 |         if let directory = directory {
295 |             priorDir = FileManager.default.currentDirectoryPath
296 |             FileManager.default.changeCurrentDirectoryPath(directory)
    |                                 `- warning: result of call to 'changeCurrentDirectoryPath' is unused
297 |         }
298 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:322:33: warning: result of call to 'changeCurrentDirectoryPath' is unused
320 |
321 |         if let priorDir = priorDir {
322 |             FileManager.default.changeCurrentDirectoryPath(priorDir)
    |                                 `- warning: result of call to 'changeCurrentDirectoryPath' is unused
323 |         }
324 |
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:332:37: warning: 'launchPath' is deprecated: renamed to 'executableURL'
330 | extension Task: CustomStringConvertible {
331 |     public var description: String {
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
    |                                     |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |                                     `- note: use 'executableURL' instead
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
334 |             str += " , directory: " + process.currentDirectoryPath
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:333:20: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
331 |     public var description: String {
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
    |                    |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                    `- note: use 'currentDirectoryURL' instead
334 |             str += " , directory: " + process.currentDirectoryPath
335 |         }
/host/spi-builder-workspace/Sources/SwiftCLI/Task.swift:334:47: warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
332 |         var str = "Task(" + process.launchPath! + " " + process.arguments!.joined(separator: " ")
333 |         if process.currentDirectoryPath != FileManager.default.currentDirectoryPath {
334 |             str += " , directory: " + process.currentDirectoryPath
    |                                               |- warning: 'currentDirectoryPath' is deprecated: renamed to 'currentDirectoryURL'
    |                                               `- note: use 'currentDirectoryURL' instead
335 |         }
336 |         str += ")"
[23/25] Compiling SwiftCLI Input.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Input.swift:147:31: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
145 |             }
146 |             Term.stdout.write(prompt)
147 |             fflush(Foundation.stdout)
    |                               `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
148 |         }
149 |     }
/usr/include/stdio.h:144:14: note: var declared here
142 | /* Standard streams.  */
143 | extern FILE *stdin;		/* Standard input stream.  */
144 | extern FILE *stdout;		/* Standard output stream.  */
    |              `- note: var declared here
145 | extern FILE *stderr;		/* Standard error output stream.  */
146 | /* C89/C99 say they're macros.  Make them happy.  */
[24/25] Compiling SwiftCLI Option.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Input.swift:147:31: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
145 |             }
146 |             Term.stdout.write(prompt)
147 |             fflush(Foundation.stdout)
    |                               `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
148 |         }
149 |     }
/usr/include/stdio.h:144:14: note: var declared here
142 | /* Standard streams.  */
143 | extern FILE *stdin;		/* Standard input stream.  */
144 | extern FILE *stdout;		/* Standard output stream.  */
    |              `- note: var declared here
145 | extern FILE *stderr;		/* Standard error output stream.  */
146 | /* C89/C99 say they're macros.  Make them happy.  */
[25/25] Compiling SwiftCLI OptionGroup.swift
/host/spi-builder-workspace/Sources/SwiftCLI/Input.swift:147:31: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
145 |             }
146 |             Term.stdout.write(prompt)
147 |             fflush(Foundation.stdout)
    |                               `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
148 |         }
149 |     }
/usr/include/stdio.h:144:14: note: var declared here
142 | /* Standard streams.  */
143 | extern FILE *stdin;		/* Standard input stream.  */
144 | extern FILE *stdout;		/* Standard output stream.  */
    |              `- note: var declared here
145 | extern FILE *stderr;		/* Standard error output stream.  */
146 | /* C89/C99 say they're macros.  Make them happy.  */
Build complete! (6.44s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftCLI",
  "name" : "SwiftCLI",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftCLI",
      "targets" : [
        "SwiftCLI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftCLITests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCLITests",
      "path" : "Tests/SwiftCLITests",
      "sources" : [
        "ArgumentListTests.swift",
        "CompletionGeneratorTests.swift",
        "Fixtures.swift",
        "HelpMessageGeneratorTests.swift",
        "InputTests.swift",
        "OptionRegistryTests.swift",
        "ParameterFillerTests.swift",
        "ParserTests.swift",
        "RouterTests.swift",
        "StreamTests.swift",
        "SwiftCLITests.swift",
        "TaskTests.swift",
        "ValidationTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "SwiftCLI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftCLI",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCLI",
      "path" : "Sources/SwiftCLI",
      "product_memberships" : [
        "SwiftCLI"
      ],
      "sources" : [
        "ArgumentList.swift",
        "ArgumentListManipulator.swift",
        "CLI.swift",
        "Command.swift",
        "Compatibility.swift",
        "CompletionGenerator.swift",
        "Error.swift",
        "HelpCommand.swift",
        "HelpMessageGenerator.swift",
        "Input.swift",
        "Option.swift",
        "OptionGroup.swift",
        "OptionRegistry.swift",
        "Parameter.swift",
        "Parser.swift",
        "Path.swift",
        "Stream.swift",
        "Task.swift",
        "Term.swift",
        "Validation.swift",
        "ValueBox.swift",
        "VersionCommand.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.