Build Information
Successful build of Syft, reference master (9769af), with Swift 6.1 for Wasm on 29 May 2025 16:34:39 UTC.
Swift 6 data race errors: 8
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -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>&1Build Log
========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dcutting/syft.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/dcutting/syft
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 9769af2 Include Parslet file as inspiration.
Cloned https://github.com/dcutting/syft.git
Revision (git rev-parse @):
9769af206be0ecb7a0f2034ab29328ed1f2a0ee8
SUCCESS checkout https://github.com/dcutting/syft.git at master
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/dcutting/syft.git
https://github.com/dcutting/syft.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"default_localization" : "en",
"dependencies" : [
],
"manifest_display_name" : "Syft",
"name" : "Syft",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "Syft",
"targets" : [
"Syft"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SyftTests",
"module_type" : "SwiftTarget",
"name" : "SyftTests",
"path" : "Tests/SyftTests",
"sources" : [
"DeferredTests.swift",
"EitherTests.swift",
"Helpers.swift",
"MatchTests.swift",
"RemainderTests.swift",
"RepeatTests.swift",
"ResultTests.swift",
"SequenceTests.swift",
"StringAtomTests.swift",
"TagTests.swift",
"TransformerTests.swift"
],
"target_dependencies" : [
"Syft"
],
"type" : "test"
},
{
"c99name" : "Syft",
"module_type" : "SwiftTarget",
"name" : "Syft",
"path" : "Sources/Syft",
"product_memberships" : [
"Syft"
],
"sources" : [
"ArrayUtilities.swift",
"DSL.swift",
"DictionaryUtilities.swift",
"Parser.swift",
"Remainder.swift",
"Result.swift",
"ResultReporter.swift",
"StringUtilities.swift",
"Transformer.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -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
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/11] Compiling Syft StringUtilities.swift
[4/12] Compiling Syft Remainder.swift
[5/12] Compiling Syft Result.swift
[6/12] Compiling Syft ResultReporter.swift
[7/12] Compiling Syft Transformer.swift
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:7:10: warning: associated value 'inputInvalid' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Result'; this is an error in the Swift 6 language mode
5 |
6 | public enum TransformerError<T>: Error {
7 | case inputInvalid(Result)
| `- warning: associated value 'inputInvalid' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Result'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
/host/spi-builder-workspace/Sources/Syft/Result.swift:1:22: note: consider making enum 'Result' conform to the 'Sendable' protocol
1 | public indirect enum Result: Equatable, CustomStringConvertible {
| `- note: consider making enum 'Result' conform to the 'Sendable' protocol
2 |
3 | case failure
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:8:10: warning: associated value 'unexpectedRemainder' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Remainder'; this is an error in the Swift 6 language mode
6 | public enum TransformerError<T>: Error {
7 | case inputInvalid(Result)
8 | case unexpectedRemainder(Remainder)
| `- warning: associated value 'unexpectedRemainder' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Remainder'; this is an error in the Swift 6 language mode
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
/host/spi-builder-workspace/Sources/Syft/Remainder.swift:1:15: note: consider making struct 'Remainder' conform to the 'Sendable' protocol
1 | public struct Remainder: Equatable {
| `- note: consider making struct 'Remainder' conform to the 'Sendable' protocol
2 |
3 | public let text: String
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:9:10: warning: associated value 'transformFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
7 | case inputInvalid(Result)
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
| `- warning: associated value 'transformFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
11 | case unknownCaptureVariable(TransformerCaptureName)
:
28 | public typealias TransformableSeries<T> = [Transformable<T>]
29 |
30 | public indirect enum Transformable<T> {
| `- note: consider making generic enum 'Transformable' conform to the 'Sendable' protocol
31 | case tree(TransformableTree<T>)
32 | case series(TransformableSeries<T>)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:10:10: warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
| `- warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
11 | case unknownCaptureVariable(TransformerCaptureName)
12 | case captureVariableUnexpectedlyRaw(TransformerCaptureName)
:
28 | public typealias TransformableSeries<T> = [Transformable<T>]
29 |
30 | public indirect enum Transformable<T> {
| `- note: consider making generic enum 'Transformable' conform to the 'Sendable' protocol
31 | case tree(TransformableTree<T>)
32 | case series(TransformableSeries<T>)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:10:10: warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'TransformerPattern'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
| `- warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'TransformerPattern'; this is an error in the Swift 6 language mode
11 | case unknownCaptureVariable(TransformerCaptureName)
12 | case captureVariableUnexpectedlyRaw(TransformerCaptureName)
:
102 | public typealias TransformerPatternSeries = [TransformerPattern]
103 |
104 | public indirect enum TransformerPattern {
| `- note: consider making enum 'TransformerPattern' conform to the 'Sendable' protocol
105 | case tree(TransformerPatternTree)
106 | case series(String)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:10:10: warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
| `- warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
11 | case unknownCaptureVariable(TransformerCaptureName)
12 | case captureVariableUnexpectedlyRaw(TransformerCaptureName)
:
28 | public typealias TransformableSeries<T> = [Transformable<T>]
29 |
30 | public indirect enum Transformable<T> {
| `- note: consider making generic enum 'Transformable' conform to the 'Sendable' protocol
31 | case tree(TransformableTree<T>)
32 | case series(TransformableSeries<T>)
[8/12] Compiling Syft DictionaryUtilities.swift
[9/12] Compiling Syft ArrayUtilities.swift
/host/spi-builder-workspace/Sources/Syft/DSL.swift:141:12: warning: let 'any' is not concurrency-safe because non-'Sendable' type 'Parser' may have shared mutable state; this is an error in the Swift 6 language mode
139 | }
140 |
141 | public let any = Parser.any
| |- warning: let 'any' is not concurrency-safe because non-'Sendable' type 'Parser' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make let 'any' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
142 |
143 | public func str(_ str: String) -> Parser {
/host/spi-builder-workspace/Sources/Syft/Parser.swift:15:22: note: consider making enum 'Parser' conform to the 'Sendable' protocol
13 | }
14 |
15 | public indirect enum Parser: ParserProtocol {
| `- note: consider making enum 'Parser' conform to the 'Sendable' protocol
16 |
17 | case any
[10/12] Compiling Syft DSL.swift
/host/spi-builder-workspace/Sources/Syft/DSL.swift:141:12: warning: let 'any' is not concurrency-safe because non-'Sendable' type 'Parser' may have shared mutable state; this is an error in the Swift 6 language mode
139 | }
140 |
141 | public let any = Parser.any
| |- warning: let 'any' is not concurrency-safe because non-'Sendable' type 'Parser' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make let 'any' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
142 |
143 | public func str(_ str: String) -> Parser {
/host/spi-builder-workspace/Sources/Syft/Parser.swift:15:22: note: consider making enum 'Parser' conform to the 'Sendable' protocol
13 | }
14 |
15 | public indirect enum Parser: ParserProtocol {
| `- note: consider making enum 'Parser' conform to the 'Sendable' protocol
16 |
17 | case any
[11/12] Emitting module Syft
/host/spi-builder-workspace/Sources/Syft/DSL.swift:141:12: warning: let 'any' is not concurrency-safe because non-'Sendable' type 'Parser' may have shared mutable state; this is an error in the Swift 6 language mode
139 | }
140 |
141 | public let any = Parser.any
| |- warning: let 'any' is not concurrency-safe because non-'Sendable' type 'Parser' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make let 'any' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
142 |
143 | public func str(_ str: String) -> Parser {
/host/spi-builder-workspace/Sources/Syft/Parser.swift:15:22: note: consider making enum 'Parser' conform to the 'Sendable' protocol
13 | }
14 |
15 | public indirect enum Parser: ParserProtocol {
| `- note: consider making enum 'Parser' conform to the 'Sendable' protocol
16 |
17 | case any
/host/spi-builder-workspace/Sources/Syft/Parser.swift:7:12: warning: var 'parsedLastCharacter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
5 | // Needed by REPLs for multiline support.
6 | // Since this is a global, it makes the parser no longer thread-safe.
7 | public var parsedLastCharacter = false
| |- warning: var 'parsedLastCharacter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'parsedLastCharacter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'parsedLastCharacter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
8 |
9 | public typealias ResultWithRemainder = (Result, Remainder)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:7:10: warning: associated value 'inputInvalid' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Result'; this is an error in the Swift 6 language mode
5 |
6 | public enum TransformerError<T>: Error {
7 | case inputInvalid(Result)
| `- warning: associated value 'inputInvalid' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Result'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
/host/spi-builder-workspace/Sources/Syft/Result.swift:1:22: note: consider making enum 'Result' conform to the 'Sendable' protocol
1 | public indirect enum Result: Equatable, CustomStringConvertible {
| `- note: consider making enum 'Result' conform to the 'Sendable' protocol
2 |
3 | case failure
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:8:10: warning: associated value 'unexpectedRemainder' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Remainder'; this is an error in the Swift 6 language mode
6 | public enum TransformerError<T>: Error {
7 | case inputInvalid(Result)
8 | case unexpectedRemainder(Remainder)
| `- warning: associated value 'unexpectedRemainder' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Remainder'; this is an error in the Swift 6 language mode
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
/host/spi-builder-workspace/Sources/Syft/Remainder.swift:1:15: note: consider making struct 'Remainder' conform to the 'Sendable' protocol
1 | public struct Remainder: Equatable {
| `- note: consider making struct 'Remainder' conform to the 'Sendable' protocol
2 |
3 | public let text: String
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:9:10: warning: associated value 'transformFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
7 | case inputInvalid(Result)
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
| `- warning: associated value 'transformFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
11 | case unknownCaptureVariable(TransformerCaptureName)
:
28 | public typealias TransformableSeries<T> = [Transformable<T>]
29 |
30 | public indirect enum Transformable<T> {
| `- note: consider making generic enum 'Transformable' conform to the 'Sendable' protocol
31 | case tree(TransformableTree<T>)
32 | case series(TransformableSeries<T>)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:10:10: warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
| `- warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
11 | case unknownCaptureVariable(TransformerCaptureName)
12 | case captureVariableUnexpectedlyRaw(TransformerCaptureName)
:
28 | public typealias TransformableSeries<T> = [Transformable<T>]
29 |
30 | public indirect enum Transformable<T> {
| `- note: consider making generic enum 'Transformable' conform to the 'Sendable' protocol
31 | case tree(TransformableTree<T>)
32 | case series(TransformableSeries<T>)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:10:10: warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'TransformerPattern'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
| `- warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'TransformerPattern'; this is an error in the Swift 6 language mode
11 | case unknownCaptureVariable(TransformerCaptureName)
12 | case captureVariableUnexpectedlyRaw(TransformerCaptureName)
:
102 | public typealias TransformerPatternSeries = [TransformerPattern]
103 |
104 | public indirect enum TransformerPattern {
| `- note: consider making enum 'TransformerPattern' conform to the 'Sendable' protocol
105 | case tree(TransformerPatternTree)
106 | case series(String)
/host/spi-builder-workspace/Sources/Syft/Transformer.swift:10:10: warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
8 | case unexpectedRemainder(Remainder)
9 | case transformFailed(Transformable<T>)
10 | case reducerFailed(Transformable<T>, TransformerPattern, TransformerCaptures<T>)
| `- warning: associated value 'reducerFailed' of 'Sendable'-conforming generic enum 'TransformerError' has non-sendable type 'Transformable<T>'; this is an error in the Swift 6 language mode
11 | case unknownCaptureVariable(TransformerCaptureName)
12 | case captureVariableUnexpectedlyRaw(TransformerCaptureName)
:
28 | public typealias TransformableSeries<T> = [Transformable<T>]
29 |
30 | public indirect enum Transformable<T> {
| `- note: consider making generic enum 'Transformable' conform to the 'Sendable' protocol
31 | case tree(TransformableTree<T>)
32 | case series(TransformableSeries<T>)
[12/12] Compiling Syft Parser.swift
/host/spi-builder-workspace/Sources/Syft/Parser.swift:7:12: warning: var 'parsedLastCharacter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
5 | // Needed by REPLs for multiline support.
6 | // Since this is a global, it makes the parser no longer thread-safe.
7 | public var parsedLastCharacter = false
| |- warning: var 'parsedLastCharacter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'parsedLastCharacter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'parsedLastCharacter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
8 |
9 | public typealias ResultWithRemainder = (Result, Remainder)
Build complete! (6.30s)
Build complete.
{
"default_localization" : "en",
"dependencies" : [
],
"manifest_display_name" : "Syft",
"name" : "Syft",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "Syft",
"targets" : [
"Syft"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SyftTests",
"module_type" : "SwiftTarget",
"name" : "SyftTests",
"path" : "Tests/SyftTests",
"sources" : [
"DeferredTests.swift",
"EitherTests.swift",
"Helpers.swift",
"MatchTests.swift",
"RemainderTests.swift",
"RepeatTests.swift",
"ResultTests.swift",
"SequenceTests.swift",
"StringAtomTests.swift",
"TagTests.swift",
"TransformerTests.swift"
],
"target_dependencies" : [
"Syft"
],
"type" : "test"
},
{
"c99name" : "Syft",
"module_type" : "SwiftTarget",
"name" : "Syft",
"path" : "Sources/Syft",
"product_memberships" : [
"Syft"
],
"sources" : [
"ArrayUtilities.swift",
"DSL.swift",
"DictionaryUtilities.swift",
"Parser.swift",
"Remainder.swift",
"Result.swift",
"ResultReporter.swift",
"StringUtilities.swift",
"Transformer.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Done.