The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Sh, reference trunk (428de9), with Swift 6.1 for Linux on 19 Jul 2026 22:10:52 UTC.

Swift 6 data race errors: 1

Build Command

bash -c docker run --pull=always --rm -v "checkouts-54344844-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/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: 333316120c8b89ed7d21f1b34865290794301d91
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/danielsincere/Sh.git
Reference: trunk
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
 * branch            trunk      -> FETCH_HEAD
 * [new branch]      trunk      -> origin/trunk
HEAD is now at 428de93 license wasn't upated when I changed my GitHub user name
Cloned https://github.com/danielsincere/Sh.git
Revision (git rev-parse @):
428de931e2bcb49ff70ca003daa739d4eef6091a
SUCCESS checkout https://github.com/danielsincere/Sh.git at trunk
========================================
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
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/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 saguaro1/spi-images
Digest: sha256:0f094b998e61bb35b7a666f42e392cfb12929ea8fa9160622b1badd8b73d5c87
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest
Fetching https://github.com/onevcat/Rainbow
Fetching https://github.com/apple/swift-system
[1/1474] Fetching rainbow
Fetched https://github.com/onevcat/Rainbow from cache (0.44s)
[1/6236] Fetching swift-system
Fetched https://github.com/apple/swift-system from cache (0.54s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 4.2.1 (1.91s)
Computing version for https://github.com/apple/swift-system
Computed https://github.com/apple/swift-system at 1.7.4 (0.44s)
Creating working copy for https://github.com/apple/swift-system
Working copy of https://github.com/apple/swift-system resolved at 1.7.4
Creating working copy for https://github.com/onevcat/Rainbow
Working copy of https://github.com/onevcat/Rainbow resolved at 4.2.1
Building for debugging...
[0/5] Write sources
[3/5] Compiling CSystem shims.c
[4/5] Write swift-version-24593BA9C3E375BF.txt
[6/57] Compiling SystemPackage FilePathSyntax.swift
[7/57] Compiling SystemPackage FileFlags.swift
[8/57] Compiling SystemPackage FilePathTempWindows.swift
[9/57] Compiling SystemPackage FilePathWindows.swift
[10/58] Emitting module SystemPackage
[12/63] Compiling SystemPackage FileMode.swift
[13/63] Compiling SystemPackage FileType.swift
[14/63] Compiling SystemPackage Identifiers.swift
[15/63] Compiling SystemPackage Stat.swift
[16/63] Compiling SystemPackage RawBuffer.swift
[17/63] Compiling SystemPackage Syscalls.swift
[18/63] Compiling SystemPackage WindowsSyscallAdapters.swift
[19/63] Compiling SystemPackage MachPort.swift
[20/63] Compiling SystemPackage PlatformString.swift
[21/63] Compiling SystemPackage FilePathTemp.swift
[22/63] Compiling SystemPackage FilePathTempPosix.swift
[25/63] Compiling SystemPackage FilePermissions.swift
[26/63] Compiling SystemPackage FilePathComponentView.swift
[27/63] Compiling SystemPackage FilePathComponents.swift
[28/63] Compiling SystemPackage FilePathParsing.swift
[29/63] Compiling SystemPackage FilePathString.swift
[31/63] Compiling SystemPackage Backcompat.swift
[32/63] Compiling SystemPackage CInterop.swift
[33/63] Compiling SystemPackage Constants.swift
[34/63] Compiling SystemPackage Exports.swift
[35/63] Compiling SystemPackage Mocking.swift
[36/63] Compiling SystemPackage IOCompletion.swift
[37/63] Compiling SystemPackage IORequest.swift
[38/63] Compiling SystemPackage IORing+Util.swift
[39/63] Compiling SystemPackage IORing.swift
[40/63] Compiling SystemPackage RawIORequest.swift
[41/63] Compiling SystemPackage Errno.swift
[42/63] Compiling SystemPackage ErrnoWindows.swift
[43/63] Compiling SystemPackage FileDescriptor.swift
[44/63] Compiling SystemPackage FileHelpers.swift
[45/63] Compiling SystemPackage FileOperations.swift
[46/63] Compiling SystemPackage FilePath.swift
[51/63] Compiling Rainbow StyledStringBuilder.swift
[54/63] Emitting module Rainbow
[59/64] Compiling SystemPackage SystemString.swift
[60/64] Compiling SystemPackage Util+StringArray.swift
[61/64] Compiling SystemPackage Util.swift
[62/64] Compiling SystemPackage UtilConsumers.swift
[63/64] Compiling SystemPackage WinSDK+Overlay.swift
[66/79] 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 |   }
[67/80] 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)
[68/80] 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)
[69/80] Compiling Sh Process.init.swift
[70/80] Compiling Sh Process.runRedirectingAllOutput.swift
[71/80] 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
[72/80] 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
[73/80] Compiling Sh Data.asJSON.swift
[74/80] Compiling Sh Data.asTrimmedString.swift
[75/80] Compiling Sh shq.swift
[76/80] Compiling Sh sh.swift
[77/80] 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 |   }
[78/80] 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 |   }
[79/80] Compiling Sh Sink.swift
[80/80] Compiling Sh String.asTrimmedLines.swift
Build complete! (11.19s)
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 saguaro1/spi-images
Digest: sha256:0f094b998e61bb35b7a666f42e392cfb12929ea8fa9160622b1badd8b73d5c87
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest
Done.