Build Information
Successful build of InfomaniakConcurrency, reference main (55fe75
), with Swift 6.0 for macOS (SPM) on 5 Nov 2024 06:16:57 UTC.
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Infomaniak/swift-concurrency.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Infomaniak/swift-concurrency
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 55fe754 Merge pull request #5 from Infomaniak/asyncReduce
Cloned https://github.com/Infomaniak/swift-concurrency.git
Revision (git rev-parse @):
55fe7541cbfcfb4b73e7836b390e2c566a9ba910
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Infomaniak/swift-concurrency.git at main
========================================
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": "swift-concurrency",
"name": "InfomaniakConcurrency",
"url": "https://github.com/Infomaniak/swift-concurrency.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-concurrency",
"dependencies": [
]
}
]
}
Fetching https://github.com/Infomaniak/swift-concurrency.git
[1/164] Fetching swift-concurrency
Fetched https://github.com/Infomaniak/swift-concurrency.git from cache (0.76s)
Creating working copy for https://github.com/Infomaniak/swift-concurrency.git
Working copy of https://github.com/Infomaniak/swift-concurrency.git resolved at main (55fe754)
warning: '.resolve-product-dependencies': dependency 'swift-concurrency' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/Infomaniak/swift-concurrency.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/12] Compiling InfomaniakConcurrency Collection+asyncMap.swift
[4/13] Compiling InfomaniakConcurrency Collection+asyncForEach.swift
[5/13] Compiling InfomaniakConcurrency Logs.swift
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Internal/Logs.swift:21:24: warning: static property 'subsystem' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | extension Logger {
20 | /// Name of this system
21 | private static var subsystem = "InfomaniakConcurrency"
| |- warning: static property 'subsystem' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'subsystem' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'subsystem' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 |
23 | /// Log channel for the concurrency used
[6/13] Compiling InfomaniakConcurrency Collection+asyncCompactMap.swift
[7/13] Compiling InfomaniakConcurrency ArrayAccumulator.swift
[8/13] Compiling InfomaniakConcurrency Collection+concurrentMap.swift
[9/13] Compiling InfomaniakConcurrency ConcurrencyHeuristic.swift
[10/13] Compiling InfomaniakConcurrency Collection+concurrentForEach.swift
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentForEach.swift:60:35: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
58 | }
59 |
60 | taskGroup.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
61 | try await task(nextElement)
| `- note: closure captures 'nextElement' which is accessible to code in the current task
62 | }
63 | }
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentForEach.swift:68:35: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
66 | while let _ = try await taskGroup.next(),
67 | let nextElement = iterator.next() {
68 | taskGroup.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
69 | try await task(nextElement)
| `- note: closure captures 'nextElement' which is accessible to code in the current task
70 | }
71 | }
[11/13] Compiling InfomaniakConcurrency Collection+concurrentCompactMap.swift
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentCompactMap.swift:89:45: warning: non-sendable type '[Output]' in implicitly asynchronous access to actor-isolated property 'compactAccumulation' cannot cross actor boundary; this is an error in the Swift 6 language mode
45 | /// - transform: The operation to be applied to the `Collection` of items
46 | /// - Returns: An ordered processed collection of the desired type, containing non nil values.
47 | func concurrentCompactMap<Input, Output>(
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
48 | customConcurrency: Int?,
49 | transform: @escaping @Sendable (_ item: Input) async throws -> Output?
:
87 |
88 | // Get the accumulated results.
89 | let accumulated = await accumulator.compactAccumulation
| `- warning: non-sendable type '[Output]' in implicitly asynchronous access to actor-isolated property 'compactAccumulation' cannot cross actor boundary; this is an error in the Swift 6 language mode
90 | return accumulated
91 | }
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentCompactMap.swift:69:27: warning: task-isolated value of type '() async throws -> Void' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
67 | }
68 |
69 | taskGroup.addTask {
| `- warning: task-isolated value of type '() async throws -> Void' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
70 | let result = try await transform(nextEnumeration.1)
71 | try await accumulator.set(item: result, atIndex: nextEnumeration.0)
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentCompactMap.swift:78:27: warning: task-isolated value of type '() async throws -> Void' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
76 | while let _ = try await taskGroup.next(),
77 | let nextEnumeration = enumeratedIterator.next() {
78 | taskGroup.addTask {
| `- warning: task-isolated value of type '() async throws -> Void' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
79 | let result = try await transform(nextEnumeration.1)
80 | try await accumulator.set(item: result, atIndex: nextEnumeration.0)
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentCompactMap.swift:71:43: warning: sending 'result' risks causing data races; this is an error in the Swift 6 language mode
69 | taskGroup.addTask {
70 | let result = try await transform(nextEnumeration.1)
71 | try await accumulator.set(item: result, atIndex: nextEnumeration.0)
| |- warning: sending 'result' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'result' to actor-isolated instance method 'set(item:atIndex:)' risks causing data races between actor-isolated and task-isolated uses
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Collection+concurrentCompactMap.swift:80:43: warning: sending 'result' risks causing data races; this is an error in the Swift 6 language mode
78 | taskGroup.addTask {
79 | let result = try await transform(nextEnumeration.1)
80 | try await accumulator.set(item: result, atIndex: nextEnumeration.0)
| |- warning: sending 'result' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'result' to actor-isolated instance method 'set(item:atIndex:)' risks causing data races between actor-isolated and task-isolated uses
81 | }
82 | }
[12/13] Emitting module InfomaniakConcurrency
/Users/admin/builder/spi-builder-workspace/Sources/InfomaniakConcurrency/Internal/Logs.swift:21:24: warning: static property 'subsystem' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | extension Logger {
20 | /// Name of this system
21 | private static var subsystem = "InfomaniakConcurrency"
| |- warning: static property 'subsystem' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'subsystem' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'subsystem' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 |
23 | /// Log channel for the concurrency used
[13/13] Compiling InfomaniakConcurrency Collection+asyncReduce.swift
Build complete! (13.80s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "InfomaniakConcurrency",
"name" : "InfomaniakConcurrency",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
},
{
"name" : "tvos",
"version" : "13.0"
}
],
"products" : [
{
"name" : "InfomaniakConcurrency",
"targets" : [
"InfomaniakConcurrency"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "InfomaniakConcurrencyTests",
"module_type" : "SwiftTarget",
"name" : "InfomaniakConcurrencyTests",
"path" : "Tests/InfomaniakConcurrencyTests",
"sources" : [
"TestHelper.swift",
"UTCollection+async.swift",
"UTCollection+concurrentCompactMap.swift",
"UTCollection+concurrentForEach.swift",
"UTCollection+concurrentMap.swift"
],
"target_dependencies" : [
"InfomaniakConcurrency"
],
"type" : "test"
},
{
"c99name" : "InfomaniakConcurrency",
"module_type" : "SwiftTarget",
"name" : "InfomaniakConcurrency",
"path" : "Sources/InfomaniakConcurrency",
"product_memberships" : [
"InfomaniakConcurrency"
],
"sources" : [
"Collection+concurrentCompactMap.swift",
"Collection+concurrentForEach.swift",
"Collection+concurrentMap.swift",
"Internal/ArrayAccumulator.swift",
"Internal/ConcurrencyHeuristic.swift",
"Internal/Logs.swift",
"Serial/Collection+asyncCompactMap.swift",
"Serial/Collection+asyncForEach.swift",
"Serial/Collection+asyncMap.swift",
"Serial/Collection+asyncReduce.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/infomaniak/swift-concurrency/main
Repository: Infomaniak/swift-concurrency
Swift version used: 6.0
Target: InfomaniakConcurrency
Extracting symbol information for 'InfomaniakConcurrency'...
Finished extracting symbol information for 'InfomaniakConcurrency'. (3.42s)
Building documentation for 'InfomaniakConcurrency'...
Finished building documentation for 'InfomaniakConcurrency' (0.14s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/infomaniak/swift-concurrency/main
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2038] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.32s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (0.67s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3153] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.27s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.69s)
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/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Building for debugging...
[0/8] Write sources
[3/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--7754E27361AE5C74.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling SymbolKit Relationship.swift
[8/57] Compiling SymbolKit RelationshipKind.swift
[9/57] Compiling SymbolKit SourceOrigin.swift
[10/57] Compiling SymbolKit GenericConstraints.swift
[11/57] Compiling SymbolKit Swift.swift
[12/57] Compiling SymbolKit Symbol.swift
[13/57] Compiling SymbolKit SymbolKind.swift
[14/57] Compiling SymbolKit SymbolGraph.swift
[15/57] Compiling SymbolKit GraphCollector.swift
[16/57] Compiling SymbolKit Identifier.swift
[17/57] Compiling SymbolKit KindIdentifier.swift
[18/57] Compiling SymbolKit Location.swift
[19/57] Compiling SymbolKit Mutability.swift
[20/57] Compiling SymbolKit SemanticVersion.swift
[21/57] Compiling SymbolKit AccessControl.swift
[22/57] Compiling SymbolKit Availability.swift
[23/57] Compiling SymbolKit AvailabilityItem.swift
[24/57] Compiling SymbolKit Domain.swift
[25/57] Emitting module Snippets
[26/57] Compiling Snippets SnippetParser.swift
[27/57] Compiling Snippets Snippet.swift
[28/57] Compiling SymbolKit Mixin+Equals.swift
[29/57] Compiling SymbolKit Mixin+Hash.swift
[30/57] Compiling SymbolKit Mixin.swift
[31/57] Compiling SymbolKit LineList.swift
[32/57] Compiling SymbolKit Position.swift
[33/57] Compiling SymbolKit SourceRange.swift
[34/57] Compiling SymbolKit Metadata.swift
[35/57] Compiling SymbolKit Module.swift
[36/57] Compiling SymbolKit OperatingSystem.swift
[37/57] Compiling SymbolKit Platform.swift
[38/57] Compiling SymbolKit GenericConstraint.swift
[39/57] Compiling SymbolKit GenericParameter.swift
[40/57] Compiling SymbolKit Generics.swift
[41/57] Compiling SymbolKit Namespace.swift
[42/57] Compiling SymbolKit DeclarationFragments.swift
[43/57] Compiling SymbolKit Fragment.swift
[44/57] Compiling SymbolKit FragmentKind.swift
[45/57] Compiling SymbolKit FunctionParameter.swift
[46/57] Compiling SymbolKit FunctionSignature.swift
[47/57] Compiling SymbolKit Names.swift
[48/57] Compiling SymbolKit SPI.swift
[49/57] Compiling SymbolKit Snippet.swift
[50/57] Compiling SymbolKit Extension.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Emitting module snippet_extract
[57/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.72s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
[2/11] Compiling InfomaniakConcurrency Collection+concurrentForEach.swift
[3/11] Compiling InfomaniakConcurrency Collection+asyncMap.swift
[4/11] Compiling InfomaniakConcurrency Collection+asyncCompactMap.swift
[5/11] Compiling InfomaniakConcurrency Collection+asyncForEach.swift
[6/12] Compiling InfomaniakConcurrency Logs.swift
[7/12] Compiling InfomaniakConcurrency Collection+concurrentMap.swift
[8/12] Compiling InfomaniakConcurrency Collection+concurrentCompactMap.swift
[9/12] Compiling InfomaniakConcurrency ConcurrencyHeuristic.swift
[10/12] Compiling InfomaniakConcurrency ArrayAccumulator.swift
[11/12] Emitting module InfomaniakConcurrency
[12/12] Compiling InfomaniakConcurrency Collection+asyncReduce.swift
Build of target: 'InfomaniakConcurrency' complete! (1.23s)
80
2 /Users/admin/builder/spi-builder-workspace/.docs/infomaniak/swift-concurrency/main
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/infomaniak/swift-concurrency/main
File count: 80
Doc size: 2.0MB
Preparing doc bundle ...
Uploading prod-infomaniak-swift-concurrency-main-c3a12f89.zip to s3://spi-docs-inbox/prod-infomaniak-swift-concurrency-main-c3a12f89.zip
Copying... [19%]
Copying... [37%]
Copying... [56%]
Copying... [74%]
Copying... [93%]
Copying... [100%]
Done.