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 Spinner, reference 2.1.0 (16ac0c), with Swift 6.1 for Linux on 28 Apr 2025 00:14:01 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/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/dominicegginton/spinner.git
Reference: 2.1.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/dominicegginton/spinner
 * tag               2.1.0      -> FETCH_HEAD
HEAD is now at 16ac0c4 deps: upgrade rainbow from 3.0.0 to 4.0.0 (#47)
Cloned https://github.com/dominicegginton/spinner.git
Revision (git rev-parse @):
16ac0c404320005936579f1d6454bb88dbd8d71a
SUCCESS checkout https://github.com/dominicegginton/spinner.git at 2.1.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/dominicegginton/spinner.git
https://github.com/dominicegginton/spinner.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "nanoseconds",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/dominicegginton/Nanoseconds"
    },
    {
      "identity" : "rainbow",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.0.0",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Rainbow"
    },
    {
      "identity" : "bluesignals",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/IBM-Swift/BlueSignals.git"
    }
  ],
  "manifest_display_name" : "Spinner",
  "name" : "Spinner",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Spinner",
      "targets" : [
        "Spinner"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Spinner",
      "module_type" : "SwiftTarget",
      "name" : "Spinner",
      "path" : "Sources/Spinner",
      "product_dependencies" : [
        "Nanoseconds",
        "Rainbow",
        "Signals"
      ],
      "product_memberships" : [
        "Spinner"
      ],
      "sources" : [
        "Spinner.swift",
        "SpinnerAnimation.swift",
        "SpinnerSignal.swift",
        "SpinnerStream.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/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/IBM-Swift/BlueSignals.git
Fetching https://github.com/onevcat/Rainbow
Fetching https://github.com/dominicegginton/Nanoseconds
[1/201] Fetching nanoseconds
[202/855] Fetching nanoseconds, bluesignals
[856/2051] Fetching nanoseconds, bluesignals, rainbow
Fetched https://github.com/dominicegginton/Nanoseconds from cache (0.34s)
Fetched https://github.com/IBM-Swift/BlueSignals.git from cache (0.34s)
Fetched https://github.com/onevcat/Rainbow from cache (0.34s)
Computing version for https://github.com/dominicegginton/Nanoseconds
Computed https://github.com/dominicegginton/Nanoseconds at 1.1.3 (0.94s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 4.1.0 (2.94s)
Computing version for https://github.com/IBM-Swift/BlueSignals.git
Computed https://github.com/IBM-Swift/BlueSignals.git at 1.0.200 (0.81s)
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/IBM-Swift/BlueSignals.git
Working copy of https://github.com/IBM-Swift/BlueSignals.git resolved at 1.0.200
Creating working copy for https://github.com/dominicegginton/Nanoseconds
Working copy of https://github.com/dominicegginton/Nanoseconds resolved at 1.1.3
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-24593BA9C3E375BF.txt
[6/21] Emitting module Signals
[7/21] Compiling Rainbow StringGenerator.swift
[8/22] Compiling Rainbow String+Rainbow.swift
[9/22] Compiling Rainbow Style.swift
[10/22] Emitting module Rainbow
[11/22] Compiling Nanoseconds TimeInterval.swift
[12/22] Compiling Rainbow BackgroundColor.swift
[13/22] Compiling Rainbow CodesParser.swift
[14/22] Compiling Rainbow Rainbow.swift
[15/22] Compiling Rainbow ControlCode.swift
[16/22] Compiling Rainbow ModesExtractor.swift
[17/22] Compiling Rainbow OutputTarget.swift
[18/22] Compiling Rainbow Color.swift
[19/22] Compiling Rainbow ColorApproximation.swift
[20/22] Compiling Nanoseconds Now.swift
[21/22] Emitting module Nanoseconds
[22/24] Compiling Signals Signals.swift
[26/30] Compiling Spinner SpinnerStream.swift
[27/30] Compiling Spinner SpinnerSignal.swift
[28/30] Compiling Spinner SpinnerAnimation.swift
[29/30] Emitting module Spinner
[30/30] Compiling Spinner Spinner.swift
/host/spi-builder-workspace/Sources/Spinner/Spinner.swift:10:16: 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
  8 |     func write(string: String, terminator: String) {
  9 |         print(string, terminator: terminator)
 10 |         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
 11 |     }
 12 |
/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/Spinner/Spinner.swift:15:16: 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
 13 |     func hideCursor() {
 14 |         print("\u{001B}[?25l", terminator: "")
 15 |         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
 16 |     }
 17 |
/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/Spinner/Spinner.swift:20:16: 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
 18 |     func showCursor() {
 19 |         print("\u{001B}[?25h", terminator: "")
 20 |         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
 21 |     }
 22 | }
/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/Spinner/Spinner.swift:87:32: warning: capture of 'self' with non-sendable type 'Spinner?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 31 | }
 32 |
 33 | public final class Spinner {
    |                    `- note: class 'Spinner' does not conform to the 'Sendable' protocol
 34 |     var animation: SpinnerAnimation {
 35 |         didSet {
    :
 85 |         self.timestamp = Now()
 86 |         self.queue.async { [weak self] in
 87 |             guard let `self` = self else { return }
    |                                `- warning: capture of 'self' with non-sendable type 'Spinner?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 88 |             while self.status {
 89 |                 self.render()
Build complete! (18.04s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "nanoseconds",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/dominicegginton/Nanoseconds"
    },
    {
      "identity" : "rainbow",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.0.0",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Rainbow"
    },
    {
      "identity" : "bluesignals",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/IBM-Swift/BlueSignals.git"
    }
  ],
  "manifest_display_name" : "Spinner",
  "name" : "Spinner",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Spinner",
      "targets" : [
        "Spinner"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Spinner",
      "module_type" : "SwiftTarget",
      "name" : "Spinner",
      "path" : "Sources/Spinner",
      "product_dependencies" : [
        "Nanoseconds",
        "Rainbow",
        "Signals"
      ],
      "product_memberships" : [
        "Spinner"
      ],
      "sources" : [
        "Spinner.swift",
        "SpinnerAnimation.swift",
        "SpinnerSignal.swift",
        "SpinnerStream.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
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.