Build Information
Successful build of HiveEngine, reference 3.1.4 (0fa54c
), with Swift 6.0 for Linux on 1 Nov 2024 14:32:34 UTC.
Swift 6 data race errors: 7
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/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/autoreleasefool/hive-engine.git
Reference: 3.1.4
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/autoreleasefool/hive-engine
* tag 3.1.4 -> FETCH_HEAD
HEAD is now at 0fa54ca Move testing utilities into target
Cloned https://github.com/autoreleasefool/hive-engine.git
Revision (git rev-parse @):
0fa54ca24d7881d661119d97fe0867bd3bf72ff6
SUCCESS checkout https://github.com/autoreleasefool/hive-engine.git at 3.1.4
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $PWD
https://github.com/autoreleasefool/hive-engine.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/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
Fetching https://github.com/sharplet/Regex.git
[1/1254] Fetching regex
Fetched https://github.com/sharplet/Regex.git from cache (0.66s)
Computing version for https://github.com/sharplet/Regex.git
Computed https://github.com/sharplet/Regex.git at 2.1.1 (2.18s)
Creating working copy for https://github.com/sharplet/Regex.git
Working copy of https://github.com/sharplet/Regex.git resolved at 2.1.1
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/11] Compiling Regex ThreadLocal.swift
[6/11] Compiling Regex String+ReplaceMatching.swift
[7/11] Compiling Regex Regex.swift
[8/11] Compiling Regex Options.swift
[9/11] Compiling Regex MatchResult.swift
[10/11] Emitting module Regex
[11/11] Compiling Regex Foundation+Ranges.swift
[13/41] Compiling HiveEngine PlayCommand.swift
[14/41] Compiling HiveEngine UHPCommand.swift
[15/41] Compiling HiveEngine UHPResult.swift
[16/41] Compiling HiveEngine UndoCommand.swift
[17/41] Compiling HiveEngine ValidMovesCommand.swift
[18/41] Compiling HiveEngine Engine.swift
[19/41] Compiling HiveEngine GameStateString.swift
[20/41] Compiling HiveEngine GameString.swift
[21/44] Compiling HiveEngine BestMoveCommand.swift
[22/44] Compiling HiveEngine InfoCommand.swift
[23/44] Compiling HiveEngine NewGameCommand.swift
[24/44] Compiling HiveEngine OptionsCommand.swift
[25/44] Compiling HiveEngine GameTypeString.swift
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:24:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| `- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | public init?(from: String) {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct TurnString: Equatable, CustomStringConvertible {
:
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| |- note: annotate 'regex' 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
25 |
26 | public init?(from: String) {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:26:21: warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
24 |
25 | internal struct FatalErrorUtil {
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
| |- warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultFatalErrorClosure' 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
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:28:13: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fatalErrorClosure' 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
29 |
30 | static func replaceFatalError(closure: @escaping (String, StaticString, UInt) -> Never) {
[26/44] Compiling HiveEngine MoveString.swift
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:24:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| `- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | public init?(from: String) {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct TurnString: Equatable, CustomStringConvertible {
:
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| |- note: annotate 'regex' 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
25 |
26 | public init?(from: String) {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:26:21: warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
24 |
25 | internal struct FatalErrorUtil {
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
| |- warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultFatalErrorClosure' 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
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:28:13: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fatalErrorClosure' 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
29 |
30 | static func replaceFatalError(closure: @escaping (String, StaticString, UInt) -> Never) {
[27/44] Compiling HiveEngine TurnString.swift
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:24:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| `- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | public init?(from: String) {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct TurnString: Equatable, CustomStringConvertible {
:
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| |- note: annotate 'regex' 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
25 |
26 | public init?(from: String) {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:26:21: warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
24 |
25 | internal struct FatalErrorUtil {
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
| |- warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultFatalErrorClosure' 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
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:28:13: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fatalErrorClosure' 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
29 |
30 | static func replaceFatalError(closure: @escaping (String, StaticString, UInt) -> Never) {
[28/44] Compiling HiveEngine FatalError.swift
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:24:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| `- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | public init?(from: String) {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct TurnString: Equatable, CustomStringConvertible {
:
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| |- note: annotate 'regex' 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
25 |
26 | public init?(from: String) {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:26:21: warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
24 |
25 | internal struct FatalErrorUtil {
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
| |- warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultFatalErrorClosure' 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
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:28:13: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fatalErrorClosure' 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
29 |
30 | static func replaceFatalError(closure: @escaping (String, StaticString, UInt) -> Never) {
[29/44] Compiling HiveEngine Unit+Hopper.swift
[30/44] Compiling HiveEngine Unit+LadyBug.swift
[31/44] Compiling HiveEngine Unit+Mosquito.swift
[32/44] Compiling HiveEngine Unit+PillBug.swift
[33/44] Compiling HiveEngine Position.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:23:21: warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| `- warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct RelativeMovement {
:
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| |- note: annotate 'unitRegex' 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
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:24:21: warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
| |- warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'directionRegex' 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
25 | private static let regex: Regex = {
26 | // swiftlint:disable:next force_try
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:25:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
| |- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'regex' 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
26 | // swiftlint:disable:next force_try
27 | try! Regex(
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
[34/44] Compiling HiveEngine RelativeMovement.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:23:21: warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| `- warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct RelativeMovement {
:
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| |- note: annotate 'unitRegex' 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
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:24:21: warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
| |- warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'directionRegex' 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
25 | private static let regex: Regex = {
26 | // swiftlint:disable:next force_try
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:25:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
| |- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'regex' 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
26 | // swiftlint:disable:next force_try
27 | try! Regex(
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
[35/44] Compiling HiveEngine Unit+Ant.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:23:21: warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| `- warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct RelativeMovement {
:
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| |- note: annotate 'unitRegex' 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
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:24:21: warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
| |- warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'directionRegex' 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
25 | private static let regex: Regex = {
26 | // swiftlint:disable:next force_try
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:25:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
| |- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'regex' 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
26 | // swiftlint:disable:next force_try
27 | try! Regex(
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
[36/44] Compiling HiveEngine Unit+Beetle.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:23:21: warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| `- warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct RelativeMovement {
:
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| |- note: annotate 'unitRegex' 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
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:24:21: warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
| |- warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'directionRegex' 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
25 | private static let regex: Regex = {
26 | // swiftlint:disable:next force_try
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:25:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
| |- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'regex' 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
26 | // swiftlint:disable:next force_try
27 | try! Regex(
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
[37/44] Emitting module HiveEngine
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:24:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| `- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | public init?(from: String) {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/Engine/Util/TurnString.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct TurnString: Equatable, CustomStringConvertible {
:
22 | }
23 |
24 | private static let regex = Regex(#"^(Black|White)\[(\d+)\]$"#)
| |- note: annotate 'regex' 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
25 |
26 | public init?(from: String) {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:26:21: warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
24 |
25 | internal struct FatalErrorUtil {
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
| |- warning: static property 'defaultFatalErrorClosure' is not concurrency-safe because non-'Sendable' type '(String, StaticString, UInt) -> Never' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultFatalErrorClosure' 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
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
/host/spi-builder-workspace/Sources/HiveEngine/Extensions/FatalError.swift:28:13: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
26 | private static let defaultFatalErrorClosure = { Swift.fatalError($0, file: $1, line: $2) }
27 |
28 | static var fatalErrorClosure: (String, StaticString, UInt) -> Never = defaultFatalErrorClosure
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fatalErrorClosure' 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
29 |
30 | static func replaceFatalError(closure: @escaping (String, StaticString, UInt) -> Never) {
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:23:21: warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| `- warning: static property 'unitRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
7 | //
8 |
9 | import Regex
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Regex'
10 |
11 | public struct RelativeMovement {
:
21 | }
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
| |- note: annotate 'unitRegex' 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
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:24:21: warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
22 |
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
| |- warning: static property 'directionRegex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'directionRegex' 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
25 | private static let regex: Regex = {
26 | // swiftlint:disable:next force_try
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
/host/spi-builder-workspace/Sources/HiveEngine/State/RelativeMovement.swift:25:21: warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
23 | private static let unitRegex = Regex("[wb]([AG][1-3]|[BS][1-2]|[LMPQ]1?)")
24 | private static let directionRegex = Regex(#"[-\\/]"#)
25 | private static let regex: Regex = {
| |- warning: static property 'regex' is not concurrency-safe because non-'Sendable' type 'Regex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'regex' 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
26 | // swiftlint:disable:next force_try
27 | try! Regex(
/host/spi-builder-workspace/.build/checkouts/Regex/Source/Regex/Regex.swift:3:15: note: struct 'Regex' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Regex: CustomStringConvertible, CustomDebugStringConvertible {
| `- note: struct 'Regex' does not conform to the 'Sendable' protocol
4 | // MARK: Initialisation
5 |
[38/44] Compiling HiveEngine Unit+Queen.swift
[39/44] Compiling HiveEngine Unit+Spider.swift
[40/44] Compiling HiveEngine Unit.swift
[41/44] Compiling HiveEngine GameState+UHP.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
[42/44] Compiling HiveEngine GameState.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
[43/44] Compiling HiveEngine Movement.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
[44/44] Compiling HiveEngine Player.swift
/host/spi-builder-workspace/Sources/HiveEngine/State/Position.swift:42:20: warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
28 | //
29 |
30 | public struct Position: Hashable, Equatable, Codable {
| `- note: consider making struct 'Position' conform to the 'Sendable' protocol
31 | public let x: Int
32 | public let y: Int
:
40 |
41 | /// Origin position
42 | public static let origin = Position(x: 0, y: 0, z: 0)
| |- warning: static property 'origin' is not concurrency-safe because non-'Sendable' type 'Position' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'origin' 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
43 |
44 | /// All adjacent positions
[46/55] Compiling HiveEngineTestUtilities GameStateProvider+Spider.swift
[47/55] Compiling HiveEngineTestUtilities GameStateProvider+Queen.swift
[48/56] Compiling HiveEngineTestUtilities GameStateProvider+PillBug.swift
[49/56] Compiling HiveEngineTestUtilities GameStateProvider+Mosquito.swift
[50/56] Compiling HiveEngineTestUtilities GameStateProvider+Hopper.swift
[51/56] Compiling HiveEngineTestUtilities GameStateProvider+LadyBug.swift
[52/56] Compiling HiveEngineTestUtilities GameStateProvider+Ant.swift
[53/56] Compiling HiveEngineTestUtilities GameStateProvider+Beetle.swift
[54/56] Emitting module HiveEngineTestUtilities
[55/56] Compiling HiveEngineTestUtilities GameStateProvider.swift
[56/56] Compiling HiveEngineTestUtilities HiveEngineTestCase.swift
/host/spi-builder-workspace/Sources/HiveEngineTestUtilities/HiveEngineTestCase.swift:122:60: warning: passing non-sendable parameter 'testcase' to function expecting a @Sendable closure
110 | }
111 |
112 | public func XCTAssertFatalError(expectedMessage: String, testcase: @escaping () -> Void) {
| `- note: parameter 'testcase' is implicitly non-sendable
113 | let expectation = self.expectation(description: "expectingFatalError")
114 | var assertionMessage: String?
:
120 | }
121 |
122 | DispatchQueue.global(qos: .userInitiated).async(execute: testcase)
| `- warning: passing non-sendable parameter 'testcase' to function expecting a @Sendable closure
123 |
124 | waitForExpectations(timeout: 2) { _ in
/host/spi-builder-workspace/Sources/HiveEngineTestUtilities/HiveEngineTestCase.swift:124:3: warning: call to main actor-isolated instance method 'waitForExpectations(timeout:file:line:handler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public func XCTAssertFatalError(expectedMessage: String, testcase: @escaping () -> Void) {
| `- note: add '@MainActor' to make instance method 'XCTAssertFatalError(expectedMessage:testcase:)' part of global actor 'MainActor'
113 | let expectation = self.expectation(description: "expectingFatalError")
114 | var assertionMessage: String?
:
122 | DispatchQueue.global(qos: .userInitiated).async(execute: testcase)
123 |
124 | waitForExpectations(timeout: 2) { _ in
| `- warning: call to main actor-isolated instance method 'waitForExpectations(timeout:file:line:handler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
125 | XCTAssertEqual(assertionMessage, expectedMessage)
126 | FatalErrorUtil.restoreFatalError()
XCTest.XCTestCase:2:44: note: calls to instance method 'waitForExpectations(timeout:file:line:handler:)' from outside of its actor context are implicitly asynchronous
1 | extension XCTestCase {
2 | @MainActor @preconcurrency public func waitForExpectations(timeout: TimeInterval, file: StaticString = #file, line: Int = #line, handler: XCWaitCompletionHandler? = nil)
| `- note: calls to instance method 'waitForExpectations(timeout:file:line:handler:)' from outside of its actor context are implicitly asynchronous
3 | @available(*, noasync, message: "Use await fulfillment(of:timeout:enforceOrder:) instead.")
4 | public func wait(for expectations: [XCTestExpectation], timeout: TimeInterval, enforceOrder: Bool = false, file: StaticString = #file, line: Int = #line)
/host/spi-builder-workspace/Sources/HiveEngineTestUtilities/HiveEngineTestCase.swift:124:3: warning: sending task-isolated value of type '((any Error)?) -> ()' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
122 | DispatchQueue.global(qos: .userInitiated).async(execute: testcase)
123 |
124 | waitForExpectations(timeout: 2) { _ in
| `- warning: sending task-isolated value of type '((any Error)?) -> ()' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
125 | XCTAssertEqual(assertionMessage, expectedMessage)
126 | FatalErrorUtil.restoreFatalError()
/host/spi-builder-workspace/Sources/HiveEngineTestUtilities/HiveEngineTestCase.swift:124:3: warning: sending task-isolated value of type 'HiveEngineTestCase' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
122 | DispatchQueue.global(qos: .userInitiated).async(execute: testcase)
123 |
124 | waitForExpectations(timeout: 2) { _ in
| `- warning: sending task-isolated value of type 'HiveEngineTestCase' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
125 | XCTAssertEqual(assertionMessage, expectedMessage)
126 | FatalErrorUtil.restoreFatalError()
Build complete! (23.79s)
Build complete.
{
"dependencies" : [
{
"identity" : "regex",
"requirement" : {
"range" : [
{
"lower_bound" : "2.1.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/sharplet/Regex.git"
}
],
"manifest_display_name" : "HiveEngine",
"name" : "HiveEngine",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "ios",
"version" : "13.4"
}
],
"products" : [
{
"name" : "HiveEngine",
"targets" : [
"HiveEngine"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "HiveEngineTestUtilities",
"targets" : [
"HiveEngineTestUtilities"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "HiveEngineTests",
"module_type" : "SwiftTarget",
"name" : "HiveEngineTests",
"path" : "Tests/HiveEngineTests",
"sources" : [
"Engine/Commands/BestMoveCommandTests.swift",
"Engine/Commands/InfoCommandTests.swift",
"Engine/Commands/NewGameCommandTests.swift",
"Engine/Commands/OptionsCommandTests.swift",
"Engine/Commands/PlayCommandTests.swift",
"Engine/Commands/UHPCommandParserTests.swift",
"Engine/Commands/UndoCommandTests.swift",
"Engine/Commands/ValidMovesCommandTests.swift",
"Engine/EngineTests.swift",
"Engine/Util/GameStringTests.swift",
"Engine/Util/TurnStringTests.swift",
"State/GameState+UHPTests.swift",
"State/GameStateTests.swift",
"State/MovementTests.swift",
"State/PlayerTests.swift",
"State/PositionTests.swift",
"State/RelativeMovementTests.swift",
"Unit/Unit+AntTests.swift",
"Unit/Unit+BeetleTests.swift",
"Unit/Unit+HopperTests.swift",
"Unit/Unit+LadyBugTests.swift",
"Unit/Unit+MosquitoTests.swift",
"Unit/Unit+PillBugTests.swift",
"Unit/Unit+QueenTests.swift",
"Unit/Unit+SpiderTests.swift",
"Unit/UnitTests.swift",
"Validation/PerftTests.swift"
],
"target_dependencies" : [
"HiveEngine",
"HiveEngineTestUtilities"
],
"type" : "test"
},
{
"c99name" : "HiveEngineTestUtilities",
"module_type" : "SwiftTarget",
"name" : "HiveEngineTestUtilities",
"path" : "Sources/HiveEngineTestUtilities",
"product_memberships" : [
"HiveEngineTestUtilities"
],
"sources" : [
"GameStateProvider/GameStateProvider+Ant.swift",
"GameStateProvider/GameStateProvider+Beetle.swift",
"GameStateProvider/GameStateProvider+Hopper.swift",
"GameStateProvider/GameStateProvider+LadyBug.swift",
"GameStateProvider/GameStateProvider+Mosquito.swift",
"GameStateProvider/GameStateProvider+PillBug.swift",
"GameStateProvider/GameStateProvider+Queen.swift",
"GameStateProvider/GameStateProvider+Spider.swift",
"GameStateProvider/GameStateProvider.swift",
"HiveEngineTestCase.swift"
],
"target_dependencies" : [
"HiveEngine"
],
"type" : "library"
},
{
"c99name" : "HiveEngineBenchmarkTests",
"module_type" : "SwiftTarget",
"name" : "HiveEngineBenchmarkTests",
"path" : "Tests/HiveEngineBenchmarkTests",
"sources" : [
"State/GameStateBenchmarkTests.swift",
"State/PositionBenchmarkTests.swift",
"Unit/BeetleBenchmarkTests.swift"
],
"target_dependencies" : [
"HiveEngine",
"HiveEngineTestUtilities"
],
"type" : "test"
},
{
"c99name" : "HiveEngine",
"module_type" : "SwiftTarget",
"name" : "HiveEngine",
"path" : "Sources/HiveEngine",
"product_dependencies" : [
"Regex"
],
"product_memberships" : [
"HiveEngine",
"HiveEngineTestUtilities"
],
"sources" : [
"Engine/Commands/BestMoveCommand.swift",
"Engine/Commands/InfoCommand.swift",
"Engine/Commands/NewGameCommand.swift",
"Engine/Commands/OptionsCommand.swift",
"Engine/Commands/PlayCommand.swift",
"Engine/Commands/UHPCommand.swift",
"Engine/Commands/UHPResult.swift",
"Engine/Commands/UndoCommand.swift",
"Engine/Commands/ValidMovesCommand.swift",
"Engine/Engine.swift",
"Engine/Util/GameStateString.swift",
"Engine/Util/GameString.swift",
"Engine/Util/GameTypeString.swift",
"Engine/Util/MoveString.swift",
"Engine/Util/TurnString.swift",
"Extensions/FatalError.swift",
"State/GameState+UHP.swift",
"State/GameState.swift",
"State/Movement.swift",
"State/Player.swift",
"State/Position.swift",
"State/RelativeMovement.swift",
"Unit/Unit+Ant.swift",
"Unit/Unit+Beetle.swift",
"Unit/Unit+Hopper.swift",
"Unit/Unit+LadyBug.swift",
"Unit/Unit+Mosquito.swift",
"Unit/Unit+PillBug.swift",
"Unit/Unit+Queen.swift",
"Unit/Unit+Spider.swift",
"Unit/Unit.swift"
],
"type" : "library"
}
],
"tools_version" : "5.2"
}
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.