Build Information
Successful build of ignorio, reference master (f0fcd1
), with Swift 6.1 for macOS (SPM) on 24 Apr 2025 09:18:59 UTC.
Swift 6 data race errors: 5
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/josefdolezal/ignorio.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/josefdolezal/ignorio
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at f0fcd1e Remove badges
Cloned https://github.com/josefdolezal/ignorio.git
Revision (git rev-parse @):
f0fcd1e3ffb28aeb917098abd89ac0ea4daba747
SUCCESS checkout https://github.com/josefdolezal/ignorio.git at master
Fetching https://github.com/apple/swift-argument-parser from cache
Fetched https://github.com/apple/swift-argument-parser from cache (0.70s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.1.2 (1.34s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.1.2
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "ignorio",
"name": "ignorio",
"url": "https://github.com/josefdolezal/ignorio.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ignorio",
"dependencies": [
]
}
]
}
Fetching https://github.com/josefdolezal/ignorio.git
[1/252] Fetching ignorio
Fetched https://github.com/josefdolezal/ignorio.git from cache (0.97s)
Creating working copy for https://github.com/josefdolezal/ignorio.git
Working copy of https://github.com/josefdolezal/ignorio.git resolved at master (f0fcd1e)
warning: '.resolve-product-dependencies': dependency 'ignorio' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/josefdolezal/ignorio.git
https://github.com/josefdolezal/ignorio.git
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.1.2",
"upper_bound" : "1.2.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
}
],
"manifest_display_name" : "ignorio",
"name" : "ignorio",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "IgnorioKit",
"targets" : [
"IgnorioKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ignorio",
"targets" : [
"ignorio"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "ignorio",
"module_type" : "SwiftTarget",
"name" : "ignorio",
"path" : "Sources/ignorio",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"ignorio"
],
"sources" : [
"Commands/Generate.swift",
"Commands/List.swift",
"Commands/Search.swift",
"Ignorio.swift",
"IgnorioError.swift"
],
"target_dependencies" : [
"IgnorioKit"
],
"type" : "executable"
},
{
"c99name" : "IgnorioKitTests",
"module_type" : "SwiftTarget",
"name" : "IgnorioKitTests",
"path" : "Tests/IgnorioKitTests",
"sources" : [
"APIActionsTests.swift",
"ContentValidations/UnknownTypesValidatorTests.swift"
],
"target_dependencies" : [
"IgnorioKit"
],
"type" : "test"
},
{
"c99name" : "IgnorioKit",
"module_type" : "SwiftTarget",
"name" : "IgnorioKit",
"path" : "Sources/IgnorioKit",
"product_memberships" : [
"IgnorioKit",
"ignorio"
],
"sources" : [
"ContentValidations/UnknownTypesValidator.swift",
"GitIgnoreIOService.swift",
"HttpClient.swift",
"IgnorioKitError.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/9] Write sources
[2/9] Write ignorio-entitlement.plist
[5/9] Write swift-version-2F0A5646E1D333AE.txt
[7/16] Emitting module ArgumentParserToolInfo
[8/16] Compiling ArgumentParserToolInfo ToolInfo.swift
[9/53] Compiling ArgumentParser OptionGroup.swift
[10/53] Compiling ArgumentParser AsyncParsableCommand.swift
[11/53] Compiling ArgumentParser CommandConfiguration.swift
[12/53] Compiling ArgumentParser EnumerableFlag.swift
[13/56] Emitting module ArgumentParser
[14/56] Compiling ArgumentParser InputOrigin.swift
[15/56] Compiling ArgumentParser Name.swift
[16/56] Compiling ArgumentParser Parsed.swift
[17/56] Compiling ArgumentParser ParsedValues.swift
[18/56] Compiling ArgumentParser BashCompletionsGenerator.swift
[19/56] Compiling ArgumentParser CompletionsGenerator.swift
[20/56] Compiling ArgumentParser FishCompletionsGenerator.swift
[21/56] Compiling ArgumentParser ZshCompletionsGenerator.swift
[22/56] Compiling ArgumentParser SequenceExtensions.swift
[23/56] Compiling ArgumentParser StringExtensions.swift
[24/56] Compiling ArgumentParser Tree.swift
[25/56] Compiling ArgumentParser ExpressibleByArgument.swift
[26/56] Compiling ArgumentParser ParsableArguments.swift
[27/56] Compiling ArgumentParser ParsableArgumentsValidation.swift
[28/56] Compiling ArgumentParser ParsableCommand.swift
[29/56] Compiling ArgumentParser Argument.swift
[30/56] Compiling ArgumentParser ArgumentHelp.swift
[31/56] Compiling ArgumentParser ArgumentVisibility.swift
[32/56] Compiling ArgumentParser CompletionKind.swift
[33/56] Compiling ArgumentParser Errors.swift
[34/56] Compiling ArgumentParser Flag.swift
[35/56] Compiling ArgumentParser NameSpecification.swift
[36/56] Compiling ArgumentParser Option.swift
[37/56] Compiling ArgumentParser ArgumentDecoder.swift
[38/56] Compiling ArgumentParser ArgumentDefinition.swift
[39/56] Compiling ArgumentParser ArgumentSet.swift
[40/56] Compiling ArgumentParser CommandParser.swift
[41/56] Compiling IgnorioKit IgnorioKitError.swift
[42/56] Compiling IgnorioKit GitIgnoreIOService.swift
[43/56] Emitting module IgnorioKit
/Users/admin/builder/spi-builder-workspace/Sources/IgnorioKit/HttpClient.swift:6:23: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'HttpClient' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct HttpClient {
| `- note: consider making struct 'HttpClient' conform to the 'Sendable' protocol
4 | public var get: (_ url: URL) async throws -> Data
5 |
6 | public static let live: HttpClient = .init(
| |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'HttpClient' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | get: { url in
8 | let (data, _) = try await URLSession.shared.data(from: url)
[44/56] Compiling IgnorioKit HttpClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/IgnorioKit/HttpClient.swift:6:23: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'HttpClient' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct HttpClient {
| `- note: consider making struct 'HttpClient' conform to the 'Sendable' protocol
4 | public var get: (_ url: URL) async throws -> Data
5 |
6 | public static let live: HttpClient = .init(
| |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'HttpClient' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | get: { url in
8 | let (data, _) = try await URLSession.shared.data(from: url)
[45/56] Compiling IgnorioKit UnknownTypesValidator.swift
[46/56] Compiling ArgumentParser ParserError.swift
[47/56] Compiling ArgumentParser SplitArguments.swift
[48/56] Compiling ArgumentParser DumpHelpGenerator.swift
[49/56] Compiling ArgumentParser HelpCommand.swift
[50/56] Compiling ArgumentParser HelpGenerator.swift
[51/56] Compiling ArgumentParser MessageInfo.swift
[52/56] Compiling ArgumentParser UsageGenerator.swift
[53/56] Compiling ArgumentParser CollectionExtensions.swift
[54/62] Compiling ignorio IgnorioError.swift
[55/62] Compiling ignorio List.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/List.swift:6:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | extension Ignorio {
5 | struct List: AsyncParsableCommand {
6 | static var configuration: CommandConfiguration = .init(
| |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | abstract: "List all supported types by gitignore.io"
8 | )
[56/62] Compiling ignorio Ignorio.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Ignorio.swift:5:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | @main
4 | struct Ignorio: AsyncParsableCommand {
5 | static var configuration = CommandConfiguration(
| |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | abstract: "Command line interface for gitignore.io",
7 | version: "0.2.0",
[57/62] Compiling ignorio Search.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Search.swift:6:20: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
4 | extension Ignorio {
5 | struct Search: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
7 | abstract: "Search supported types by query"
8 | )
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Search.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
1 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
2 | import IgnorioKit
3 |
4 | extension Ignorio {
5 | struct Search: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | abstract: "Search supported types by query"
8 | )
[58/62] Emitting module ignorio
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Generate.swift:6:20: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
4 | extension Ignorio {
5 | struct Generate: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
7 | abstract: "Generate .gitignore template for given collection of types"
8 | )
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Generate.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
1 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
2 | import IgnorioKit
3 |
4 | extension Ignorio {
5 | struct Generate: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | abstract: "Generate .gitignore template for given collection of types"
8 | )
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/List.swift:6:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | extension Ignorio {
5 | struct List: AsyncParsableCommand {
6 | static var configuration: CommandConfiguration = .init(
| |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | abstract: "List all supported types by gitignore.io"
8 | )
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Search.swift:6:20: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
4 | extension Ignorio {
5 | struct Search: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
7 | abstract: "Search supported types by query"
8 | )
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Search.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
1 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
2 | import IgnorioKit
3 |
4 | extension Ignorio {
5 | struct Search: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | abstract: "Search supported types by query"
8 | )
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Ignorio.swift:5:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | @main
4 | struct Ignorio: AsyncParsableCommand {
5 | static var configuration = CommandConfiguration(
| |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | abstract: "Command line interface for gitignore.io",
7 | version: "0.2.0",
[59/62] Compiling ignorio Generate.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Generate.swift:6:20: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
4 | extension Ignorio {
5 | struct Generate: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
7 | abstract: "Generate .gitignore template for given collection of types"
8 | )
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/Generate.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
1 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
2 | import IgnorioKit
3 |
4 | extension Ignorio {
5 | struct Generate: AsyncParsableCommand {
6 | static let configuration: CommandConfiguration = .init(
| |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | abstract: "Generate .gitignore template for given collection of types"
8 | )
[59/62] Write Objects.LinkFileList
[60/62] Linking ignorio
[61/62] Applying ignorio
Build complete! (6.37s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.1.2",
"upper_bound" : "1.2.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
}
],
"manifest_display_name" : "ignorio",
"name" : "ignorio",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "IgnorioKit",
"targets" : [
"IgnorioKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ignorio",
"targets" : [
"ignorio"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "ignorio",
"module_type" : "SwiftTarget",
"name" : "ignorio",
"path" : "Sources/ignorio",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"ignorio"
],
"sources" : [
"Commands/Generate.swift",
"Commands/List.swift",
"Commands/Search.swift",
"Ignorio.swift",
"IgnorioError.swift"
],
"target_dependencies" : [
"IgnorioKit"
],
"type" : "executable"
},
{
"c99name" : "IgnorioKitTests",
"module_type" : "SwiftTarget",
"name" : "IgnorioKitTests",
"path" : "Tests/IgnorioKitTests",
"sources" : [
"APIActionsTests.swift",
"ContentValidations/UnknownTypesValidatorTests.swift"
],
"target_dependencies" : [
"IgnorioKit"
],
"type" : "test"
},
{
"c99name" : "IgnorioKit",
"module_type" : "SwiftTarget",
"name" : "IgnorioKit",
"path" : "Sources/IgnorioKit",
"product_memberships" : [
"IgnorioKit",
"ignorio"
],
"sources" : [
"ContentValidations/UnknownTypesValidator.swift",
"GitIgnoreIOService.swift",
"HttpClient.swift",
"IgnorioKitError.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.