Build Information
Successful build of AirbnbSwift, reference master (a5f2dc
), with Swift 6.1 for Android on 14 Jun 2025 21:06:22 UTC.
Swift 6 data race errors: 2
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/airbnb/swift.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/airbnb/swift
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at a5f2dc3 Add table of contents link to Testing section
Cloned https://github.com/airbnb/swift.git
Revision (git rev-parse @):
a5f2dc382c3b4a444f269b69e7079954c99b69f4
SUCCESS checkout https://github.com/airbnb/swift.git at master
========================================
Build
========================================
Selected platform: android
Swift version: 6.1
Building package at path: $PWD
https://github.com/airbnb/swift.git
https://github.com/airbnb/swift.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
}
],
"manifest_display_name" : "AirbnbSwift",
"name" : "AirbnbSwift",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "FormatSwift",
"targets" : [
"FormatSwift"
],
"type" : {
"plugin" : null
}
},
{
"name" : "AirbnbSwiftFormatTool",
"targets" : [
"AirbnbSwiftFormatTool"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "swiftformat",
"module_type" : "BinaryTarget",
"name" : "swiftformat",
"path" : "remote/archive/SwiftFormat.artifactbundle.zip",
"product_memberships" : [
"FormatSwift"
],
"sources" : [
],
"type" : "binary"
},
{
"c99name" : "SwiftLintBinary",
"module_type" : "BinaryTarget",
"name" : "SwiftLintBinary",
"path" : "remote/archive/SwiftLintBinary-macos.artifactbundle.zip",
"product_memberships" : [
"FormatSwift"
],
"sources" : [
],
"type" : "binary"
},
{
"c99name" : "FormatSwift",
"module_type" : "PluginTarget",
"name" : "FormatSwift",
"path" : "Plugins/FormatSwift",
"plugin_capability" : {
"intent" : {
"description" : "Formats Swift source files according to the Airbnb Swift Style Guide",
"type" : "custom",
"verb" : "format"
},
"permissions" : [
{
"network_scope" : {
"none" : {
}
},
"reason" : "Format Swift source files",
"type" : "writeToPackageDirectory"
}
],
"type" : "command"
},
"product_memberships" : [
"FormatSwift"
],
"sources" : [
"CommandContext.swift",
"Plugin.swift"
],
"target_dependencies" : [
"AirbnbSwiftFormatTool",
"swiftformat",
"SwiftLintBinary"
],
"type" : "plugin"
},
{
"c99name" : "AirbnbSwiftFormatToolTests",
"module_type" : "SwiftTarget",
"name" : "AirbnbSwiftFormatToolTests",
"path" : "Tests/AirbnbSwiftFormatToolTests",
"sources" : [
"AirbnbSwiftFormatToolTests.swift"
],
"target_dependencies" : [
"AirbnbSwiftFormatTool"
],
"type" : "test"
},
{
"c99name" : "AirbnbSwiftFormatTool",
"module_type" : "SwiftTarget",
"name" : "AirbnbSwiftFormatTool",
"path" : "Sources/AirbnbSwiftFormatTool",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"FormatSwift",
"AirbnbSwiftFormatTool"
],
"resources" : [
{
"path" : "/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/airbnb.swiftformat",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/swiftlint.yml",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AirbnbSwiftFormatTool.swift",
"Command.swift"
],
"type" : "executable"
}
],
"tools_version" : "5.6"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:53019eca44ba8cce4deef66552e72c09c078a8a7314109c78012ab10170a991e
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Fetching https://github.com/apple/swift-argument-parser
[1/15380] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser from cache (0.84s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.5.1 (1.29s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.5.1
Downloading binary artifact https://github.com/realm/SwiftLint/releases/download/0.55.1/SwiftLintBinary-macos.artifactbundle.zip
Downloading binary artifact https://github.com/calda/SwiftFormat-nightly/releases/download/2025-06-13-b/SwiftFormat.artifactbundle.zip
[1369/11034045] Downloading https://github.com/realm/SwiftLint/releases/download/0.55.1/SwiftLintBinary-macos.artifactbundle.zip
[17753/56610037] Downloading https://github.com/realm/SwiftLint/releases/download/0.55.1/SwiftLintBinary-macos.artifactbundle.zip, https://github.com/calda/SwiftFormat-nightly/releases/download/2025-06-13-b/SwiftFormat.artifactbundle.zip
Downloaded https://github.com/realm/SwiftLint/releases/download/0.55.1/SwiftLintBinary-macos.artifactbundle.zip (1.20s)
Downloaded https://github.com/calda/SwiftFormat-nightly/releases/download/2025-06-13-b/SwiftFormat.artifactbundle.zip (3.83s)
/host/spi-builder-workspace/Plugins/FormatSwift/Plugin.swift:52:13: warning: 'launchPath' is deprecated: renamed to 'executableURL'
50 |
51 | let process = Process()
52 | process.launchPath = launchPath
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
53 | process.arguments = arguments
54 | try process.run()
[1/1] Compiling plugin FormatSwift
[2/2] Compiling plugin GenerateManual
Building for debugging...
[2/23] Copying airbnb.swiftformat
[2/23] Copying swiftlint.yml
[2/23] Write sources
[2/23] Copying swiftlint.yml
[3/23] Copying airbnb.swiftformat
[3/23] Write sources
[12/23] Write swift-version-24593BA9C3E375BF.txt
[14/27] Emitting module ArgumentParserToolInfo
[15/27] Compiling ArgumentParserToolInfo ToolInfo.swift
[16/28] Emitting module ArgumentParserToolInfo
[17/28] Compiling ArgumentParserToolInfo ToolInfo.swift
[19/29] Wrapping AST for ArgumentParserToolInfo for debugging
[22/105] Emitting module ArgumentParser
[23/110] Compiling ArgumentParser ArgumentVisibility.swift
[24/110] Compiling ArgumentParser CompletionKind.swift
[25/110] Compiling ArgumentParser Errors.swift
[26/110] Compiling ArgumentParser Flag.swift
[27/110] Compiling ArgumentParser NameSpecification.swift
[28/110] Compiling ArgumentParser Option.swift
[29/110] Compiling ArgumentParser ArgumentDefinition.swift
[30/110] Compiling ArgumentParser ArgumentSet.swift
[31/110] Compiling ArgumentParser CommandParser.swift
[32/110] Compiling ArgumentParser InputKey.swift
[33/110] Compiling ArgumentParser InputOrigin.swift
[34/110] Compiling ArgumentParser ExpressibleByArgument.swift
[35/110] Compiling ArgumentParser ParsableArguments.swift
[36/110] Compiling ArgumentParser ParsableArgumentsValidation.swift
[37/110] Compiling ArgumentParser ParsableCommand.swift
[38/110] Compiling ArgumentParser ArgumentDecoder.swift
[39/110] Compiling ArgumentParser Name.swift
[40/110] Compiling ArgumentParser Parsed.swift
[41/110] Compiling ArgumentParser ParsedValues.swift
[42/110] Compiling ArgumentParser ParserError.swift
[43/110] Compiling ArgumentParser SplitArguments.swift
[44/110] Compiling ArgumentParser CollectionExtensions.swift
[45/110] Compiling ArgumentParser Platform.swift
[46/110] Compiling ArgumentParser SequenceExtensions.swift
[47/110] Compiling ArgumentParser StringExtensions.swift
[48/110] Compiling ArgumentParser Tree.swift
[49/110] Emitting module ArgumentParser
[61/115] Compiling ArgumentParser ArgumentVisibility.swift
[62/115] Compiling ArgumentParser CompletionKind.swift
[63/115] Compiling ArgumentParser Errors.swift
[64/115] Compiling ArgumentParser Flag.swift
[65/115] Compiling ArgumentParser NameSpecification.swift
[66/115] Compiling ArgumentParser Option.swift
[67/115] Compiling ArgumentParser OptionGroup.swift
[68/115] Compiling ArgumentParser AsyncParsableCommand.swift
[69/115] Compiling ArgumentParser CommandConfiguration.swift
[70/115] Compiling ArgumentParser CommandGroup.swift
[71/115] Compiling ArgumentParser EnumerableFlag.swift
[72/115] Compiling ArgumentParser DumpHelpGenerator.swift
[73/115] Compiling ArgumentParser HelpCommand.swift
[74/115] Compiling ArgumentParser HelpGenerator.swift
[75/115] Compiling ArgumentParser MessageInfo.swift
[76/115] Compiling ArgumentParser UsageGenerator.swift
[87/116] Wrapping AST for ArgumentParser for debugging
[89/120] Compiling AirbnbSwiftFormatTool resource_bundle_accessor.swift
[90/120] Compiling AirbnbSwiftFormatTool Command.swift
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:12:14: warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// This property can be overridden to provide a mock implementation in unit tests.
12 | static var runCommand: (Command) throws -> Int32 = { try $0.executeShellCommand() }
| |- warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'runCommand' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'runCommand' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | let log: Bool
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:29:13: warning: 'launchPath' is deprecated: renamed to 'executableURL'
27 | private func executeShellCommand() throws -> Int32 {
28 | let process = Process()
29 | process.launchPath = launchPath
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
30 | process.arguments = arguments
31 |
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:40:33: warning: 'launchPath' is deprecated: renamed to 'executableURL'
38 |
39 | if log {
40 | let commandName = process.launchPath?.components(separatedBy: "/").last ?? "unknown"
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
41 | log("\(commandName) command completed with exit code \(process.terminationStatus)")
42 | }
[91/120] Compiling AirbnbSwiftFormatTool AirbnbSwiftFormatTool.swift
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/AirbnbSwiftFormatTool.swift:157:22: warning: 'launchPath' is deprecated: renamed to 'executableURL'
155 | extension Process {
156 | var shellCommand: String {
157 | let launchPath = launchPath ?? ""
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
158 | let arguments = arguments ?? []
159 | return "\(launchPath) \(arguments.joined(separator: " "))"
[92/120] Emitting module AirbnbSwiftFormatTool
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:12:14: warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// This property can be overridden to provide a mock implementation in unit tests.
12 | static var runCommand: (Command) throws -> Int32 = { try $0.executeShellCommand() }
| |- warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'runCommand' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'runCommand' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | let log: Bool
[93/121] Wrapping AST for AirbnbSwiftFormatTool for debugging
[94/121] Write Objects.LinkFileList
[95/121] Linking AirbnbSwiftFormatTool-tool
[97/121] Compiling ArgumentParser CollectionExtensions.swift
[98/121] Compiling ArgumentParser Platform.swift
[99/121] Compiling ArgumentParser SequenceExtensions.swift
[100/121] Compiling ArgumentParser StringExtensions.swift
[101/121] Compiling ArgumentParser Tree.swift
[118/122] Wrapping AST for ArgumentParser for debugging
[120/126] Compiling AirbnbSwiftFormatTool resource_bundle_accessor.swift
[121/126] Emitting module AirbnbSwiftFormatTool
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:12:14: warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// This property can be overridden to provide a mock implementation in unit tests.
12 | static var runCommand: (Command) throws -> Int32 = { try $0.executeShellCommand() }
| |- warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'runCommand' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'runCommand' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | let log: Bool
[122/126] Compiling AirbnbSwiftFormatTool Command.swift
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:12:14: warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// This property can be overridden to provide a mock implementation in unit tests.
12 | static var runCommand: (Command) throws -> Int32 = { try $0.executeShellCommand() }
| |- warning: static property 'runCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'runCommand' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'runCommand' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | let log: Bool
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:29:13: warning: 'launchPath' is deprecated: renamed to 'executableURL'
27 | private func executeShellCommand() throws -> Int32 {
28 | let process = Process()
29 | process.launchPath = launchPath
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
30 | process.arguments = arguments
31 |
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/Command.swift:40:33: warning: 'launchPath' is deprecated: renamed to 'executableURL'
38 |
39 | if log {
40 | let commandName = process.launchPath?.components(separatedBy: "/").last ?? "unknown"
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
41 | log("\(commandName) command completed with exit code \(process.terminationStatus)")
42 | }
[123/126] Compiling AirbnbSwiftFormatTool AirbnbSwiftFormatTool.swift
/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/AirbnbSwiftFormatTool.swift:157:22: warning: 'launchPath' is deprecated: renamed to 'executableURL'
155 | extension Process {
156 | var shellCommand: String {
157 | let launchPath = launchPath ?? ""
| |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
| `- note: use 'executableURL' instead
158 | let arguments = arguments ?? []
159 | return "\(launchPath) \(arguments.joined(separator: " "))"
[124/127] Wrapping AST for AirbnbSwiftFormatTool for debugging
[125/127] Write Objects.LinkFileList
[126/127] Linking AirbnbSwiftFormatTool
Build complete! (22.86s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
}
],
"manifest_display_name" : "AirbnbSwift",
"name" : "AirbnbSwift",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "FormatSwift",
"targets" : [
"FormatSwift"
],
"type" : {
"plugin" : null
}
},
{
"name" : "AirbnbSwiftFormatTool",
"targets" : [
"AirbnbSwiftFormatTool"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "swiftformat",
"module_type" : "BinaryTarget",
"name" : "swiftformat",
"path" : "remote/archive/SwiftFormat.artifactbundle.zip",
"product_memberships" : [
"FormatSwift"
],
"sources" : [
],
"type" : "binary"
},
{
"c99name" : "SwiftLintBinary",
"module_type" : "BinaryTarget",
"name" : "SwiftLintBinary",
"path" : "remote/archive/SwiftLintBinary-macos.artifactbundle.zip",
"product_memberships" : [
"FormatSwift"
],
"sources" : [
],
"type" : "binary"
},
{
"c99name" : "FormatSwift",
"module_type" : "PluginTarget",
"name" : "FormatSwift",
"path" : "Plugins/FormatSwift",
"plugin_capability" : {
"intent" : {
"description" : "Formats Swift source files according to the Airbnb Swift Style Guide",
"type" : "custom",
"verb" : "format"
},
"permissions" : [
{
"network_scope" : {
"none" : {
}
},
"reason" : "Format Swift source files",
"type" : "writeToPackageDirectory"
}
],
"type" : "command"
},
"product_memberships" : [
"FormatSwift"
],
"sources" : [
"CommandContext.swift",
"Plugin.swift"
],
"target_dependencies" : [
"AirbnbSwiftFormatTool",
"swiftformat",
"SwiftLintBinary"
],
"type" : "plugin"
},
{
"c99name" : "AirbnbSwiftFormatToolTests",
"module_type" : "SwiftTarget",
"name" : "AirbnbSwiftFormatToolTests",
"path" : "Tests/AirbnbSwiftFormatToolTests",
"sources" : [
"AirbnbSwiftFormatToolTests.swift"
],
"target_dependencies" : [
"AirbnbSwiftFormatTool"
],
"type" : "test"
},
{
"c99name" : "AirbnbSwiftFormatTool",
"module_type" : "SwiftTarget",
"name" : "AirbnbSwiftFormatTool",
"path" : "Sources/AirbnbSwiftFormatTool",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"FormatSwift",
"AirbnbSwiftFormatTool"
],
"resources" : [
{
"path" : "/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/airbnb.swiftformat",
"rule" : {
"process" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Sources/AirbnbSwiftFormatTool/swiftlint.yml",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AirbnbSwiftFormatTool.swift",
"Command.swift"
],
"type" : "executable"
}
],
"tools_version" : "5.6"
}
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:53019eca44ba8cce4deef66552e72c09c078a8a7314109c78012ab10170a991e
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Done.