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 ANSITerminal, reference master (95f7cf), with Swift 6.0 for Linux on 30 Oct 2024 17:34:47 UTC.

Swift 6 data race errors: 8

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/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/paklebah/ansiterminal.git
Reference: master
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/paklebah/ansiterminal
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 95f7cf1 Fix package property sequence.
Cloned https://github.com/paklebah/ansiterminal.git
Revision (git rev-parse @):
95f7cf132cb08d9eebd095b09214d8a375545e01
SUCCESS checkout https://github.com/paklebah/ansiterminal.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/paklebah/ansiterminal.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/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/7] Compiling ANSITerminal ansiScreen.swift
/host/spi-builder-workspace/Sources/ansiScreen.swift:1:25: warning: var 'isReplacingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  1 | public private(set) var isReplacingMode = false
    |                         |- warning: var 'isReplacingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                         |- note: convert 'isReplacingMode' to a 'let' constant to make 'Sendable' shared state immutable
    |                         |- note: annotate 'isReplacingMode' with '@MainActor' if property should only be accessed from the main actor
    |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  2 | public private(set) var isCursorVisible = true
  3 |
/host/spi-builder-workspace/Sources/ansiScreen.swift:2:25: warning: var 'isCursorVisible' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  1 | public private(set) var isReplacingMode = false
  2 | public private(set) var isCursorVisible = true
    |                         |- warning: var 'isCursorVisible' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                         |- note: convert 'isCursorVisible' to a 'let' constant to make 'Sendable' shared state immutable
    |                         |- note: annotate 'isCursorVisible' with '@MainActor' if property should only be accessed from the main actor
    |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  3 |
  4 | // Reference: https://invisible-island.net/xterm/ctlseqs/ctlseqs.html
