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 shell-kit, reference main (7a274b), with Swift 6.0 for macOS (SPM) on 1 Nov 2024 04:51:52 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/BinaryBirds/shell-kit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/BinaryBirds/shell-kit
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 7a274bd license
Cloned https://github.com/BinaryBirds/shell-kit.git
Revision (git rev-parse @):
7a274bdb965378befad26085ef52ac3cb2051c8d
SUCCESS checkout https://github.com/BinaryBirds/shell-kit.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "shell-kit",
      "name": "shell-kit",
      "url": "https://github.com/BinaryBirds/shell-kit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/shell-kit",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/BinaryBirds/shell-kit.git
[1/26] Fetching shell-kit
Fetched https://github.com/BinaryBirds/shell-kit.git from cache (0.70s)
Creating working copy for https://github.com/BinaryBirds/shell-kit.git
Working copy of https://github.com/BinaryBirds/shell-kit.git resolved at main (7a274bd)
warning: '.resolve-product-dependencies': dependency 'shell-kit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/BinaryBirds/shell-kit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/4] Compiling ShellKit Shell.swift
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:143:13: warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 54 |
 55 | // a custom shell representation object
 56 | open class Shell {
    |            `- note: class 'Shell' does not conform to the 'Sendable' protocol
 57 |
 58 |     // shell errors
    :
141 |         outputPipe.fileHandleForReading.readabilityHandler = { handler in
142 |             let data = handler.availableData
143 |             self.lockQueue.async {
    |             `- warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 |                 outputData.append(data)
145 |                 self.outputHandler?.handle(data)
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:145:17: warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 54 |
 55 | // a custom shell representation object
 56 | open class Shell {
    |            `- note: class 'Shell' does not conform to the 'Sendable' protocol
 57 |
 58 |     // shell errors
    :
143 |             self.lockQueue.async {
144 |                 outputData.append(data)
145 |                 self.outputHandler?.handle(data)
    |                 `- warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 |             }
147 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:144:17: warning: mutation of captured var 'outputData' in concurrently-executing code; this is an error in the Swift 6 language mode
142 |             let data = handler.availableData
143 |             self.lockQueue.async {
144 |                 outputData.append(data)
    |                 `- warning: mutation of captured var 'outputData' in concurrently-executing code; this is an error in the Swift 6 language mode
145 |                 self.outputHandler?.handle(data)
146 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:150:13: warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 54 |
 55 | // a custom shell representation object
 56 | open class Shell {
    |            `- note: class 'Shell' does not conform to the 'Sendable' protocol
 57 |
 58 |     // shell errors
    :
148 |         errorPipe.fileHandleForReading.readabilityHandler = { handler in
149 |             let data = handler.availableData
150 |             self.lockQueue.async {
    |             `- warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 |                 errorData.append(data)
152 |                 self.errorHandler?.handle(data)
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:152:17: warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 54 |
 55 | // a custom shell representation object
 56 | open class Shell {
    |            `- note: class 'Shell' does not conform to the 'Sendable' protocol
 57 |
 58 |     // shell errors
    :
150 |             self.lockQueue.async {
151 |                 errorData.append(data)
152 |                 self.errorHandler?.handle(data)
    |                 `- warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
153 |             }
154 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:151:17: warning: mutation of captured var 'errorData' in concurrently-executing code; this is an error in the Swift 6 language mode
149 |             let data = handler.availableData
150 |             self.lockQueue.async {
151 |                 errorData.append(data)
    |                 `- warning: mutation of captured var 'errorData' in concurrently-executing code; this is an error in the Swift 6 language mode
152 |                 self.errorHandler?.handle(data)
153 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:204:34: warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 54 |
 55 | // a custom shell representation object
 56 | open class Shell {
    |            `- note: class 'Shell' does not conform to the 'Sendable' protocol
 57 |
 58 |     // shell errors
    :
202 |         queue.async {
203 |             do {
204 |                 let output = try self.run(command)
    |                                  `- warning: capture of 'self' with non-sendable type 'Shell' in a `@Sendable` closure; this is an error in the Swift 6 language mode
205 |                 completion(output, nil)
206 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ShellKit/Shell.swift:205:17: warning: capture of 'completion' with non-sendable type '(String?, (any Error)?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
203 |             do {
204 |                 let output = try self.run(command)
205 |                 completion(output, nil)
    |                 |- warning: capture of 'completion' with non-sendable type '(String?, (any Error)?) -> Void' 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'
206 |             }
207 |             catch {
[4/4] Emitting module ShellKit
Build complete! (5.51s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "shell-kit",
  "name" : "shell-kit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ShellKit",
      "targets" : [
        "ShellKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ShellKitTests",
      "module_type" : "SwiftTarget",
      "name" : "ShellKitTests",
      "path" : "Tests/ShellKitTests",
      "sources" : [
        "ShellKitTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "ShellKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ShellKit",
      "module_type" : "SwiftTarget",
      "name" : "ShellKit",
      "path" : "Sources/ShellKit",
      "product_memberships" : [
        "ShellKit"
      ],
      "sources" : [
        "Shell.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.