Build Information
Failed to build Motor, reference 0.1.2 (ec165d
), with Swift 6.1 for Android on 27 May 2025 18:09:29 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/flintprocessor/Motor.git
Reference: 0.1.2
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/flintprocessor/Motor
* tag 0.1.2 -> FETCH_HEAD
HEAD is now at ec165db Merge branch 'develop'
Cloned https://github.com/flintprocessor/Motor.git
Revision (git rev-parse @):
ec165db3be9046b956cc3a9b035d4134ab95998e
SUCCESS checkout https://github.com/flintprocessor/Motor.git at 0.1.2
========================================
Build
========================================
Selected platform: android
Swift version: 6.1
Building package at path: $PWD
https://github.com/flintprocessor/Motor.git
https://github.com/flintprocessor/Motor.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "ansiescapecode",
"requirement" : {
"range" : [
{
"lower_bound" : "0.1.1",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/flintbox/ANSIEscapeCode"
}
],
"manifest_display_name" : "Motor",
"name" : "Motor",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Motor",
"targets" : [
"Motor"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "motor-example",
"targets" : [
"motor-example"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "motor_example",
"module_type" : "SwiftTarget",
"name" : "motor-example",
"path" : "Sources/motor-example",
"product_memberships" : [
"motor-example"
],
"sources" : [
"main.swift"
],
"target_dependencies" : [
"Motor"
],
"type" : "executable"
},
{
"c99name" : "Motor",
"module_type" : "SwiftTarget",
"name" : "Motor",
"path" : "Sources/Motor",
"product_dependencies" : [
"ANSIEscapeCode"
],
"product_memberships" : [
"Motor",
"motor-example"
],
"sources" : [
"Animation.swift",
"Animator.swift",
"Pattern.swift",
"Patterns.swift",
"Spinner.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Fetching https://github.com/flintbox/ANSIEscapeCode
[1/49] Fetching ansiescapecode
Fetched https://github.com/flintbox/ANSIEscapeCode from cache (0.80s)
Computing version for https://github.com/flintbox/ANSIEscapeCode
Computed https://github.com/flintbox/ANSIEscapeCode at 0.1.1 (1.60s)
Creating working copy for https://github.com/flintbox/ANSIEscapeCode
Working copy of https://github.com/flintbox/ANSIEscapeCode resolved at 0.1.1
Building for debugging...
[0/9] Write sources
[3/9] Write swift-version-24593BA9C3E375BF.txt
[5/19] Emitting module ANSIEscapeCode
[6/20] Compiling ANSIEscapeCode String+ANSIEscapeCode.swift
[7/20] Compiling ANSIEscapeCode TextColor.swift
[8/20] Compiling ANSIEscapeCode Scroll.swift
[9/20] Compiling ANSIEscapeCode ANSIEscapeCode.swift
[10/20] Compiling ANSIEscapeCode BackgroundColor.swift
[11/20] Compiling ANSIEscapeCode EraseInLineType.swift
[12/20] Compiling ANSIEscapeCode PrintANSIEscapeCode.swift
[13/20] Compiling ANSIEscapeCode Cursor.swift
[14/20] Compiling ANSIEscapeCode Erase.swift
[15/20] Compiling ANSIEscapeCode EraseInDisplayType.swift
[16/21] Wrapping AST for ANSIEscapeCode for debugging
[18/27] Emitting module Motor
/host/spi-builder-workspace/Sources/Motor/Animator.swift:30:12: warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
28 |
29 | /// Spinner animator.
30 | open class Animator: Operation {
| `- warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
31 |
32 | /// Text displayed beside spinner.
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:32:23: warning: static property 'dots' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
30 |
31 | /// Dots.
32 | public static let dots = Pattern(
| |- warning: static property 'dots' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'dots' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | frames: ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"],
34 | fps: 14
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:37:23: warning: static property 'dots2' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
35 | )
36 | /// Dots 2.
37 | public static let dots2 = Pattern(
| |- warning: static property 'dots2' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'dots2' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 | frames: ["⣾", "⣽", "⣻", "⢿", "⡿", "⣟", "⣯", "⣷"],
39 | fps: 14
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:42:23: warning: static property 'dots3' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
40 | )
41 | /// Dots 3.
42 | public static let dots3 = Pattern(
| |- warning: static property 'dots3' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'dots3' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | frames: ["⠄", "⠆", "⠇", "⠋", "⠙", "⠸", "⠰", "⠠", "⠰", "⠸", "⠙", "⠋", "⠇", "⠆"],
44 | fps: 14
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:47:23: warning: static property 'bouncingBar' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
45 | )
46 | /// Bouncing bar.
47 | public static let bouncingBar = Pattern(
| |- warning: static property 'bouncingBar' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'bouncingBar' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
48 | frames: ["[ ]", "[= ]", "[== ]", "[=== ]", "[====]", "[ ===]", "[ ==]", "[ =]", "[ ]"],
49 | fps: 10
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
[19/27] Compiling Motor Pattern.swift
[20/27] Compiling Motor Patterns.swift
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:32:23: warning: static property 'dots' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
30 |
31 | /// Dots.
32 | public static let dots = Pattern(
| |- warning: static property 'dots' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'dots' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | frames: ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"],
34 | fps: 14
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:37:23: warning: static property 'dots2' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
35 | )
36 | /// Dots 2.
37 | public static let dots2 = Pattern(
| |- warning: static property 'dots2' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'dots2' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 | frames: ["⣾", "⣽", "⣻", "⢿", "⡿", "⣟", "⣯", "⣷"],
39 | fps: 14
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:42:23: warning: static property 'dots3' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
40 | )
41 | /// Dots 3.
42 | public static let dots3 = Pattern(
| |- warning: static property 'dots3' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'dots3' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | frames: ["⠄", "⠆", "⠇", "⠋", "⠙", "⠸", "⠰", "⠠", "⠰", "⠸", "⠙", "⠋", "⠇", "⠆"],
44 | fps: 14
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
/host/spi-builder-workspace/Sources/Motor/Patterns.swift:47:23: warning: static property 'bouncingBar' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
45 | )
46 | /// Bouncing bar.
47 | public static let bouncingBar = Pattern(
| |- warning: static property 'bouncingBar' is not concurrency-safe because non-'Sendable' type 'Pattern' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'bouncingBar' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
48 | frames: ["[ ]", "[= ]", "[== ]", "[=== ]", "[====]", "[ ===]", "[ ==]", "[ =]", "[ ]"],
49 | fps: 10
/host/spi-builder-workspace/Sources/Motor/Pattern.swift:29:15: note: consider making struct 'Pattern' conform to the 'Sendable' protocol
27 |
28 | /// Spinner pattern.
29 | public struct Pattern {
| `- note: consider making struct 'Pattern' conform to the 'Sendable' protocol
30 |
31 | /// Each frame
[21/27] Compiling Motor Animation.swift
[22/27] Compiling Motor Spinner.swift
[23/27] Compiling Motor Animator.swift
/host/spi-builder-workspace/Sources/Motor/Animator.swift:30:12: warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
28 |
29 | /// Spinner animator.
30 | open class Animator: Operation {
| `- warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
31 |
32 | /// Text displayed beside spinner.
/host/spi-builder-workspace/Sources/Motor/Animator.swift:54:9: error: cannot find 'sleep' in scope
52 | open override func main() {
53 | super.main()
54 | sleep(delay)
| `- error: cannot find 'sleep' in scope
55 | while !isCancelled {
56 | eraseLineAndPrintFrame()
/host/spi-builder-workspace/Sources/Motor/Animator.swift:57:13: error: cannot find 'usleep' in scope
55 | while !isCancelled {
56 | eraseLineAndPrintFrame()
57 | usleep(1000000 * 1/spinner.pattern.fps)
| `- error: cannot find 'usleep' in scope
58 | spinner.findNextFrame()
59 | }
/host/spi-builder-workspace/Sources/Motor/Animator.swift:69: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
67 | spinner.frame : spinner.frame + " " + text
68 | print(output, terminator: "")
69 | 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
70 | }
71 | }
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/stdio.h:63:23: note: var declared here
61 | #if __ANDROID_API__ >= 23
62 | extern FILE* _Nonnull stdin __INTRODUCED_IN(23);
63 | extern FILE* _Nonnull stdout __INTRODUCED_IN(23);
| `- note: var declared here
64 | extern FILE* _Nonnull stderr __INTRODUCED_IN(23);
65 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/6] Write swift-version-24593BA9C3E375BF.txt
[2/16] Compiling ANSIEscapeCode Scroll.swift
[3/16] Compiling ANSIEscapeCode EraseInLineType.swift
[4/16] Compiling ANSIEscapeCode EraseInDisplayType.swift
[5/16] Compiling ANSIEscapeCode String+ANSIEscapeCode.swift
[6/16] Compiling ANSIEscapeCode PrintANSIEscapeCode.swift
[7/17] Compiling ANSIEscapeCode Cursor.swift
[8/17] Compiling ANSIEscapeCode Erase.swift
[9/17] Emitting module ANSIEscapeCode
[10/17] Compiling ANSIEscapeCode ANSIEscapeCode.swift
[11/17] Compiling ANSIEscapeCode BackgroundColor.swift
[12/17] Compiling ANSIEscapeCode TextColor.swift
[14/23] Compiling Motor Pattern.swift
[15/23] Compiling Motor Patterns.swift
[16/23] Compiling Motor Spinner.swift
[17/23] Emitting module Motor
/host/spi-builder-workspace/Sources/Motor/Animator.swift:30:12: warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
28 |
29 | /// Spinner animator.
30 | open class Animator: Operation {
| `- warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
31 |
32 | /// Text displayed beside spinner.
[18/23] Compiling Motor Animation.swift
[19/23] Compiling Motor Animator.swift
/host/spi-builder-workspace/Sources/Motor/Animator.swift:30:12: warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
28 |
29 | /// Spinner animator.
30 | open class Animator: Operation {
| `- warning: class 'Animator' must restate inherited '@unchecked Sendable' conformance
31 |
32 | /// Text displayed beside spinner.
/host/spi-builder-workspace/Sources/Motor/Animator.swift:54:9: error: cannot find 'sleep' in scope
52 | open override func main() {
53 | super.main()
54 | sleep(delay)
| `- error: cannot find 'sleep' in scope
55 | while !isCancelled {
56 | eraseLineAndPrintFrame()
/host/spi-builder-workspace/Sources/Motor/Animator.swift:57:13: error: cannot find 'usleep' in scope
55 | while !isCancelled {
56 | eraseLineAndPrintFrame()
57 | usleep(1000000 * 1/spinner.pattern.fps)
| `- error: cannot find 'usleep' in scope
58 | spinner.findNextFrame()
59 | }
BUILD FAILURE 6.1 android