[4/7] Compiling ANSITerminal ansiKeyboard.swift
/host/spi-builder-workspace/Sources/ANSITerminal.swift:21:27: warning: var 'isNonBlockingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 19 |
 20 | internal private(set) var defaultTerminal = termios()
 21 | public   private(set) var isNonBlockingMode = false
    |                           |- warning: var 'isNonBlockingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isNonBlockingMode' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isNonBlockingMode' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 |
 23 | @inlinable public func delay(_ ms: Int) {
[5/7] Compiling ANSITerminal ansiAttribute.swift
/host/spi-builder-workspace/Sources/ansiAttribute.swift:62:27: warning: var 'isOpenedColor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 60 | }
 61 |
 62 | internal private(set) var isOpenedColor = false
    |                           |- warning: var 'isOpenedColor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isOpenedColor' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isOpenedColor' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 63 | internal private(set) var isOpenedStyle = false
 64 |
/host/spi-builder-workspace/Sources/ansiAttribute.swift:63:27: warning: var 'isOpenedStyle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 61 |
 62 | internal private(set) var isOpenedColor = false
 63 | internal private(set) var isOpenedStyle = false
    |                           |- warning: var 'isOpenedStyle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isOpenedStyle' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isOpenedStyle' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |
 65 | public extension String {
[6/7] Emitting module ANSITerminal
/host/spi-builder-workspace/Sources/ANSITerminal.swift:20:27: warning: var 'defaultTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 | public let LPA = "\u{e0b3}"   // left pointing angle
 19 |
 20 | internal private(set) var defaultTerminal = termios()
    |                           |- warning: var 'defaultTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'defaultTerminal' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'defaultTerminal' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 | public   private(set) var isNonBlockingMode = false
 22 |
/host/spi-builder-workspace/Sources/ANSITerminal.swift:21:27: warning: var 'isNonBlockingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 19 |
 20 | internal private(set) var defaultTerminal = termios()
 21 | public   private(set) var isNonBlockingMode = false
    |                           |- warning: var 'isNonBlockingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isNonBlockingMode' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isNonBlockingMode' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 |
 23 | @inlinable public func delay(_ ms: Int) {
/host/spi-builder-workspace/Sources/ANSITerminal.swift:32:20: warning: reference to var 'stdin' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | @inlinable public func clearBuffer(isOut: Bool = true, isIn: Bool = true) {
 32 |   if isIn { fflush(stdin) }
    |                    `- warning: reference to var 'stdin' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 33 |   if isOut { fflush(stdout) }
 34 | }
SwiftGlibc.stdin:1:12: note: var declared here
1 | public var stdin: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
/host/spi-builder-workspace/Sources/ANSITerminal.swift:33:21: 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
 31 | @inlinable public func clearBuffer(isOut: Bool = true, isIn: Bool = true) {
 32 |   if isIn { fflush(stdin) }
 33 |   if isOut { 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
 34 | }
 35 |
SwiftGlibc.stdout:1:12: note: var declared here
1 | public var stdout: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
/host/spi-builder-workspace/Sources/ansiAttribute.swift:62:27: warning: var 'isOpenedColor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 60 | }
 61 |
 62 | internal private(set) var isOpenedColor = false
    |                           |- warning: var 'isOpenedColor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isOpenedColor' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isOpenedColor' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 63 | internal private(set) var isOpenedStyle = false
 64 |
/host/spi-builder-workspace/Sources/ansiAttribute.swift:63:27: warning: var 'isOpenedStyle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 61 |
 62 | internal private(set) var isOpenedColor = false
 63 | internal private(set) var isOpenedStyle = false
    |                           |- warning: var 'isOpenedStyle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isOpenedStyle' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isOpenedStyle' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |
 65 | public extension String {
/host/spi-builder-workspace/Sources/ansiScreen.swift:1:25: warning: var 'isReplacingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  1 | public private(set) var isReplacingMode = false
    |                         |- warning: var 'isReplacingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                         |- note: convert 'isReplacingMode' to a 'let' constant to make 'Sendable' shared state immutable
    |                         |- note: annotate 'isReplacingMode' with '@MainActor' if property should only be accessed from the main actor
    |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  2 | public private(set) var isCursorVisible = true
  3 |
/host/spi-builder-workspace/Sources/ansiScreen.swift:2:25: warning: var 'isCursorVisible' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  1 | public private(set) var isReplacingMode = false
  2 | public private(set) var isCursorVisible = true
    |                         |- warning: var 'isCursorVisible' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                         |- note: convert 'isCursorVisible' to a 'let' constant to make 'Sendable' shared state immutable
    |                         |- note: annotate 'isCursorVisible' with '@MainActor' if property should only be accessed from the main actor
    |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  3 |
  4 | // Reference: https://invisible-island.net/xterm/ctlseqs/ctlseqs.html
[7/7] Compiling ANSITerminal ANSITerminal.swift
/host/spi-builder-workspace/Sources/ANSITerminal.swift:20:27: warning: var 'defaultTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 | public let LPA = "\u{e0b3}"   // left pointing angle
 19 |
 20 | internal private(set) var defaultTerminal = termios()
    |                           |- warning: var 'defaultTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'defaultTerminal' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'defaultTerminal' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 | public   private(set) var isNonBlockingMode = false
 22 |
/host/spi-builder-workspace/Sources/ANSITerminal.swift:21:27: warning: var 'isNonBlockingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 19 |
 20 | internal private(set) var defaultTerminal = termios()
 21 | public   private(set) var isNonBlockingMode = false
    |                           |- warning: var 'isNonBlockingMode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: convert 'isNonBlockingMode' to a 'let' constant to make 'Sendable' shared state immutable
    |                           |- note: annotate 'isNonBlockingMode' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 |
 23 | @inlinable public func delay(_ ms: Int) {
/host/spi-builder-workspace/Sources/ANSITerminal.swift:32:20: warning: reference to var 'stdin' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | @inlinable public func clearBuffer(isOut: Bool = true, isIn: Bool = true) {
 32 |   if isIn { fflush(stdin) }
    |                    `- warning: reference to var 'stdin' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 33 |   if isOut { fflush(stdout) }
 34 | }
SwiftGlibc.stdin:1:12: note: var declared here
1 | public var stdin: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
/host/spi-builder-workspace/Sources/ANSITerminal.swift:33:21: 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
 31 | @inlinable public func clearBuffer(isOut: Bool = true, isIn: Bool = true) {
 32 |   if isIn { fflush(stdin) }
 33 |   if isOut { 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
 34 | }
 35 |
SwiftGlibc.stdout:1:12: note: var declared here
1 | public var stdout: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
Build complete! (6.39s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ANSITerminal",
  "name" : "ANSITerminal",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    }
  ],
  "products" : [
    {
      "name" : "ANSITerminal",
      "targets" : [
        "ANSITerminal"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "ANSITerminal",
      "module_type" : "SwiftTarget",
      "name" : "ANSITerminal",
      "path" : "Sources",
      "product_memberships" : [
        "ANSITerminal"
      ],
      "sources" : [
        "ANSITerminal.swift",
        "ansiAttribute.swift",
        "ansiKeyboard.swift",
        "ansiScreen.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
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.