Build Information
Successful build of SSpec, reference 0.2.3 (2e6842
), with Swift 6.1 for Linux on 25 Apr 2025 12:05:10 UTC.
Swift 6 data race errors: 4
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dimakura/sspec.git
Reference: 0.2.3
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/dimakura/sspec
* tag 0.2.3 -> FETCH_HEAD
HEAD is now at 2e68427 Extensibility fixes (#33)
Cloned https://github.com/dimakura/sspec.git
Revision (git rev-parse @):
2e6842709607cdbfd3013e7df0dbe32b60932656
SUCCESS checkout https://github.com/dimakura/sspec.git at 0.2.3
========================================
Build
========================================
Selected platform: linux
Swift version: 6.1
Building package at path: $PWD
https://github.com/dimakura/sspec.git
https://github.com/dimakura/sspec.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "rainbow",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/onevcat/Rainbow"
},
{
"identity" : "progress.swift",
"requirement" : {
"range" : [
{
"lower_bound" : "0.3.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/jkandzi/Progress.swift"
}
],
"manifest_display_name" : "SSpec",
"name" : "SSpec",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SSpec",
"targets" : [
"SSpec"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SSpecTests",
"module_type" : "SwiftTarget",
"name" : "SSpecTests",
"path" : "Tests/SSpecTests",
"sources" : [
"Extensions/DummyExtension.swift",
"General/ArraySpec.swift",
"General/BeforeAfterSpec.swift",
"General/BoolSpec.swift",
"General/EquatableSpec.swift",
"General/NilableSpec.swift",
"General/StringSpec.swift",
"SSpec/ExtensionSpec.swift",
"SSpec/NodeSpec.swift",
"SSpec/SessionSpec.swift",
"SSpec/VersionSpec.swift",
"SSpecTests.swift"
],
"target_dependencies" : [
"SSpec"
],
"type" : "test"
},
{
"c99name" : "SSpec",
"module_type" : "SwiftTarget",
"name" : "SSpec",
"path" : "Sources/SSpec",
"product_dependencies" : [
"Rainbow",
"Progress"
],
"product_memberships" : [
"SSpec"
],
"sources" : [
"Collectors/DotReporter.swift",
"Collectors/ProgressReporter.swift",
"Collectors/Reporter.swift",
"Collectors/SpecReporter.swift",
"Collectors/TimeTaken.swift",
"Collectors/Welcomer.swift",
"Expectations/Array.swift",
"Expectations/Bool.swift",
"Expectations/Change.swift",
"Expectations/Comparable.swift",
"Expectations/Equatable.swift",
"Expectations/Generic.swift",
"Expectations/String.swift",
"Expectations/ToString.swift",
"SSpec.swift",
"Session/Events.swift",
"Session/Session.swift",
"Session/Tree.swift",
"Tree/After.swift",
"Tree/Before.swift",
"Tree/Describe.swift",
"Tree/Example.swift",
"Tree/IdGenerator.swift",
"Tree/Node.swift",
"Tree/Root.swift",
"Version.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/jkandzi/Progress.swift
[1/465] Fetching progress.swift
Fetched https://github.com/jkandzi/Progress.swift from cache (0.35s)
Fetching https://github.com/onevcat/Rainbow
[1/1196] Fetching rainbow
Fetched https://github.com/onevcat/Rainbow from cache (0.36s)
Computing version for https://github.com/jkandzi/Progress.swift
Computed https://github.com/jkandzi/Progress.swift at 0.4.0 (1.81s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 3.2.0 (1.01s)
Creating working copy for https://github.com/onevcat/Rainbow
Working copy of https://github.com/onevcat/Rainbow resolved at 3.2.0
Creating working copy for https://github.com/jkandzi/Progress.swift
Working copy of https://github.com/jkandzi/Progress.swift resolved at 0.4.0
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/19] Compiling Rainbow StringGenerator.swift
[6/20] Compiling Rainbow Style.swift
[7/20] Compiling Rainbow String+Rainbow.swift
[8/20] Compiling Rainbow XcodeColorsSupport.swift
[9/20] Compiling Progress ProgressElements.swift
[10/20] Compiling Progress Progress.swift
[11/20] Compiling Progress Utilities.swift
[12/20] Emitting module Progress
[14/21] Compiling Rainbow Rainbow.swift
[15/21] Compiling Rainbow Color.swift
[16/21] Compiling Rainbow ControlCode.swift
[17/21] Compiling Rainbow BackgroundColor.swift
[18/21] Compiling Rainbow CodesParser.swift
[19/21] Compiling Rainbow ModesExtractor.swift
[20/21] Compiling Rainbow OutputTarget.swift
[21/21] Emitting module Rainbow
[23/46] Compiling SSpec Tree.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[24/46] Compiling SSpec After.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[25/46] Compiling SSpec Before.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[26/46] Compiling SSpec Change.swift
[27/46] Compiling SSpec Comparable.swift
[28/46] Compiling SSpec Equatable.swift
[29/49] Compiling SSpec Generic.swift
[30/49] Compiling SSpec String.swift
[31/49] Compiling SSpec ToString.swift
[32/49] Emitting module SSpec
/host/spi-builder-workspace/Sources/SSpec/Expectations/Array.swift:18:32: warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
16 |
17 | /// Expectations for equatable arrays.
18 | extension SSExpect where T == [Equatable] {
| `- warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
19 | private func areEqual<X: Equatable>(_ a: T?, _ b: [X]) -> Bool {
20 | guard let A = a as? [X] else { return false }
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:15:22: warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | }
14 |
15 | private static var _currentSession: SSSession?
| |- warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert '_currentSession' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property '_currentSession' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | /// Current session.
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:21:14: warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 |
20 | /// Current reporter.
21 | static var reporter: Reporter = .Dot
| |- warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'reporter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reporter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 |
23 | /// You use this method only once for running sessions.
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/IdGenerator.swift:3:22: warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1 | /// Consequtive id generator.
2 | struct IdGenerator {
3 | private static var lastId: Int = 0
| |- warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'lastId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
4 |
5 | static var nextId: Int {
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:4:14: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | class Node: Equatable, Hashable {
3 | /// Current node: used for running examples.
4 | static var current: Node? = nil
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'current' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | /// Equatable implementation.
[33/49] Compiling SSpec TimeTaken.swift
/host/spi-builder-workspace/Sources/SSpec/Expectations/Array.swift:18:32: warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
16 |
17 | /// Expectations for equatable arrays.
18 | extension SSExpect where T == [Equatable] {
| `- warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
19 | private func areEqual<X: Equatable>(_ a: T?, _ b: [X]) -> Bool {
20 | guard let A = a as? [X] else { return false }
[34/49] Compiling SSpec Welcomer.swift
/host/spi-builder-workspace/Sources/SSpec/Expectations/Array.swift:18:32: warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
16 |
17 | /// Expectations for equatable arrays.
18 | extension SSExpect where T == [Equatable] {
| `- warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
19 | private func areEqual<X: Equatable>(_ a: T?, _ b: [X]) -> Bool {
20 | guard let A = a as? [X] else { return false }
[35/49] Compiling SSpec Array.swift
/host/spi-builder-workspace/Sources/SSpec/Expectations/Array.swift:18:32: warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
16 |
17 | /// Expectations for equatable arrays.
18 | extension SSExpect where T == [Equatable] {
| `- warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
19 | private func areEqual<X: Equatable>(_ a: T?, _ b: [X]) -> Bool {
20 | guard let A = a as? [X] else { return false }
[36/49] Compiling SSpec Bool.swift
/host/spi-builder-workspace/Sources/SSpec/Expectations/Array.swift:18:32: warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
16 |
17 | /// Expectations for equatable arrays.
18 | extension SSExpect where T == [Equatable] {
| `- warning: use of protocol 'Equatable' as a type must be written 'any Equatable'; this will be an error in a future Swift language mode
19 | private func areEqual<X: Equatable>(_ a: T?, _ b: [X]) -> Bool {
20 | guard let A = a as? [X] else { return false }
[37/49] Compiling SSpec Describe.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/IdGenerator.swift:3:22: warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1 | /// Consequtive id generator.
2 | struct IdGenerator {
3 | private static var lastId: Int = 0
| |- warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'lastId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
4 |
5 | static var nextId: Int {
[38/49] Compiling SSpec Example.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/IdGenerator.swift:3:22: warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1 | /// Consequtive id generator.
2 | struct IdGenerator {
3 | private static var lastId: Int = 0
| |- warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'lastId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
4 |
5 | static var nextId: Int {
[39/49] Compiling SSpec IdGenerator.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/IdGenerator.swift:3:22: warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1 | /// Consequtive id generator.
2 | struct IdGenerator {
3 | private static var lastId: Int = 0
| |- warning: static property 'lastId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'lastId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
4 |
5 | static var nextId: Int {
[40/49] Compiling SSpec SSpec.swift
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:15:22: warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | }
14 |
15 | private static var _currentSession: SSSession?
| |- warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert '_currentSession' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property '_currentSession' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | /// Current session.
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:21:14: warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 |
20 | /// Current reporter.
21 | static var reporter: Reporter = .Dot
| |- warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'reporter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reporter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 |
23 | /// You use this method only once for running sessions.
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[41/49] Compiling SSpec Events.swift
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:15:22: warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | }
14 |
15 | private static var _currentSession: SSSession?
| |- warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert '_currentSession' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property '_currentSession' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | /// Current session.
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:21:14: warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 |
20 | /// Current reporter.
21 | static var reporter: Reporter = .Dot
| |- warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'reporter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reporter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 |
23 | /// You use this method only once for running sessions.
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[42/49] Compiling SSpec Session.swift
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:15:22: warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | }
14 |
15 | private static var _currentSession: SSSession?
| |- warning: static property '_currentSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert '_currentSession' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property '_currentSession' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | /// Current session.
/host/spi-builder-workspace/Sources/SSpec/SSpec.swift:21:14: warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 |
20 | /// Current reporter.
21 | static var reporter: Reporter = .Dot
| |- warning: static property 'reporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'reporter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reporter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 |
23 | /// You use this method only once for running sessions.
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[43/49] Compiling SSpec DotReporter.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[44/49] Compiling SSpec ProgressReporter.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[45/49] Compiling SSpec Reporter.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[46/49] Compiling SSpec SpecReporter.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
[47/49] Compiling SSpec Node.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:4:14: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | class Node: Equatable, Hashable {
3 | /// Current node: used for running examples.
4 | static var current: Node? = nil
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'current' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | /// Equatable implementation.
[48/49] Compiling SSpec Root.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:4:14: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | class Node: Equatable, Hashable {
3 | /// Current node: used for running examples.
4 | static var current: Node? = nil
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'current' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | /// Equatable implementation.
[49/49] Compiling SSpec Version.swift
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:52:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
50 | }
51 |
52 | var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Node' to 'Hashable' by implementing 'hash(into:)' instead
53 | return id
54 | }
/host/spi-builder-workspace/Sources/SSpec/Tree/Node.swift:4:14: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | class Node: Equatable, Hashable {
3 | /// Current node: used for running examples.
4 | static var current: Node? = nil
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'current' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | /// Equatable implementation.
Build complete! (12.33s)
Build complete.
{
"dependencies" : [
{
"identity" : "rainbow",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/onevcat/Rainbow"
},
{
"identity" : "progress.swift",
"requirement" : {
"range" : [
{
"lower_bound" : "0.3.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/jkandzi/Progress.swift"
}
],
"manifest_display_name" : "SSpec",
"name" : "SSpec",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SSpec",
"targets" : [
"SSpec"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SSpecTests",
"module_type" : "SwiftTarget",
"name" : "SSpecTests",
"path" : "Tests/SSpecTests",
"sources" : [
"Extensions/DummyExtension.swift",
"General/ArraySpec.swift",
"General/BeforeAfterSpec.swift",
"General/BoolSpec.swift",
"General/EquatableSpec.swift",
"General/NilableSpec.swift",
"General/StringSpec.swift",
"SSpec/ExtensionSpec.swift",
"SSpec/NodeSpec.swift",
"SSpec/SessionSpec.swift",
"SSpec/VersionSpec.swift",
"SSpecTests.swift"
],
"target_dependencies" : [
"SSpec"
],
"type" : "test"
},
{
"c99name" : "SSpec",
"module_type" : "SwiftTarget",
"name" : "SSpec",
"path" : "Sources/SSpec",
"product_dependencies" : [
"Rainbow",
"Progress"
],
"product_memberships" : [
"SSpec"
],
"sources" : [
"Collectors/DotReporter.swift",
"Collectors/ProgressReporter.swift",
"Collectors/Reporter.swift",
"Collectors/SpecReporter.swift",
"Collectors/TimeTaken.swift",
"Collectors/Welcomer.swift",
"Expectations/Array.swift",
"Expectations/Bool.swift",
"Expectations/Change.swift",
"Expectations/Comparable.swift",
"Expectations/Equatable.swift",
"Expectations/Generic.swift",
"Expectations/String.swift",
"Expectations/ToString.swift",
"SSpec.swift",
"Session/Events.swift",
"Session/Session.swift",
"Session/Tree.swift",
"Tree/After.swift",
"Tree/Before.swift",
"Tree/Describe.swift",
"Tree/Example.swift",
"Tree/IdGenerator.swift",
"Tree/Node.swift",
"Tree/Root.swift",
"Version.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.