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 SwiftKit, reference 2.4.2 (cd4ab8), with Swift 6.0 for Linux on 2 Nov 2024 23:28:39 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/wendyliga/SwiftKit.git
Reference: 2.4.2
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/wendyliga/SwiftKit
 * tag               2.4.2      -> FETCH_HEAD
HEAD is now at cd4ab8d Fix Shell (#16)
Cloned https://github.com/wendyliga/SwiftKit.git
Revision (git rev-parse @):
cd4ab8d71b82209b774004954451517e565575bf
SUCCESS checkout https://github.com/wendyliga/SwiftKit.git at 2.4.2
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/wendyliga/SwiftKit.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/12] Compiling SwiftKit Array+Extension.swift
[4/12] Compiling SwiftKit Result+Extension.swift
[5/12] Compiling SwiftKit Log.swift
/host/spi-builder-workspace/Sources/SwiftKit/Log.swift:54:38: warning: reference to var 'stderr' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
52 |         }
53 |
54 |         fputs(prefix + value + "\n", stderr)
   |                                      `- warning: reference to var 'stderr' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
55 |     }
56 |
SwiftGlibc.stderr:1:12: note: var declared here
1 | public var stderr: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
/host/spi-builder-workspace/Sources/SwiftKit/Log.swift:68:38: 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
66 |         }
67 |
68 |         fputs(prefix + value + "\n", 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
69 |     }
70 | }
SwiftGlibc.stdout:1:12: note: var declared here
1 | public var stdout: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
[6/13] Compiling SwiftKit String+Extension.swift
[7/13] Emitting module SwiftKit
[8/13] Compiling SwiftKit Deprecated.swift
[9/13] Compiling SwiftKit Error.swift
[10/13] Compiling SwiftKit NonEmpty.swift
[11/13] Compiling SwiftKit DefaultValue.swift
[12/13] Compiling SwiftKit Traceable.swift
[13/13] Compiling SwiftKit Shell.swift
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:55:14: warning: 'launch()' is deprecated: renamed to 'run'
 53 |         task.standardError = errorPipe
 54 |
 55 |         task.launch()
    |              |- warning: 'launch()' is deprecated: renamed to 'run'
    |              `- note: use 'run' instead
 56 |
 57 |         // set observer
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:75:21: warning: capture of 'result' with non-sendable type '(Shell.ResultStream) -> Void' (aka '((output: Optional<String>, errorOuput: Optional<String>)) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |             if data.count > 0 {
 74 |                 if let output = String(data: data, encoding: String.Encoding.utf8) {
 75 |                     result((output: output.trim(), errorOuput: nil))
    |                     |- warning: capture of 'result' with non-sendable type '(Shell.ResultStream) -> Void' (aka '((output: Optional<String>, errorOuput: Optional<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'
 76 |                 }
 77 |
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:81:59: warning: capture of 'stdOutObserver' with non-sendable type '(any NSObjectProtocol)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 79 |             } else {
 80 |                 // That means we've reached the end of the input.
 81 |                 NotificationCenter.default.removeObserver(stdOutObserver!)
    |                                                           `- warning: capture of 'stdOutObserver' with non-sendable type '(any NSObjectProtocol)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 82 |             }
 83 |         }
Foundation.NSObjectProtocol:1:17: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
1 | public protocol NSObjectProtocol : AnyObject {
  |                 `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
2 |     func isEqual(_ object: Any?) -> Bool
3 |     var hash: Int { get }
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:81:59: warning: reference to captured var 'stdOutObserver' in concurrently-executing code; this is an error in the Swift 6 language mode
 79 |             } else {
 80 |                 // That means we've reached the end of the input.
 81 |                 NotificationCenter.default.removeObserver(stdOutObserver!)
    |                                                           `- warning: reference to captured var 'stdOutObserver' in concurrently-executing code; this is an error in the Swift 6 language mode
 82 |             }
 83 |         }
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:95:21: warning: capture of 'result' with non-sendable type '(Shell.ResultStream) -> Void' (aka '((output: Optional<String>, errorOuput: Optional<String>)) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 93 |             if data.count > 0 {
 94 |                 if let output = String(data: data, encoding: String.Encoding.utf8) {
 95 |                     result((output: nil, errorOuput: output.trim()))
    |                     |- warning: capture of 'result' with non-sendable type '(Shell.ResultStream) -> Void' (aka '((output: Optional<String>, errorOuput: Optional<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'
 96 |                 }
 97 |
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:101:59: warning: capture of 'stdErrObserver' with non-sendable type '(any NSObjectProtocol)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 99 |             } else {
100 |                 // That means we've reached the end of the input.
101 |                 NotificationCenter.default.removeObserver(stdErrObserver!)
    |                                                           `- warning: capture of 'stdErrObserver' with non-sendable type '(any NSObjectProtocol)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 |             }
103 |         }
Foundation.NSObjectProtocol:1:17: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
1 | public protocol NSObjectProtocol : AnyObject {
  |                 `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
2 |     func isEqual(_ object: Any?) -> Bool
3 |     var hash: Int { get }
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:101:59: warning: reference to captured var 'stdErrObserver' in concurrently-executing code; this is an error in the Swift 6 language mode
 99 |             } else {
100 |                 // That means we've reached the end of the input.
101 |                 NotificationCenter.default.removeObserver(stdErrObserver!)
    |                                                           `- warning: reference to captured var 'stdErrObserver' in concurrently-executing code; this is an error in the Swift 6 language mode
102 |             }
103 |         }
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:66:24: warning: 'stdOutObserver' mutated after capture by sendable closure
 64 |         // set listener
 65 |         var stdOutObserver: NSObjectProtocol!
 66 |         stdOutObserver = NotificationCenter.default.addObserver(
    |                        `- warning: 'stdOutObserver' mutated after capture by sendable closure
 67 |             forName: NSNotification.Name.NSFileHandleDataAvailable,
 68 |             object: stdOutReading,
/host/spi-builder-workspace/Sources/SwiftKit/Shell.swift:86:24: warning: 'stdErrObserver' mutated after capture by sendable closure
 84 |
 85 |         var stdErrObserver: NSObjectProtocol!
 86 |         stdErrObserver = NotificationCenter.default.addObserver(
    |                        `- warning: 'stdErrObserver' mutated after capture by sendable closure
 87 |             forName: NSNotification.Name.NSFileHandleDataAvailable,
 88 |             object: stdErrReading,
Build complete! (15.19s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftKit",
  "name" : "SwiftKit",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftKit",
      "targets" : [
        "SwiftKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftKitTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftKitTests",
      "path" : "Tests/SwiftKitTests",
      "sources" : [
        "Array+Tests.swift",
        "DefaultValue+Tests.swift",
        "NonEmpty+Tests.swift",
        "Result+Tests.swift",
        "String+Tests.swift",
        "Traceable+Tests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "SwiftKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftKit",
      "module_type" : "SwiftTarget",
      "name" : "SwiftKit",
      "path" : "Sources/SwiftKit",
      "product_memberships" : [
        "SwiftKit"
      ],
      "sources" : [
        "Deprecated.swift",
        "Error.swift",
        "Extensions/Array+Extension.swift",
        "Extensions/Result+Extension.swift",
        "Extensions/String+Extension.swift",
        "Log.swift",
        "PropertyWrapper/DefaultValue.swift",
        "PropertyWrapper/NonEmpty.swift",
        "PropertyWrapper/Traceable.swift",
        "Shell.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.