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

Failed to build CommandLineKit, reference master (513a95), with Swift 6.1 for Linux on 27 Apr 2025 09:07:53 UTC.

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 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/objecthub/swift-commandlinekit.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/objecthub/swift-commandlinekit
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 513a953 Migrate to Xcode 15. Simplify implementation of CommandLineKitDemo.
Cloned https://github.com/objecthub/swift-commandlinekit.git
Revision (git rev-parse @):
513a953b4483fd0bb686e06eabd076a8e72625da
SUCCESS checkout https://github.com/objecthub/swift-commandlinekit.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/objecthub/swift-commandlinekit.git
https://github.com/objecthub/swift-commandlinekit.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "CommandLineKit",
  "name" : "CommandLineKit",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "CommandLineKit",
      "targets" : [
        "CommandLineKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "CommandLineKitDemo",
      "targets" : [
        "CommandLineKitDemo"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "CommandLineKitTests",
      "module_type" : "SwiftTarget",
      "name" : "CommandLineKitTests",
      "path" : "Tests/CommandLineKitTests",
      "sources" : [
        "AnsiCodesTests.swift",
        "EditStateTests.swift",
        "FlagTests.swift",
        "LineReaderHistoryTests.swift"
      ],
      "target_dependencies" : [
        "CommandLineKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "CommandLineKitDemo",
      "module_type" : "SwiftTarget",
      "name" : "CommandLineKitDemo",
      "path" : "Sources/CommandLineKitDemo",
      "product_memberships" : [
        "CommandLineKitDemo"
      ],
      "sources" : [
        "LinuxMain.swift",
        "main.swift"
      ],
      "target_dependencies" : [
        "CommandLineKit"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CommandLineKit",
      "module_type" : "SwiftTarget",
      "name" : "CommandLineKit",
      "path" : "Sources/CommandLineKit",
      "product_memberships" : [
        "CommandLineKit",
        "CommandLineKitDemo"
      ],
      "sources" : [
        "AnsiCodes.swift",
        "BackgroundColor.swift",
        "Command.swift",
        "ControlCharacters.swift",
        "ConvertibleFromString.swift",
        "EditState.swift",
        "Flag.swift",
        "FlagError.swift",
        "FlagWrapper.swift",
        "Flags.swift",
        "LineReader.swift",
        "LineReaderError.swift",
        "LineReaderHistory.swift",
        "Terminal.swift",
        "TextColor.swift",
        "TextProperties.swift",
        "TextStyle.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.4"
}
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
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Sources/CommandLineKitDemo/Info.plist
Building for debugging...
[0/7] Write sources
[2/7] Write swift-version-24593BA9C3E375BF.txt
[4/23] Emitting module CommandLineKit
/host/spi-builder-workspace/Sources/CommandLineKit/FlagError.swift:53:14: warning: stored property 'kind' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'FlagError.Kind'; this is an error in the Swift 6 language mode
42 |
43 |   /// The description of the error.
44 |   public enum Kind {
   |               `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
45 |     case unknownFlag(String)
46 |     case missingValue
   :
51 |
52 |   /// The error kind.
53 |   public let kind: Kind
   |              `- warning: stored property 'kind' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'FlagError.Kind'; this is an error in the Swift 6 language mode
54 |
55 |   /// The flag to which the error belongs. If `flag` is set to nil, the error is related to
/host/spi-builder-workspace/Sources/CommandLineKit/FlagError.swift:57:14: warning: stored property 'flag' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'Flag?'; this is an error in the Swift 6 language mode
55 |   /// The flag to which the error belongs. If `flag` is set to nil, the error is related to
56 |   /// parsing the command-line as a whole.
57 |   public let flag: Flag?
   |              `- warning: stored property 'flag' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'Flag?'; this is an error in the Swift 6 language mode
58 |
59 |   /// Initializes a new flag error from an error kind and a corresponding flag.
/host/spi-builder-workspace/Sources/CommandLineKit/Flag.swift:46:14: note: class 'Flag' does not conform to the 'Sendable' protocol
 44 | /// Method `isOption` can be used to distinguish between options and arguments.
 45 | ///
 46 | public class Flag {
    |              `- note: class 'Flag' does not conform to the 'Sendable' protocol
 47 |
 48 |   /// The short name of the flag.
/host/spi-builder-workspace/Sources/CommandLineKit/TextProperties.swift:46:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TextProperties' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// a string with the `apply(to:)` function.
 40 | ///
 41 | public struct TextProperties: Hashable {
    |               `- note: consider making struct 'TextProperties' conform to the 'Sendable' protocol
 42 |   let textColor: TextColor?
 43 |   let backgroundColor: BackgroundColor?
 44 |   let textStyles: Set<TextStyle>
 45 |
 46 |   public static let none = TextProperties()
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TextProperties' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |
 48 |   public init(textColor: TextColor? = nil,
[5/25] Compiling CommandLineKit LineReaderError.swift
[6/25] Compiling CommandLineKit LineReaderHistory.swift
[7/25] Compiling CommandLineKit FlagError.swift
/host/spi-builder-workspace/Sources/CommandLineKit/FlagError.swift:53:14: warning: stored property 'kind' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'FlagError.Kind'; this is an error in the Swift 6 language mode
42 |
43 |   /// The description of the error.
44 |   public enum Kind {
   |               `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
45 |     case unknownFlag(String)
46 |     case missingValue
   :
51 |
52 |   /// The error kind.
53 |   public let kind: Kind
   |              `- warning: stored property 'kind' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'FlagError.Kind'; this is an error in the Swift 6 language mode
54 |
55 |   /// The flag to which the error belongs. If `flag` is set to nil, the error is related to
/host/spi-builder-workspace/Sources/CommandLineKit/FlagError.swift:57:14: warning: stored property 'flag' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'Flag?'; this is an error in the Swift 6 language mode
55 |   /// The flag to which the error belongs. If `flag` is set to nil, the error is related to
56 |   /// parsing the command-line as a whole.
57 |   public let flag: Flag?
   |              `- warning: stored property 'flag' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'Flag?'; this is an error in the Swift 6 language mode
58 |
59 |   /// Initializes a new flag error from an error kind and a corresponding flag.
/host/spi-builder-workspace/Sources/CommandLineKit/Flag.swift:46:14: note: class 'Flag' does not conform to the 'Sendable' protocol
 44 | /// Method `isOption` can be used to distinguish between options and arguments.
 45 | ///
 46 | public class Flag {
    |              `- note: class 'Flag' does not conform to the 'Sendable' protocol
 47 |
 48 |   /// The short name of the flag.
[8/25] Compiling CommandLineKit FlagWrapper.swift
/host/spi-builder-workspace/Sources/CommandLineKit/FlagError.swift:53:14: warning: stored property 'kind' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'FlagError.Kind'; this is an error in the Swift 6 language mode
42 |
43 |   /// The description of the error.
44 |   public enum Kind {
   |               `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
45 |     case unknownFlag(String)
46 |     case missingValue
   :
51 |
52 |   /// The error kind.
53 |   public let kind: Kind
   |              `- warning: stored property 'kind' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'FlagError.Kind'; this is an error in the Swift 6 language mode
54 |
55 |   /// The flag to which the error belongs. If `flag` is set to nil, the error is related to
/host/spi-builder-workspace/Sources/CommandLineKit/FlagError.swift:57:14: warning: stored property 'flag' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'Flag?'; this is an error in the Swift 6 language mode
55 |   /// The flag to which the error belongs. If `flag` is set to nil, the error is related to
56 |   /// parsing the command-line as a whole.
57 |   public let flag: Flag?
   |              `- warning: stored property 'flag' of 'Sendable'-conforming struct 'FlagError' has non-sendable type 'Flag?'; this is an error in the Swift 6 language mode
58 |
59 |   /// Initializes a new flag error from an error kind and a corresponding flag.
/host/spi-builder-workspace/Sources/CommandLineKit/Flag.swift:46:14: note: class 'Flag' does not conform to the 'Sendable' protocol
 44 | /// Method `isOption` can be used to distinguish between options and arguments.
 45 | ///
 46 | public class Flag {
    |              `- note: class 'Flag' does not conform to the 'Sendable' protocol
 47 |
 48 |   /// The short name of the flag.
[9/25] Compiling CommandLineKit EditState.swift
[10/25] Compiling CommandLineKit Flag.swift
[11/25] Compiling CommandLineKit Flags.swift
/host/spi-builder-workspace/Sources/CommandLineKit/LineReader.swift:197:15: 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
195 |                                  parenProperties: TextProperties) throws -> String {
196 |     var line: String = ""
197 |     if fileno(stdout) == self.outputFile {
    |               `- 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
198 |       fflush(stdout)
199 |     }
/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/CommandLineKit/LineReader.swift:198:14: 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
196 |     var line: String = ""
197 |     if fileno(stdout) == self.outputFile {
198 |       fflush(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
199 |     }
200 |     try self.withRawMode {
/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.  */
[12/25] Compiling CommandLineKit LineReader.swift
/host/spi-builder-workspace/Sources/CommandLineKit/LineReader.swift:197:15: 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
195 |                                  parenProperties: TextProperties) throws -> String {
196 |     var line: String = ""
197 |     if fileno(stdout) == self.outputFile {
    |               `- 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
198 |       fflush(stdout)
199 |     }
/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/CommandLineKit/LineReader.swift:198:14: 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
196 |     var line: String = ""
197 |     if fileno(stdout) == self.outputFile {
198 |       fflush(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
199 |     }
200 |     try self.withRawMode {
/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.  */
[13/25] Compiling CommandLineKit AnsiCodes.swift
[14/25] Compiling CommandLineKit BackgroundColor.swift
[15/25] Compiling CommandLineKit Command.swift
[16/25] Compiling CommandLineKit Terminal.swift
[17/25] Compiling CommandLineKit TextColor.swift
[18/25] Compiling CommandLineKit TextProperties.swift
/host/spi-builder-workspace/Sources/CommandLineKit/TextProperties.swift:46:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TextProperties' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// a string with the `apply(to:)` function.
 40 | ///
 41 | public struct TextProperties: Hashable {
    |               `- note: consider making struct 'TextProperties' conform to the 'Sendable' protocol
 42 |   let textColor: TextColor?
 43 |   let backgroundColor: BackgroundColor?
 44 |   let textStyles: Set<TextStyle>
 45 |
 46 |   public static let none = TextProperties()
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TextProperties' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |
 48 |   public init(textColor: TextColor? = nil,
[19/25] Compiling CommandLineKit TextStyle.swift
/host/spi-builder-workspace/Sources/CommandLineKit/TextProperties.swift:46:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TextProperties' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// a string with the `apply(to:)` function.
 40 | ///
 41 | public struct TextProperties: Hashable {
    |               `- note: consider making struct 'TextProperties' conform to the 'Sendable' protocol
 42 |   let textColor: TextColor?
 43 |   let backgroundColor: BackgroundColor?
 44 |   let textStyles: Set<TextStyle>
 45 |
 46 |   public static let none = TextProperties()
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TextProperties' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |
 48 |   public init(textColor: TextColor? = nil,
[20/25] Compiling CommandLineKit ControlCharacters.swift
[21/25] Compiling CommandLineKit ConvertibleFromString.swift
[22/26] Wrapping AST for CommandLineKit for debugging
error: emit-module command failed with exit code 1 (use -v to see invocation)
[24/29] Compiling CommandLineKitDemo main.swift
[25/29] Emitting module CommandLineKitDemo
/host/spi-builder-workspace/Sources/CommandLineKitDemo/LinuxMain.swift:35:1: error: 'main' attribute cannot be used in a module that contains top-level code
33 |
34 | #if os(Linux)
35 | @main struct CommandLineKitDemo {
   | `- error: 'main' attribute cannot be used in a module that contains top-level code
36 |   static func main() {
37 |     demo()
/host/spi-builder-workspace/Sources/CommandLineKitDemo/main.swift:1:1: note: top-level code defined in this source file
 1 | //
   | |- note: top-level code defined in this source file
   | `- note: pass '-parse-as-library' to compiler invocation if this is intentional
 2 | //  main.swift
 3 | //  CommandLineKitDemo
[26/29] Compiling CommandLineKitDemo LinuxMain.swift
/host/spi-builder-workspace/Sources/CommandLineKitDemo/LinuxMain.swift:35:1: error: 'main' attribute cannot be used in a module that contains top-level code
33 |
34 | #if os(Linux)
35 | @main struct CommandLineKitDemo {
   | `- error: 'main' attribute cannot be used in a module that contains top-level code
36 |   static func main() {
37 |     demo()
/host/spi-builder-workspace/Sources/CommandLineKitDemo/main.swift:1:1: note: top-level code defined in this source file
 1 | //
   | |- note: top-level code defined in this source file
   | `- note: pass '-parse-as-library' to compiler invocation if this is intentional
 2 | //  main.swift
 3 | //  CommandLineKitDemo
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 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
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Sources/CommandLineKitDemo/Info.plist
[0/1] Planning build
Building for debugging...
[0/5] Write swift-version-24593BA9C3E375BF.txt
[2/21] Emitting module CommandLineKit
[3/23] Compiling CommandLineKit Terminal.swift
[4/23] Compiling CommandLineKit TextColor.swift
[5/23] Compiling CommandLineKit TextProperties.swift
[6/23] Compiling CommandLineKit TextStyle.swift
[7/23] Compiling CommandLineKit FlagError.swift
[8/23] Compiling CommandLineKit FlagWrapper.swift
[9/23] Compiling CommandLineKit LineReaderError.swift
[10/23] Compiling CommandLineKit LineReaderHistory.swift
[11/23] Compiling CommandLineKit AnsiCodes.swift
[12/23] Compiling CommandLineKit BackgroundColor.swift
[13/23] Compiling CommandLineKit Command.swift
[14/23] Compiling CommandLineKit ControlCharacters.swift
[15/23] Compiling CommandLineKit ConvertibleFromString.swift
[16/23] Compiling CommandLineKit Flags.swift
[17/23] Compiling CommandLineKit LineReader.swift
[18/23] Compiling CommandLineKit EditState.swift
[19/23] Compiling CommandLineKit Flag.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[21/26] Compiling CommandLineKitDemo main.swift
[22/26] Emitting module CommandLineKitDemo
/host/spi-builder-workspace/Sources/CommandLineKitDemo/LinuxMain.swift:35:1: error: 'main' attribute cannot be used in a module that contains top-level code
33 |
34 | #if os(Linux)
35 | @main struct CommandLineKitDemo {
   | `- error: 'main' attribute cannot be used in a module that contains top-level code
36 |   static func main() {
37 |     demo()
/host/spi-builder-workspace/Sources/CommandLineKitDemo/main.swift:1:1: note: top-level code defined in this source file
 1 | //
   | |- note: top-level code defined in this source file
   | `- note: pass '-parse-as-library' to compiler invocation if this is intentional
 2 | //  main.swift
 3 | //  CommandLineKitDemo
[23/26] Compiling CommandLineKitDemo LinuxMain.swift
/host/spi-builder-workspace/Sources/CommandLineKitDemo/LinuxMain.swift:35:1: error: 'main' attribute cannot be used in a module that contains top-level code
33 |
34 | #if os(Linux)
35 | @main struct CommandLineKitDemo {
   | `- error: 'main' attribute cannot be used in a module that contains top-level code
36 |   static func main() {
37 |     demo()
/host/spi-builder-workspace/Sources/CommandLineKitDemo/main.swift:1:1: note: top-level code defined in this source file
 1 | //
   | |- note: top-level code defined in this source file
   | `- note: pass '-parse-as-library' to compiler invocation if this is intentional
 2 | //  main.swift
 3 | //  CommandLineKitDemo
BUILD FAILURE 6.1 linux