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

Failed to build swift-ansi-picker, reference main (4e9ce9), with Swift 6.0 for Linux on 4 Nov 2024 07:40:24 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-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/rechsteiner/swift-ansi-picker.git
Reference: main
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/rechsteiner/swift-ansi-picker
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 4e9ce93 Add library product to Package.swift
Cloned https://github.com/rechsteiner/swift-ansi-picker.git
Revision (git rev-parse @):
4e9ce930a92afe34b7c41052475dbd56a2c2745d
SUCCESS checkout https://github.com/rechsteiner/swift-ansi-picker.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/rechsteiner/swift-ansi-picker.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-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/7] Write sources
[2/7] Write swift-version-24593BA9C3E375BF.txt
[4/9] Emitting module Picker
/host/spi-builder-workspace/Sources/Picker.swift:257:13: warning: var 'originalTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
255 | }
256 |
257 | private var originalTerminal: termios?
    |             |- warning: var 'originalTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'originalTerminal' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'originalTerminal' 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
258 |
259 | private func handleSignal(signal: Int32) {
[5/9] Compiling Picker Picker.swift
/host/spi-builder-workspace/Sources/Picker.swift:257:13: warning: var 'originalTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
255 | }
256 |
257 | private var originalTerminal: termios?
    |             |- warning: var 'originalTerminal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'originalTerminal' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'originalTerminal' 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
258 |
259 | private func handleSignal(signal: Int32) {
/host/spi-builder-workspace/Sources/Picker.swift:179: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
177 |         print(escapeCode, terminator: "")
178 |         // Ensure the output is immediately flushed to the terminal.
179 |         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
180 |     }
181 |
SwiftGlibc.stdout:1:12: note: var declared here
1 | public var stdout: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
/host/spi-builder-workspace/Sources/Picker.swift:196:29: error: cannot convert value of type 'UInt' to expected argument type 'UInt32'
194 |         // Save the current termios to restore later
195 |         originalTerminal = terminal
196 |         terminal.c_lflag &= ~UInt(ECHO | ICANON)
    |                             `- error: cannot convert value of type 'UInt' to expected argument type 'UInt32'
197 |         tcsetattr(STDIN_FILENO, TCSANOW, &terminal)
198 |
/host/spi-builder-workspace/Sources/Picker.swift:196:30: error: cannot convert value of type 'UInt' to expected argument type 'UInt32'
194 |         // Save the current termios to restore later
195 |         originalTerminal = terminal
196 |         terminal.c_lflag &= ~UInt(ECHO | ICANON)
    |                              `- error: cannot convert value of type 'UInt' to expected argument type 'UInt32'
197 |         tcsetattr(STDIN_FILENO, TCSANOW, &terminal)
198 |
/host/spi-builder-workspace/Sources/Picker.swift:212: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
210 |     private func readCurrentLine() -> Int? {
211 |         // Flush any pending output to ensure the terminal is up-to-date.
212 |         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
213 |
214 |         // Request the cursor position from the terminal.
SwiftGlibc.stdout:1:12: note: var declared here
1 | public var stdout: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
/host/spi-builder-workspace/Sources/Picker.swift:216: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
214 |         // Request the cursor position from the terminal.
215 |         print("\u{1B}[6n", terminator: "")
216 |         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
217 |
218 |         // Read the response from the terminal (e.g., "\ESC[12;40R")
SwiftGlibc.stdout:1:12: note: var declared here
1 | public var stdout: UnsafeMutablePointer<FILE>!
  |            `- note: var declared here
BUILD FAILURE 6.0 linux