Build Information
Successful build of StarCraftKit, reference master (b36215), with Swift 6.2 for Android on 14 Jul 2026 19:11:41 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-53886770-2":/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:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: e8bafa5c5d5b3cc8a20258ddf060ad6c89f46bf9
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/guitaripod/StarCraftKit.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/guitaripod/StarCraftKit
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at b362151 feat: unify all sources behind a single StarCraft facade (+ SC2 Pulse & Blizzard)
Cloned https://github.com/guitaripod/StarCraftKit.git
Revision (git rev-parse @):
b3621515fa0a4169715119493188c0be06ef4249
SUCCESS checkout https://github.com/guitaripod/StarCraftKit.git at master
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/guitaripod/StarCraftKit.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886770-2":/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:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:3f0849bce0d177c252f57ff0847fffe59d625aee973279c71a52a43c740d3c90
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.2-latest
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/apple/swift-log
[1/7701] Fetching swift-log
[7702/10026] Fetching swift-log, swift-docc-plugin
[7912/28050] Fetching swift-log, swift-docc-plugin, swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser from cache (0.70s)
Fetched https://github.com/apple/swift-log from cache (0.70s)
Fetched https://github.com/apple/swift-docc-plugin from cache (0.70s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.5.0 (1.61s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3753] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.48s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.69s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.16s)
Computing version for https://github.com/apple/swift-log
Computed https://github.com/apple/swift-log at 1.14.0 (0.17s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-log
Working copy of https://github.com/apple/swift-log resolved at 1.14.0
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.5.0
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
[3/3] Compiling plugin GenerateManual
[4/4] Compiling plugin GenerateDoccReference
Building for debugging...
[4/17] Write sources
[9/17] Write swift-version--11D90AFD9DD3AB2.txt
[11/30] Compiling Logging Logger+Attributes.swift
[12/31] Compiling Logging LoggingSystem.swift
[13/31] Compiling ArgumentParserToolInfo ToolInfo.swift
[14/31] Emitting module ArgumentParserToolInfo
[16/32] Compiling Logging LogEvent.swift
[17/32] Compiling Logging LogHandler.swift
[18/32] Compiling Logging Logger.swift
[19/32] Compiling Logging Logger+With.swift
[19/32] Wrapping AST for ArgumentParserToolInfo for debugging
[21/79] Compiling ArgumentParser NameSpecification.swift
[22/79] Compiling ArgumentParser Option.swift
[23/79] Compiling ArgumentParser ArgumentVisibility.swift
[24/79] Compiling ArgumentParser CompletionKind.swift
[25/79] Emitting module Logging
[26/79] Compiling Logging MetadataProvider.swift
[27/80] Wrapping AST for Logging for debugging
[29/110] Compiling ArgumentParser Mutex.swift
[30/110] Compiling ArgumentParser Platform.swift
[31/110] Compiling ArgumentParser SequenceExtensions.swift
[32/110] Compiling ArgumentParser StringExtensions.swift
[33/110] Compiling ArgumentParser SwiftExtensions.swift
[34/110] Compiling ArgumentParser Tree.swift
[35/116] Compiling ArgumentParser HelpCommand.swift
[36/116] Compiling ArgumentParser HelpGenerator.swift
[37/116] Compiling ArgumentParser MessageInfo.swift
[38/116] Compiling ArgumentParser UsageGenerator.swift
[39/116] Compiling ArgumentParser CollectionExtensions.swift
[40/116] Compiling ArgumentParser Foundation.swift
[41/116] Compiling StarCraftKit APIClientProtocol.swift
[42/116] Compiling ArgumentParser Parsed.swift
[43/116] Compiling ArgumentParser ParsedValues.swift
[44/116] Compiling ArgumentParser ParserError.swift
[45/116] Compiling ArgumentParser SplitArguments.swift
[46/116] Compiling ArgumentParser DumpHelpGenerator.swift
[47/116] Compiling StarCraftKit APIRequest.swift
[48/116] Compiling StarCraftKit Endpoint.swift
[49/116] Compiling StarCraftKit SC2PulseClient.swift
[50/116] Compiling StarCraftKit SC2PulseModels.swift
[51/116] Compiling StarCraftKit Series.swift
[52/116] Compiling StarCraftKit Team.swift
[53/116] Compiling StarCraftKit Tournament.swift
[54/116] Compiling ArgumentParser AsyncCompletionsValidator.swift
[55/116] Compiling ArgumentParser CodingKeyValidator.swift
[56/116] Compiling ArgumentParser NonsenseFlagsValidator.swift
[57/116] Compiling ArgumentParser ParsableArgumentsValidation.swift
[58/116] Compiling ArgumentParser PositionalArgumentsValidator.swift
[59/116] Compiling ArgumentParser UniqueNamesValidator.swift
[60/116] Emitting module ArgumentParser
[61/116] Compiling StarCraftKit PaginationInfo.swift
[62/116] Compiling StarCraftKit Player.swift
[63/116] Compiling StarCraftKit QueryParameters.swift
[64/116] Compiling StarCraftKit QueryValue.swift
[65/120] Compiling StarCraftKit APIError.swift
[66/120] Compiling StarCraftKit NetworkingClient.swift
[67/120] Compiling StarCraftKit RetryHandler.swift
[68/120] Compiling StarCraftKit DateFormatter+Extensions.swift
[69/120] Compiling StarCraftKit LeagueEndpoint.swift
[70/120] Compiling StarCraftKit MatchEndpoint.swift
[71/120] Compiling StarCraftKit PlayerEndpoint.swift
[72/120] Compiling StarCraftKit SeriesEndpoint.swift
[73/120] Compiling StarCraftKit TeamEndpoint.swift
[74/120] Compiling StarCraftKit TournamentEndpoint.swift
[75/120] Compiling StarCraftKit League.swift
[76/120] Compiling StarCraftKit Match.swift
[77/120] Compiling StarCraftKit AligulacClient.swift
[78/120] Compiling StarCraftKit AligulacModels.swift
[79/120] Compiling StarCraftKit BlizzardClient.swift
[80/120] Compiling StarCraftKit BlizzardModels.swift
[81/120] Compiling StarCraftKit ResponseCache.swift
[98/121] Wrapping AST for ArgumentParser for debugging
[100/121] Emitting module StarCraftKit
[114/121] Compiling StarCraftKit StarCraftClient.swift
[115/121] Compiling StarCraftKit StarCraftKit.swift
[116/121] Compiling StarCraftKit StarCraft.swift
[117/121] Compiling StarCraftKit StarCraftComposites.swift
[118/122] Wrapping AST for StarCraftKit for debugging
[120/145] Emitting module StarCraftKitCLI
[121/148] Compiling StarCraftKitCLI OpponentExtensions.swift
[122/148] Compiling StarCraftKitCLI String+Extensions.swift
[123/148] Compiling StarCraftKitCLI UIEnhancements.swift
[124/148] Compiling StarCraftKitCLI LeaguesCommand.swift
[125/148] Compiling StarCraftKitCLI LiveCommand.swift
[126/148] Compiling StarCraftKitCLI MatchesCommand.swift
[127/148] Compiling StarCraftKitCLI SearchCommand.swift
[128/148] Compiling StarCraftKitCLI SeriesCommand.swift
[129/148] Compiling StarCraftKitCLI StreamCommand.swift
[130/148] Compiling StarCraftKitCLI PlayerMatchesCommand.swift
[131/148] Compiling StarCraftKitCLI PlayerScheduleCommand.swift
[132/148] Compiling StarCraftKitCLI PlayersCommand.swift
[133/148] Compiling StarCraftKitCLI AligulacCommands.swift
[134/148] Compiling StarCraftKitCLI CacheCommand.swift
[135/148] Compiling StarCraftKitCLI DebugCommand.swift
[136/148] Compiling StarCraftKitCLI ExportCommand.swift
[137/148] Compiling StarCraftKitCLI UpcomingCommand.swift
[138/148] Compiling StarCraftKitCLI StarCraftCLI.swift
[139/148] Compiling StarCraftKitCLI CLIContext.swift
[140/148] Compiling StarCraftKitCLI TeamsCommand.swift
[141/148] Compiling StarCraftKitCLI TestCommand.swift
[142/148] Compiling StarCraftKitCLI TodayCommand.swift
[143/148] Compiling StarCraftKitCLI TournamentMatchesCommand.swift
[144/148] Compiling StarCraftKitCLI TournamentsCommand.swift
[145/148] Compiling StarCraftKitCLI UnifiedCommands.swift
[146/149] Wrapping AST for StarCraftKitCLI for debugging
[147/149] Write Objects.LinkFileList
[148/149] Linking starcraft-cli
Build complete! (21.61s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
},
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-docc-plugin"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log"
}
],
"manifest_display_name" : "StarCraftKit",
"name" : "StarCraftKit",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "16.0"
},
{
"name" : "watchos",
"version" : "9.0"
},
{
"name" : "tvos",
"version" : "16.0"
}
],
"products" : [
{
"name" : "StarCraftKit",
"targets" : [
"StarCraftKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "starcraft-cli",
"targets" : [
"StarCraftKitCLI"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "StarCraftKitTests",
"module_type" : "SwiftTarget",
"name" : "StarCraftKitTests",
"path" : "Tests/StarCraftKitTests",
"resources" : [
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/aligulac_matches.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/aligulac_player.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/aligulac_prediction.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/aligulac_rating.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/blizzard_grandmaster.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/blizzard_season.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/match_fractional_date.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/matches.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/matches_with_nulls.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/sc2pulse_characters.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/sc2pulse_ladder.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/sc2pulse_matches.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/sc2pulse_patches.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/sc2pulse_seasons.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Tests/StarCraftKitTests/Resources/sc2pulse_streams.json",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"Aligulac/AligulacClientTests.swift",
"Aligulac/AligulacModelTests.swift",
"Blizzard/BlizzardTests.swift",
"Decoding/MatchDecodingTests.swift",
"Decoding/ModelRobustnessTests.swift",
"Networking/CachingTests.swift",
"Networking/NetworkingClientTests.swift",
"Networking/PaginationTests.swift",
"Networking/StarCraftClientTests.swift",
"SC2Pulse/SC2PulseClientTests.swift",
"SC2Pulse/SC2PulseEndpointShapeTests.swift",
"SC2Pulse/SC2PulseModelTests.swift",
"StarCraftKitTests.swift",
"Support/AggregationMocks.swift",
"Support/Fixtures.swift",
"Support/MockURLProtocol.swift",
"Unified/StarCraftFacadeTests.swift",
"Unit/Core/APIErrorTests.swift",
"Unit/Core/CachePolicyTests.swift",
"Unit/Core/RetryConfigurationTests.swift",
"Unit/Models/MatchTests.swift",
"Unit/Models/PaginationInfoTests.swift",
"Unit/Models/PlayerTests.swift",
"Unit/Models/QueryParametersTests.swift"
],
"target_dependencies" : [
"StarCraftKit"
],
"type" : "test"
},
{
"c99name" : "StarCraftKitCLITests",
"module_type" : "SwiftTarget",
"name" : "StarCraftKitCLITests",
"path" : "Tests/StarCraftKitCLITests",
"sources" : [
"ExtensionsTests.swift",
"StarCraftKitCLITests.swift",
"UIEnhancementsTests.swift"
],
"target_dependencies" : [
"StarCraftKitCLI"
],
"type" : "test"
},
{
"c99name" : "StarCraftKitCLI",
"module_type" : "SwiftTarget",
"name" : "StarCraftKitCLI",
"path" : "Sources/StarCraftKitCLI",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"starcraft-cli"
],
"sources" : [
"Commands/AligulacCommands.swift",
"Commands/CacheCommand.swift",
"Commands/DebugCommand.swift",
"Commands/ExportCommand.swift",
"Commands/LeaguesCommand.swift",
"Commands/LiveCommand.swift",
"Commands/MatchesCommand.swift",
"Commands/PlayerMatchesCommand.swift",
"Commands/PlayerScheduleCommand.swift",
"Commands/PlayersCommand.swift",
"Commands/SearchCommand.swift",
"Commands/SeriesCommand.swift",
"Commands/StreamCommand.swift",
"Commands/TeamsCommand.swift",
"Commands/TestCommand.swift",
"Commands/TodayCommand.swift",
"Commands/TournamentMatchesCommand.swift",
"Commands/TournamentsCommand.swift",
"Commands/UnifiedCommands.swift",
"Commands/UpcomingCommand.swift",
"StarCraftCLI.swift",
"Utilities/CLIContext.swift",
"Utilities/OpponentExtensions.swift",
"Utilities/String+Extensions.swift",
"Utilities/UIEnhancements.swift"
],
"target_dependencies" : [
"StarCraftKit"
],
"type" : "executable"
},
{
"c99name" : "StarCraftKit",
"module_type" : "SwiftTarget",
"name" : "StarCraftKit",
"path" : "Sources/StarCraftKit",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"StarCraftKit",
"starcraft-cli"
],
"sources" : [
"Aligulac/AligulacClient.swift",
"Aligulac/AligulacModels.swift",
"Blizzard/BlizzardClient.swift",
"Blizzard/BlizzardModels.swift",
"Core/Cache/ResponseCache.swift",
"Core/Networking/APIError.swift",
"Core/Networking/NetworkingClient.swift",
"Core/Networking/RetryHandler.swift",
"Core/Utilities/DateFormatter+Extensions.swift",
"Endpoints/LeagueEndpoint.swift",
"Endpoints/MatchEndpoint.swift",
"Endpoints/PlayerEndpoint.swift",
"Endpoints/SeriesEndpoint.swift",
"Endpoints/TeamEndpoint.swift",
"Endpoints/TournamentEndpoint.swift",
"Models/API/League.swift",
"Models/API/Match.swift",
"Models/API/PaginationInfo.swift",
"Models/API/Player.swift",
"Models/API/QueryParameters.swift",
"Models/API/QueryValue.swift",
"Models/API/Series.swift",
"Models/API/Team.swift",
"Models/API/Tournament.swift",
"Protocols/APIClientProtocol.swift",
"Protocols/APIRequest.swift",
"Protocols/Endpoint.swift",
"SC2Pulse/SC2PulseClient.swift",
"SC2Pulse/SC2PulseModels.swift",
"StarCraftClient.swift",
"StarCraftKit.swift",
"Unified/StarCraft.swift",
"Unified/StarCraftComposites.swift"
],
"type" : "library"
}
],
"tools_version" : "6.0"
}
android-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:3f0849bce0d177c252f57ff0847fffe59d625aee973279c71a52a43c740d3c90
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.2-latest
Done.