The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of Sh, reference 1.3.0 (1c3006), with Swift 6.1 for Linux on 28 Apr 2025 14:06:52 UTC.

Swift 6 data race errors: 1

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/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/danielsincere/Sh.git
Reference: 1.3.0
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/danielsincere/Sh
 * tag               1.3.0      -> FETCH_HEAD
HEAD is now at 1c30064 S3e15 (#6)
Cloned https://github.com/danielsincere/Sh.git
Revision (git rev-parse @):
1c30064de9dceac00aa3fefc70a1431e425e5f28
SUCCESS checkout https://github.com/danielsincere/Sh.git at 1.3.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/danielsincere/Sh.git
https://github.com/danielsincere/Sh.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "rainbow",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.0.0",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Rainbow"
    },
    {
      "identity" : "swift-system",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-system"
    }
  ],
  "manifest_display_name" : "Sh",
  "name" : "Sh",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "Sh",
      "targets" : [
        "Sh"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ShTests",
      "module_type" : "SwiftTarget",
      "name" : "ShTests",
      "path" : "Tests/ShTests",
      "sources" : [
        "AsyncDecodingTests.swift",
        "AsyncTests.swift",
        "LogFileTests.swift",
        "MacTests.swift",
        "ReturningAllOutputTests.swift",
        "ReturningOutputTests.swift",
        "SinkTests.swift"
      ],
      "target_dependencies" : [
        "Sh"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Sh",
      "module_type" : "SwiftTarget",
      "name" : "Sh",
      "path" : "Sources/Sh",
      "product_dependencies" : [
        "Rainbow",
        "SystemPackage"
      ],
      "product_memberships" : [
        "Sh"
      ],
      "sources" : [
        "Data/Data.asJSON.swift",
        "Data/Data.asTrimmedString.swift",
        "Data/PipeBuffer.swift",
        "Errors.swift",
        "Process/Process.init.swift",
        "Process/Process.runRedirectingAllOutput.swift",
        "Process/Process.runReturningAllOutput.swift",
        "Process/Process.runReturningData.swift",
        "Process/Process.runReturningTrimmedString.swift",
        "Process/Process.terminationError.swift",
        "Sink.swift",
        "String/String.asTrimmedLines.swift",
        "sh.swift",
        "shq.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.8"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/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
Fetching https://github.com/apple/swift-system
Fetching https://github.com/onevcat/Rainbow
[1/1196] Fetching rainbow
[1197/5549] Fetching rainbow, swift-system
Fetched https://github.com/onevcat/Rainbow from cache (1.50s)
Fetched https://github.com/apple/swift-system from cache (1.50s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 4.1.0 (3.79s)
Computing version for https://github.com/apple/swift-system
Computed https://github.com/apple/swift-system at 1.4.2 (0.50s)
Creating working copy for https://github.com/onevcat/Rainbow
Working copy of https://github.com/onevcat/Rainbow resolved at 4.1.0
Creating working copy for https://github.com/apple/swift-system
Working copy of https://github.com/apple/swift-system resolved at 1.4.2
Building for debugging...
[0/5] Write sources
[3/5] Compiling CSystem shims.c
[3/5] Write swift-version-24593BA9C3E375BF.txt
[6/44] Emitting module SystemPackage
[7/47] Compiling SystemPackage FilePathParsing.swift
[8/47] Compiling SystemPackage FilePathString.swift
[9/47] Compiling SystemPackage FilePathSyntax.swift
[10/47] Compiling SystemPackage FilePathTemp.swift
[11/47] Compiling SystemPackage Util+StringArray.swift
[12/47] Compiling SystemPackage Util.swift
[13/47] Compiling SystemPackage UtilConsumers.swift
[14/47] Compiling Rainbow String+Rainbow.swift
[15/47] Compiling Rainbow StringGenerator.swift
[16/48] Compiling SystemPackage MachPort.swift
[17/48] Compiling SystemPackage PlatformString.swift
[18/48] Compiling SystemPackage SystemString.swift
[19/48] Compiling Rainbow Style.swift
[20/48] Compiling SystemPackage Errno.swift
[21/48] Compiling SystemPackage ErrnoWindows.swift
[22/48] Compiling SystemPackage FileDescriptor.swift
[23/48] Compiling SystemPackage FileHelpers.swift
[24/48] Compiling SystemPackage Mocking.swift
[25/48] Compiling SystemPackage RawBuffer.swift
[26/48] Compiling SystemPackage Syscalls.swift
[27/48] Compiling SystemPackage WindowsSyscallAdapters.swift
[28/48] Compiling SystemPackage FilePathTempPosix.swift
[29/48] Compiling SystemPackage FilePathTempWindows.swift
[30/48] Compiling SystemPackage FilePathWindows.swift
[31/48] Compiling SystemPackage FilePermissions.swift
[32/48] Compiling SystemPackage FileOperations.swift
[33/48] Compiling SystemPackage FilePath.swift
[34/48] Compiling SystemPackage FilePathComponentView.swift
[35/48] Compiling SystemPackage FilePathComponents.swift
[36/48] Compiling SystemPackage Backcompat.swift
[37/48] Compiling SystemPackage CInterop.swift
[38/48] Compiling SystemPackage Constants.swift
[39/48] Compiling SystemPackage Exports.swift
[43/49] Compiling Rainbow OutputTarget.swift
[46/49] Emitting module Rainbow
[49/49] Compiling Rainbow Rainbow.swift
[51/64] Compiling Sh Process.runReturningAllOutput.swift
/host/spi-builder-workspace/Sources/Sh/Process/Process.runReturningAllOutput.swift:40:19: warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |       self.terminationHandler = { process in
39 |         continuation.resume(returning: AllOutput(
40 |           stdOut: stdOut.closeReturningData(),
   |                   `- warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
41 |           stdErr: stdErr.closeReturningData(),
42 |           terminationError: process.terminationError))
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:3:7: note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
/host/spi-builder-workspace/Sources/Sh/Process/Process.runReturningAllOutput.swift:41:19: warning: capture of 'stdErr' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
39 |         continuation.resume(returning: AllOutput(
40 |           stdOut: stdOut.closeReturningData(),
41 |           stdErr: stdErr.closeReturningData(),
   |                   `- warning: capture of 'stdErr' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
42 |           terminationError: process.terminationError))
43 |       }
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:3:7: note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
/host/spi-builder-workspace/Sources/Sh/Process/Process.runReturningData.swift:33:22: warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
31 |           continuation.resume(throwing: terminationError)
32 |         } else {
33 |           let data = stdOut.closeReturningData()
   |                      `- warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
34 |           continuation.resume(returning: data)
35 |         }
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:3:7: note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
[52/64] Compiling Sh Process.runReturningData.swift
/host/spi-builder-workspace/Sources/Sh/Process/Process.runReturningAllOutput.swift:40:19: warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |       self.terminationHandler = { process in
39 |         continuation.resume(returning: AllOutput(
40 |           stdOut: stdOut.closeReturningData(),
   |                   `- warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
41 |           stdErr: stdErr.closeReturningData(),
42 |           terminationError: process.terminationError))
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:3:7: note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
/host/spi-builder-workspace/Sources/Sh/Process/Process.runReturningAllOutput.swift:41:19: warning: capture of 'stdErr' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
39 |         continuation.resume(returning: AllOutput(
40 |           stdOut: stdOut.closeReturningData(),
41 |           stdErr: stdErr.closeReturningData(),
   |                   `- warning: capture of 'stdErr' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
42 |           terminationError: process.terminationError))
43 |       }
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:3:7: note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
/host/spi-builder-workspace/Sources/Sh/Process/Process.runReturningData.swift:33:22: warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
31 |           continuation.resume(throwing: terminationError)
32 |         } else {
33 |           let data = stdOut.closeReturningData()
   |                      `- warning: capture of 'stdOut' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
34 |           continuation.resume(returning: data)
35 |         }
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:3:7: note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
[53/64] Compiling Sh Data.asJSON.swift
[54/64] Compiling Sh Data.asTrimmedString.swift
[55/65] Compiling Sh Sink.swift
[56/65] Compiling Sh String.asTrimmedLines.swift
[57/65] Compiling Sh Process.init.swift
[58/65] Compiling Sh Process.runRedirectingAllOutput.swift
[59/65] Compiling Sh sh.swift
[60/65] Compiling Sh Process.runReturningTrimmedString.swift
/host/spi-builder-workspace/Sources/Sh/Process/Process.terminationError.swift:15:14: warning: stored property 'reason' of 'Sendable'-conforming struct 'TerminationError' has non-sendable type 'TerminationError.Reason'; this is an error in the Swift 6 language mode
13 | public struct TerminationError: Error, LocalizedError {
14 |   public let status: Int32
15 |   public let reason: Reason
   |              `- warning: stored property 'reason' of 'Sendable'-conforming struct 'TerminationError' has non-sendable type 'TerminationError.Reason'; this is an error in the Swift 6 language mode
16 |
17 |   public enum Reason {
   |               `- note: consider making enum 'Reason' conform to the 'Sendable' protocol
18 |     case exit, uncaughtSignal, unknownDefault
19 |   }
[61/65] Compiling Sh Process.terminationError.swift
/host/spi-builder-workspace/Sources/Sh/Process/Process.terminationError.swift:15:14: warning: stored property 'reason' of 'Sendable'-conforming struct 'TerminationError' has non-sendable type 'TerminationError.Reason'; this is an error in the Swift 6 language mode
13 | public struct TerminationError: Error, LocalizedError {
14 |   public let status: Int32
15 |   public let reason: Reason
   |              `- warning: stored property 'reason' of 'Sendable'-conforming struct 'TerminationError' has non-sendable type 'TerminationError.Reason'; this is an error in the Swift 6 language mode
16 |
17 |   public enum Reason {
   |               `- note: consider making enum 'Reason' conform to the 'Sendable' protocol
18 |     case exit, uncaughtSignal, unknownDefault
19 |   }
[62/65] Emitting module Sh
/host/spi-builder-workspace/Sources/Sh/Process/Process.terminationError.swift:15:14: warning: stored property 'reason' of 'Sendable'-conforming struct 'TerminationError' has non-sendable type 'TerminationError.Reason'; this is an error in the Swift 6 language mode
13 | public struct TerminationError: Error, LocalizedError {
14 |   public let status: Int32
15 |   public let reason: Reason
   |              `- warning: stored property 'reason' of 'Sendable'-conforming struct 'TerminationError' has non-sendable type 'TerminationError.Reason'; this is an error in the Swift 6 language mode
16 |
17 |   public enum Reason {
   |               `- note: consider making enum 'Reason' conform to the 'Sendable' protocol
18 |     case exit, uncaughtSignal, unknownDefault
19 |   }
[63/65] Compiling Sh PipeBuffer.swift
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:17:7: warning: capture of 'self' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
   :
15 |
16 |     self.pipe.fileHandleForReading.readabilityHandler = { handler in
17 |       self.semaphore.enter()
   |       `- warning: capture of 'self' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
18 |       let data = handler.availableData
19 |       self.buffer.append(contentsOf: data)
[64/65] Compiling Sh Errors.swift
/host/spi-builder-workspace/Sources/Sh/Data/PipeBuffer.swift:17:7: warning: capture of 'self' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | class PipeBuffer {
   |       `- note: class 'PipeBuffer' does not conform to the 'Sendable' protocol
 4 |   enum StreamID: String {
 5 |     case stdOut, stdErr
   :
15 |
16 |     self.pipe.fileHandleForReading.readabilityHandler = { handler in
17 |       self.semaphore.enter()
   |       `- warning: capture of 'self' with non-sendable type 'PipeBuffer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
18 |       let data = handler.availableData
19 |       self.buffer.append(contentsOf: data)
[65/65] Compiling Sh shq.swift
Build complete! (13.81s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "rainbow",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.0.0",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Rainbow"
    },
    {
      "identity" : "swift-system",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-system"
    }
  ],
  "manifest_display_name" : "Sh",
  "name" : "Sh",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "Sh",
      "targets" : [
        "Sh"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ShTests",
      "module_type" : "SwiftTarget",
      "name" : "ShTests",
      "path" : "Tests/ShTests",
      "sources" : [
        "AsyncDecodingTests.swift",
        "AsyncTests.swift",
        "LogFileTests.swift",
        "MacTests.swift",
        "ReturningAllOutputTests.swift",
        "ReturningOutputTests.swift",
        "SinkTests.swift"
      ],
      "target_dependencies" : [
        "Sh"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Sh",
      "module_type" : "SwiftTarget",
      "name" : "Sh",
      "path" : "Sources/Sh",
      "product_dependencies" : [
        "Rainbow",
        "SystemPackage"
      ],
      "product_memberships" : [
        "Sh"
      ],
      "sources" : [
        "Data/Data.asJSON.swift",
        "Data/Data.asTrimmedString.swift",
        "Data/PipeBuffer.swift",
        "Errors.swift",
        "Process/Process.init.swift",
        "Process/Process.runRedirectingAllOutput.swift",
        "Process/Process.runReturningAllOutput.swift",
        "Process/Process.runReturningData.swift",
        "Process/Process.runReturningTrimmedString.swift",
        "Process/Process.terminationError.swift",
        "Sink.swift",
        "String/String.asTrimmedLines.swift",
        "sh.swift",
        "shq.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.8"
}
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.