Build Information
Successful build of Vexil, reference main (3cfc3a), with Swift 6.4 for Linux on 20 Sep 2026 23:29:07 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/unsignedapps/Vexil.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/unsignedapps/Vexil
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 3cfc3a8 Merge pull request #154 from unsignedapps/fix/asynccurrentvalue-deadlock
Cloned https://github.com/unsignedapps/Vexil.git
Revision (git rev-parse @):
3cfc3a8ed46912e61e9aca19cb177c19ca05a8c1
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/unsignedapps/Vexil.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.4
Building package at path: $PWD
https://github.com/unsignedapps/Vexil.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Fetching https://github.com/swiftlang/swift-syntax.git
Fetching https://github.com/apple/swift-async-algorithms.git
Fetching https://github.com/nicklockwood/SwiftFormat.git
[1/58830] Fetching swiftformat
[2943/65553] Fetching swiftformat, swift-async-algorithms
Fetched https://github.com/apple/swift-async-algorithms.git (1.06s)
[5295/58830] Fetching swiftformat
[5296/138815] Fetching swiftformat, swift-syntax
Fetched https://github.com/swiftlang/swift-syntax.git (4.13s)
[15885/58830] Fetching swiftformat
Fetched https://github.com/nicklockwood/SwiftFormat.git (22.93s)
Computing version for https://github.com/nicklockwood/SwiftFormat.git
Computed https://github.com/nicklockwood/SwiftFormat.git at 0.63.0 (23.98s)
Computing version for https://github.com/swiftlang/swift-syntax.git
Computed https://github.com/swiftlang/swift-syntax.git at 603.0.2 (0.29s)
Computing version for https://github.com/apple/swift-async-algorithms.git
Computed https://github.com/apple/swift-async-algorithms.git at 1.1.5 (0.20s)
Fetching https://github.com/apple/swift-collections.git
[1/27352] Fetching swift-collections
Fetched https://github.com/apple/swift-collections.git (1.16s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.6.0 (1.44s)
Creating working copy for https://github.com/swiftlang/swift-syntax.git
Working copy of https://github.com/swiftlang/swift-syntax.git resolved at 603.0.2
Creating working copy for https://github.com/nicklockwood/SwiftFormat.git
Working copy of https://github.com/nicklockwood/SwiftFormat.git resolved at 0.63.0
Creating working copy for https://github.com/apple/swift-async-algorithms.git
Working copy of https://github.com/apple/swift-async-algorithms.git resolved at 1.1.5
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.6.0
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 799]
[Planning deferred tasks]
[174 / 356] SwiftSyntax509
[212 / 365] InternalCollectionsUtilities
[223 / 368] SwiftSyntax600
[229 / 370] SwiftSyntax509
[241 / 371]
[244 / 374]
[251 / 401] SwiftSyntax
[254 / 401] SwiftSyntax
[256 / 401] SwiftSyntax
[258 / 401] ContainersPreview
[260 / 402] ContainersPreview
[265 / 402] SwiftSyntax
[266 / 402] OrderedCollections
[268 / 402] OrderedCollections
[273 / 402] OrderedCollections
[274 / 402] OrderedCollections-product
[275 / 402] OrderedCollections-product
[276 / 402] OrderedCollections-product
[278 / 402] OrderedCollections
[279 / 402] ContainersPreview
[281 / 402] InternalCollectionsUtilities
[283 / 402] InternalCollectionsUtilities
[284 / 402]
[287 / 404]
[289 / 413] DequeModule
[290 / 413] DequeModule
[291 / 414] OrderedCollections
[293 / 414] OrderedCollections
[294 / 414] DequeModule
[296 / 414] DequeModule
[297 / 414] DequeModule
[298 / 414] DequeModule
[298 / 414]
[300 / 414] ContainersPreview
[300 / 414] DequeModule
[309 / 424] AsyncAlgorithms
[310 / 425] DequeModule
[311 / 425] AsyncAlgorithms
[319 / 425] DequeModule
[320 / 425] DequeModule
[325 / 425] AsyncAlgorithms
[326 / 425] AsyncAlgorithms
[327 / 425] SwiftSyntax-product
[328 / 425] AsyncAlgorithms
[329 / 426] DequeModule
[331 / 428] SwiftBasicFormat
[332 / 437] SwiftDiagnostics
[333 / 444] SwiftBasicFormat
[334 / 444] SwiftDiagnostics
[336 / 444] SwiftDiagnostics
[342 / 453] SwiftParser
[343 / 453] SwiftBasicFormat
[345 / 453] SwiftBasicFormat
[350 / 454] SwiftParser
[351 / 454] SwiftParser
[352 / 454] SwiftParser
[353 / 454] SwiftParser
[355 / 454] SwiftParser
[359 / 454] SwiftParser
[360 / 454] SwiftDiagnostics
[361 / 454] SwiftOperators
[362 / 454] SwiftOperators
[364 / 454] SwiftDiagnostics
[366 / 454] SwiftBasicFormat
[367 / 454] SwiftBasicFormat
[368 / 454] SwiftBasicFormat
[369 / 455] SwiftDiagnostics
[370 / 455] SwiftSyntax
[372 / 455] SwiftParserDiagnostics
[375 / 455] AsyncAlgorithms
[380 / 465] SwiftParserDiagnostics
[381 / 465] SwiftParserDiagnostics
[382 / 466] SwiftBasicFormat
[383 / 466] SwiftParserDiagnostics
[384 / 467] SwiftParserDiagnostics
[387 / 467] SwiftParserDiagnostics
[396 / 469]
[400 / 487] SwiftSyntaxBuilder
[401 / 487] SwiftSyntaxBuilder
[402 / 487] SwiftSyntaxBuilder
[404 / 487] SwiftSyntaxBuilder
[407 / 487] SwiftOperators
[417 / 487] SwiftSyntaxBuilder
[418 / 487] SwiftSyntaxBuilder
[419 / 487] SwiftSyntaxBuilder-product
[420 / 487] SwiftSyntaxBuilder-product
[423 / 488] SwiftParserDiagnostics
[427 / 488] SwiftOperators
[427 / 488] SwiftSyntaxBuilder
[430 / 490]
[433 / 499] SwiftIfConfig
[436 / 499] SwiftIfConfig
[438 / 500] SwiftIfConfig
[440 / 500] SwiftOperators
[447 / 501]
[449 / 510] SwiftSyntaxMacros
[450 / 510] SwiftSyntaxMacros
[455 / 510] SwiftSyntaxMacros
[458 / 510] SwiftSyntaxMacros
[462 / 515] SwiftSyntaxMacroExpansion
[465 / 520] SwiftSyntaxMacroExpansion
[467 / 520] SwiftSyntaxMacroExpansion
[469 / 521] SwiftSyntaxMacroExpansion
[471 / 522] SwiftSyntaxMacros
[473 / 522] SwiftSyntaxMacroExpansion
[481 / 523]
[483 / 532] SwiftCompilerPluginMessageHandling
[484 / 532] SwiftCompilerPluginMessageHandling
[486 / 532] SwiftCompilerPluginMessageHandling
[487 / 532] SwiftCompilerPluginMessageHandling
[488 / 532] SwiftCompilerPluginMessageHandling
[490 / 532] SwiftCompilerPluginMessageHandling
[491 / 532] SwiftCompilerPluginMessageHandling
[495 / 532] SwiftCompilerPluginMessageHandling
[498 / 535] SwiftCompilerPluginMessageHandling
[503 / 535] SwiftCompilerPlugin
[505 / 536] SwiftSyntaxMacroExpansion
[507 / 537] SwiftCompilerPluginMessageHandling
[509 / 538] SwiftSyntax
[512 / 539] SwiftSyntax
[519 / 539] SwiftIfConfig
[528 / 540] VexilMacros
[537 / 549] VexilMacros
[538 / 549] VexilMacros
[542 / 550] VexilMacros
[552 / 560] Vexil
/host/spi-builder-workspace/Sources/Vexil/Value.swift:138:51: [1;33mwarning: [1;39mconformance of 'URL' to protocol 'Sendable' was already stated in the type's module 'FoundationEssentials'[0;0m
[0;36m136 |[0;0m #elseif compiler(>=6.0)
[0;36m137 |[0;0m
[0;36m138 |[0;0m extension URL: FlagValue, @retroactive @unchecked Sendable {
[0;36m|[0;0m `- [1;33mwarning: [1;39mconformance of 'URL' to protocol 'Sendable' was already stated in the type's module 'FoundationEssentials'[0;0m
[0;36m139 |[0;0m public typealias BoxedValueType = String
[0;36m140 |[0;0m
FoundationEssentials.URL:2:15: [1;39mnote: [1;39m'URL' declares conformance to protocol 'Sendable' here[0;0m
[0;36m1 |[0;0m @available(macOS 10.10, iOS 8.0, watchOS 2.0, tvOS 9.0, *)
[0;36m2 |[0;0m public struct URL : Equatable, Sendable, Hashable {
[0;36m|[0;0m `- [1;39mnote: [1;39m'URL' declares conformance to protocol 'Sendable' here[0;0m
[0;36m3 |[0;0m public init?(string: __shared String)
[0;36m4 |[0;0m public init?(string: __shared String, relativeTo url: __shared URL?)
[557 / 560] Vexil
/host/spi-builder-workspace/Sources/Vexil/Value.swift:138:51: [1;33mwarning: [1;39mconformance of 'URL' to protocol 'Sendable' was already stated in the type's module 'FoundationEssentials'[0;0m
[0;36m136 |[0;0m #elseif compiler(>=6.0)
[0;36m137 |[0;0m
[0;36m138 |[0;0m extension URL: FlagValue, @retroactive @unchecked Sendable {
[0;36m|[0;0m `- [1;33mwarning: [1;39mconformance of 'URL' to protocol 'Sendable' was already stated in the type's module 'FoundationEssentials'[0;0m
[0;36m139 |[0;0m public typealias BoxedValueType = String
[0;36m140 |[0;0m
FoundationEssentials.URL:2:15: [1;39mnote: [1;39m'URL' declares conformance to protocol 'Sendable' here[0;0m
[0;36m1 |[0;0m @available(macOS 10.10, iOS 8.0, watchOS 2.0, tvOS 9.0, *)
[0;36m2 |[0;0m public struct URL : Equatable, Sendable, Hashable {
[0;36m|[0;0m `- [1;39mnote: [1;39m'URL' declares conformance to protocol 'Sendable' here[0;0m
[0;36m3 |[0;0m public init?(string: __shared String)
[0;36m4 |[0;0m public init?(string: __shared String, relativeTo url: __shared URL?)
Build complete! (73.40 secs)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-async-algorithms",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-async-algorithms.git"
},
{
"identity" : "swiftformat",
"requirement" : {
"range" : [
{
"lower_bound" : "0.60.1",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/nicklockwood/SwiftFormat.git"
},
{
"identity" : "swift-syntax",
"requirement" : {
"range" : [
{
"lower_bound" : "600.0.0",
"upper_bound" : "604.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/swiftlang/swift-syntax.git"
}
],
"manifest_display_name" : "Vexil",
"name" : "Vexil",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
}
],
"products" : [
{
"name" : "Vexil",
"targets" : [
"Vexil"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "VexilMacros",
"targets" : [
"VexilMacros"
],
"type" : {
"macro" : null
}
}
],
"swift_languages_versions" : [
"6"
],
"targets" : [
{
"c99name" : "VexilTests",
"module_type" : "SwiftTarget",
"name" : "VexilTests",
"path" : "Tests/VexilTests",
"sources" : [
"BoxedFlagValueDecodingTests.swift",
"BoxedFlagValueEncodingTests.swift",
"EquatableTests.swift",
"FlagDetailTests.swift",
"FlagPoleTests.swift",
"FlagValueBoxingTests.swift",
"FlagValueCompilationTests.swift",
"FlagValueDictionaryTests.swift",
"FlagValueSourceTests.swift",
"FlagValueUnboxingTests.swift",
"KeyEncodingTests.swift",
"PublisherTests.swift",
"SnapshotTests.swift",
"UserDefaultPublisherTests.swift",
"UserDefaultsDecodingTests.swift",
"UserDefaultsEncodingTests.swift",
"Utilities/AsyncCurrentValueTests.swift",
"Utilities/Tags.swift",
"Utilities/TestRunner.swift",
"VisitorTests.swift"
],
"target_dependencies" : [
"Vexil"
],
"type" : "test"
},
{
"c99name" : "VexilMacros",
"module_type" : "SwiftTarget",
"name" : "VexilMacros",
"path" : "Sources/VexilMacros",
"product_dependencies" : [
"SwiftCompilerPlugin",
"SwiftSyntax",
"SwiftSyntaxBuilder",
"SwiftSyntaxMacros"
],
"product_memberships" : [
"Vexil",
"VexilMacros"
],
"sources" : [
"FlagContainerMacro.swift",
"FlagGroupMacro.swift",
"FlagMacro.swift",
"Plugin.swift",
"Utilities/AttributeArgument.swift",
"Utilities/DisplayName.swift",
"Utilities/PatternBindingSyntax.swift",
"Utilities/SimpleVariables.swift",
"Utilities/String+Snakecase.swift"
],
"type" : "macro"
},
{
"c99name" : "Vexil",
"module_type" : "SwiftTarget",
"name" : "Vexil",
"path" : "Sources/Vexil",
"product_dependencies" : [
"AsyncAlgorithms"
],
"product_memberships" : [
"Vexil"
],
"sources" : [
"Configuration.swift",
"Container.swift",
"DisplayOptions.swift",
"Flag.swift",
"Group.swift",
"KeyPath.swift",
"Lookup.swift",
"Observability/FlagGroupWigwag.swift",
"Observability/FlagWigwag.swift",
"Observability/Observing.swift",
"Pole+Observability.swift",
"Pole.swift",
"Snapshots/MutableFlagContainer.swift",
"Snapshots/Snapshot+Extensions.swift",
"Snapshots/Snapshot+FlagValueSource.swift",
"Snapshots/Snapshot+Lookup.swift",
"Snapshots/Snapshot.swift",
"Snapshots/SnapshotBuilder.swift",
"Sources/BoxedFlagValue+NSObject.swift",
"Sources/FlagValueDictionary+FlagValueSource.swift",
"Sources/FlagValueDictionary.swift",
"Sources/FlagValueSource.swift",
"Sources/FlagValueSourceCoordinator.swift",
"Sources/NSUbiquitousKeyValueStore+FlagValueSource.swift",
"Sources/NonSendableFlagValueSource.swift",
"Sources/UserDefaults+FlagValueSource.swift",
"StreamManager.swift",
"Utilities/AsyncCurrentValue.swift",
"Utilities/BoxedFlagValue+Codable.swift",
"Utilities/CollectionDifference.Change+Element.swift",
"Utilities/FlagChangeStream.swift",
"Utilities/Lock.swift",
"Value.swift",
"Visitor.swift",
"Visitors/FlagDescriber.swift",
"Visitors/FlagRemover.swift",
"Visitors/FlagSetter.swift"
],
"target_dependencies" : [
"VexilMacros"
],
"type" : "library"
}
],
"tools_version" : "6.2"
}
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Done.