Build Information
Successful build of SwiftCoroutine, reference master (afd91f
), with Swift 6.1 for macOS (SPM) on 26 Apr 2025 12:56:02 UTC.
Swift 6 data race errors: 2
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/belozierov/SwiftCoroutine.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/belozierov/SwiftCoroutine
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at afd91ff - updated versions
Cloned https://github.com/belozierov/SwiftCoroutine.git
Revision (git rev-parse @):
afd91ff068e96814beea27f5990c813d7261ebef
SUCCESS checkout https://github.com/belozierov/SwiftCoroutine.git at master
========================================
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": "swiftcoroutine",
"name": "SwiftCoroutine",
"url": "https://github.com/belozierov/SwiftCoroutine.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftCoroutine",
"dependencies": [
]
}
]
}
Fetching https://github.com/belozierov/SwiftCoroutine.git
[1/4800] Fetching swiftcoroutine
Fetched https://github.com/belozierov/SwiftCoroutine.git from cache (1.22s)
Creating working copy for https://github.com/belozierov/SwiftCoroutine.git
Working copy of https://github.com/belozierov/SwiftCoroutine.git resolved at master (afd91ff)
warning: '.resolve-product-dependencies': dependency 'swiftcoroutine' 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/belozierov/SwiftCoroutine.git
https://github.com/belozierov/SwiftCoroutine.git
{
"dependencies" : [
],
"manifest_display_name" : "SwiftCoroutine",
"name" : "SwiftCoroutine",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SwiftCoroutine",
"targets" : [
"CCoroutine",
"SwiftCoroutine"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftCoroutineTests",
"module_type" : "SwiftTarget",
"name" : "SwiftCoroutineTests",
"path" : "Tests/SwiftCoroutineTests",
"sources" : [
"CoChannel/BufferedChannelTests.swift",
"CoChannel/CoChannelCombineTests.swift",
"CoChannel/CoChannelTests.swift",
"CoChannel/ConflatedChannelTests.swift",
"CoFutureTests/CoFutureAwaitTests.swift",
"CoFutureTests/CoFutureCancelTests.swift",
"CoFutureTests/CoFutureCombineTests.swift",
"CoFutureTests/CoFutureFlatMapTests.swift",
"CoFutureTests/CoFutureTests.swift",
"CoFutureTests/CoPromiseTests.swift",
"CoScope/CoScopeTests.swift",
"Coroutine/CoroutineCancelTests.swift",
"Coroutine/CoroutineContextTests.swift",
"Coroutine/CoroutineDispatcherTests.swift",
"Coroutine/CoroutineSchedulerTests.swift",
"Coroutine/CoroutineTests.swift",
"Extensions/URL+Extensions.swift",
"Extensions/XCTAssertContains.swift",
"Extensions/XCTOrderedExpectation.swift",
"Helpers/StorageTests.swift",
"Helpers/TaggedPointerTests.swift",
"Helpers/TestAtomic.swift",
"Helpers/TestFifoQueue.swift",
"Helpers/URLSessionTests.swift"
],
"target_dependencies" : [
"SwiftCoroutine"
],
"type" : "test"
},
{
"c99name" : "SwiftCoroutine",
"module_type" : "SwiftTarget",
"name" : "SwiftCoroutine",
"path" : "Sources/SwiftCoroutine",
"product_memberships" : [
"SwiftCoroutine"
],
"sources" : [
"CoChannel/Channels/_BufferedChannel.swift",
"CoChannel/Channels/_Channel.swift",
"CoChannel/Channels/_CoChannelMap.swift",
"CoChannel/Channels/_ConflatedChannel.swift",
"CoChannel/CoChannel.swift",
"CoChannel/CoChannelError.swift",
"CoChannel/CoChannelReceiver.swift",
"CoChannel/CoChannelSender.swift",
"CoFuture/CoFutureError.swift",
"CoFuture/Core/CoFuture.swift",
"CoFuture/Core/CoPromise.swift",
"CoFuture/Extensions/URLSession+CoFuture.swift",
"CoFuture/Operators/CoFuture1+await.swift",
"CoFuture/Operators/CoFuture2+map.swift",
"CoFuture/Operators/CoFuture3+flatMap.swift",
"CoFuture/Operators/CoFuture4+whenComplete.swift",
"CoFuture/Operators/CoFuture5+hashable.swift",
"CoFuture/Operators/Combine/CoChannel/CoChannel+Combine.swift",
"CoFuture/Operators/Combine/CoChannel/CoChannelPublisher.swift",
"CoFuture/Operators/Combine/CoChannel/CoChannelSubscription.swift",
"CoFuture/Operators/Combine/CoFuture/CoFuture+Combine.swift",
"CoFuture/Operators/Combine/CoFuture/CoFuturePublisher.swift",
"CoFuture/Operators/Combine/CoFuture/CoFutureSubscription.swift",
"CoScope/CoCancellable.swift",
"CoScope/CoScope.swift",
"Coroutine/Context/CoroutineContext.swift",
"Coroutine/Coroutine/Coroutine+StackSize.swift",
"Coroutine/Coroutine/Coroutine.swift",
"Coroutine/Coroutine/CoroutineError.swift",
"Coroutine/CoroutineProtocol/CoroutineProtocol.swift",
"Coroutine/SharedCoroutineDispatcher/SharedCoroutine.swift",
"Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift",
"Coroutine/SharedCoroutineDispatcher/SharedCoroutineQueue.swift",
"Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift",
"Coroutine/TaskScheduler/CoroutineScheduler.swift",
"Helpers/Atomic/AtomicInt.swift",
"Helpers/Atomic/AtomicTuple.swift",
"Helpers/Atomic/CallbackStack.swift",
"Helpers/Atomic/FifoQueue.swift",
"Helpers/Atomic/QueueNodeEraser.swift",
"Helpers/Atomic/Storage.swift",
"Helpers/Atomic/TaggedPointer.swift",
"Helpers/Constants.swift",
"Helpers/DispatchSourceTimer+extensions.swift"
],
"target_dependencies" : [
"CCoroutine"
],
"type" : "library"
},
{
"c99name" : "CCoroutine",
"module_type" : "ClangTarget",
"name" : "CCoroutine",
"path" : "Sources/CCoroutine",
"product_memberships" : [
"SwiftCoroutine"
],
"sources" : [
"CCoroutine.c"
],
"type" : "library"
}
],
"tools_version" : "5.2"
}
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/3] Write sources
[1/3] Write swift-version-2F0A5646E1D333AE.txt
[2/3] Compiling CCoroutine CCoroutine.c
[4/44] Emitting module SwiftCoroutine
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/Coroutine/Coroutine+StackSize.swift:19:25: warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Coroutine {
10 |
11 | @usableFromInline internal struct StackSize {
| `- note: consider making struct 'StackSize' conform to the 'Sendable' protocol
12 | internal let size: Int
13 | }
:
17 | extension Coroutine.StackSize {
18 |
19 | internal static let recommended = Coroutine.StackSize(size: 192 * 1024)
| |- warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'recommended' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | internal static func pages(_ number: Int) -> Coroutine.StackSize {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift:12:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
7 | //
8 |
9 | @usableFromInline internal final class SharedCoroutineDispatcher {
| `- note: class 'SharedCoroutineDispatcher' does not conform to the 'Sendable' protocol
10 |
11 | @usableFromInline internal
12 | static let `default` = SharedCoroutineDispatcher(capacity: .processorsNumber * 2,
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | stackSize: .recommended)
14 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:15:59: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
16 | } else {
17 | async(execute: task)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:17:28: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
16 | } else {
17 | async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
18 | }
19 | }
[5/48] Compiling SwiftCoroutine AtomicTuple.swift
[6/48] Compiling SwiftCoroutine CallbackStack.swift
[7/48] Compiling SwiftCoroutine FifoQueue.swift
[8/48] Compiling SwiftCoroutine QueueNodeEraser.swift
[9/48] Compiling SwiftCoroutine CoChannelError.swift
[10/48] Compiling SwiftCoroutine CoChannelReceiver.swift
[11/48] Compiling SwiftCoroutine CoChannelSender.swift
[12/48] Compiling SwiftCoroutine CoFutureError.swift
[13/48] Compiling SwiftCoroutine CoFuture.swift
[14/48] Compiling SwiftCoroutine _BufferedChannel.swift
[15/48] Compiling SwiftCoroutine _Channel.swift
[16/48] Compiling SwiftCoroutine _CoChannelMap.swift
[17/48] Compiling SwiftCoroutine _ConflatedChannel.swift
[18/48] Compiling SwiftCoroutine CoChannel.swift
[19/48] Compiling SwiftCoroutine CoFuture+Combine.swift
[20/48] Compiling SwiftCoroutine CoFuturePublisher.swift
[21/48] Compiling SwiftCoroutine CoFutureSubscription.swift
[22/48] Compiling SwiftCoroutine CoCancellable.swift
[23/48] Compiling SwiftCoroutine CoroutineError.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift:12:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
7 | //
8 |
9 | @usableFromInline internal final class SharedCoroutineDispatcher {
| `- note: class 'SharedCoroutineDispatcher' does not conform to the 'Sendable' protocol
10 |
11 | @usableFromInline internal
12 | static let `default` = SharedCoroutineDispatcher(capacity: .processorsNumber * 2,
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | stackSize: .recommended)
14 |
[24/48] Compiling SwiftCoroutine CoroutineProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift:12:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
7 | //
8 |
9 | @usableFromInline internal final class SharedCoroutineDispatcher {
| `- note: class 'SharedCoroutineDispatcher' does not conform to the 'Sendable' protocol
10 |
11 | @usableFromInline internal
12 | static let `default` = SharedCoroutineDispatcher(capacity: .processorsNumber * 2,
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | stackSize: .recommended)
14 |
[25/48] Compiling SwiftCoroutine SharedCoroutine.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift:12:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
7 | //
8 |
9 | @usableFromInline internal final class SharedCoroutineDispatcher {
| `- note: class 'SharedCoroutineDispatcher' does not conform to the 'Sendable' protocol
10 |
11 | @usableFromInline internal
12 | static let `default` = SharedCoroutineDispatcher(capacity: .processorsNumber * 2,
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | stackSize: .recommended)
14 |
[26/48] Compiling SwiftCoroutine SharedCoroutineDispatcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift:12:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
7 | //
8 |
9 | @usableFromInline internal final class SharedCoroutineDispatcher {
| `- note: class 'SharedCoroutineDispatcher' does not conform to the 'Sendable' protocol
10 |
11 | @usableFromInline internal
12 | static let `default` = SharedCoroutineDispatcher(capacity: .processorsNumber * 2,
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SharedCoroutineDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | stackSize: .recommended)
14 |
[27/48] Compiling SwiftCoroutine Storage.swift
[28/48] Compiling SwiftCoroutine TaggedPointer.swift
[29/48] Compiling SwiftCoroutine Constants.swift
[30/48] Compiling SwiftCoroutine DispatchSourceTimer+extensions.swift
[31/48] Compiling SwiftCoroutine CoScope.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/Coroutine/Coroutine+StackSize.swift:19:25: warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Coroutine {
10 |
11 | @usableFromInline internal struct StackSize {
| `- note: consider making struct 'StackSize' conform to the 'Sendable' protocol
12 | internal let size: Int
13 | }
:
17 | extension Coroutine.StackSize {
18 |
19 | internal static let recommended = Coroutine.StackSize(size: 192 * 1024)
| |- warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'recommended' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | internal static func pages(_ number: Int) -> Coroutine.StackSize {
[32/48] Compiling SwiftCoroutine CoroutineContext.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/Coroutine/Coroutine+StackSize.swift:19:25: warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Coroutine {
10 |
11 | @usableFromInline internal struct StackSize {
| `- note: consider making struct 'StackSize' conform to the 'Sendable' protocol
12 | internal let size: Int
13 | }
:
17 | extension Coroutine.StackSize {
18 |
19 | internal static let recommended = Coroutine.StackSize(size: 192 * 1024)
| |- warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'recommended' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | internal static func pages(_ number: Int) -> Coroutine.StackSize {
[33/48] Compiling SwiftCoroutine Coroutine+StackSize.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/Coroutine/Coroutine+StackSize.swift:19:25: warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Coroutine {
10 |
11 | @usableFromInline internal struct StackSize {
| `- note: consider making struct 'StackSize' conform to the 'Sendable' protocol
12 | internal let size: Int
13 | }
:
17 | extension Coroutine.StackSize {
18 |
19 | internal static let recommended = Coroutine.StackSize(size: 192 * 1024)
| |- warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'recommended' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | internal static func pages(_ number: Int) -> Coroutine.StackSize {
[34/48] Compiling SwiftCoroutine Coroutine.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/Coroutine/Coroutine+StackSize.swift:19:25: warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Coroutine {
10 |
11 | @usableFromInline internal struct StackSize {
| `- note: consider making struct 'StackSize' conform to the 'Sendable' protocol
12 | internal let size: Int
13 | }
:
17 | extension Coroutine.StackSize {
18 |
19 | internal static let recommended = Coroutine.StackSize(size: 192 * 1024)
| |- warning: static property 'recommended' is not concurrency-safe because non-'Sendable' type 'Coroutine.StackSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'recommended' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | internal static func pages(_ number: Int) -> Coroutine.StackSize {
[35/48] Compiling SwiftCoroutine CoPromise.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Extensions/URLSession+CoFuture.swift:33:17: warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
31 | let task = dataTask(with: urlRequest) {
32 | if let error = $2 {
33 | promise.fail(error)
| `- warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
34 | } else if let data = $0, let response = $1 {
35 | promise.success((data, response))
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Core/CoPromise.swift:14:20: note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
12 | /// You can set the result to `CoPromise` only once, other attempts will be ignored.
13 | ///
14 | public final class CoPromise<Value>: CoFuture<Value> {}
| `- note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
15 |
16 | extension CoPromise {
[36/48] Compiling SwiftCoroutine URLSession+CoFuture.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Extensions/URLSession+CoFuture.swift:33:17: warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
31 | let task = dataTask(with: urlRequest) {
32 | if let error = $2 {
33 | promise.fail(error)
| `- warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
34 | } else if let data = $0, let response = $1 {
35 | promise.success((data, response))
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Core/CoPromise.swift:14:20: note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
12 | /// You can set the result to `CoPromise` only once, other attempts will be ignored.
13 | ///
14 | public final class CoPromise<Value>: CoFuture<Value> {}
| `- note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
15 |
16 | extension CoPromise {
[37/48] Compiling SwiftCoroutine CoFuture1+await.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Extensions/URLSession+CoFuture.swift:33:17: warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
31 | let task = dataTask(with: urlRequest) {
32 | if let error = $2 {
33 | promise.fail(error)
| `- warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
34 | } else if let data = $0, let response = $1 {
35 | promise.success((data, response))
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Core/CoPromise.swift:14:20: note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
12 | /// You can set the result to `CoPromise` only once, other attempts will be ignored.
13 | ///
14 | public final class CoPromise<Value>: CoFuture<Value> {}
| `- note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
15 |
16 | extension CoPromise {
[38/48] Compiling SwiftCoroutine CoFuture2+map.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Extensions/URLSession+CoFuture.swift:33:17: warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
31 | let task = dataTask(with: urlRequest) {
32 | if let error = $2 {
33 | promise.fail(error)
| `- warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
34 | } else if let data = $0, let response = $1 {
35 | promise.success((data, response))
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Core/CoPromise.swift:14:20: note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
12 | /// You can set the result to `CoPromise` only once, other attempts will be ignored.
13 | ///
14 | public final class CoPromise<Value>: CoFuture<Value> {}
| `- note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
15 |
16 | extension CoPromise {
[39/48] Compiling SwiftCoroutine CoFuture3+flatMap.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Extensions/URLSession+CoFuture.swift:33:17: warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
31 | let task = dataTask(with: urlRequest) {
32 | if let error = $2 {
33 | promise.fail(error)
| `- warning: capture of 'promise' with non-sendable type 'CoPromise<URLSession.DataResponse>' (aka 'CoPromise<(data: Data, response: URLResponse)>') in a '@Sendable' closure
34 | } else if let data = $0, let response = $1 {
35 | promise.success((data, response))
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/CoFuture/Core/CoPromise.swift:14:20: note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
12 | /// You can set the result to `CoPromise` only once, other attempts will be ignored.
13 | ///
14 | public final class CoPromise<Value>: CoFuture<Value> {}
| `- note: generic class 'CoPromise' does not conform to the 'Sendable' protocol
15 |
16 | extension CoPromise {
[40/48] Compiling SwiftCoroutine CoFuture4+whenComplete.swift
[41/48] Compiling SwiftCoroutine CoFuture5+hashable.swift
[42/48] Compiling SwiftCoroutine CoChannel+Combine.swift
[43/48] Compiling SwiftCoroutine CoChannelPublisher.swift
[44/48] Compiling SwiftCoroutine CoChannelSubscription.swift
[45/48] Compiling SwiftCoroutine SharedCoroutineQueue.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:15:59: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
16 | } else {
17 | async(execute: task)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:17:28: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
16 | } else {
17 | async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
18 | }
19 | }
[46/48] Compiling SwiftCoroutine CoroutineScheduler+DispatchQueue.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:15:59: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
16 | } else {
17 | async(execute: task)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:17:28: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
16 | } else {
17 | async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
18 | }
19 | }
[47/48] Compiling SwiftCoroutine CoroutineScheduler.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:15:59: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
16 | } else {
17 | async(execute: task)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:17:28: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
16 | } else {
17 | async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
18 | }
19 | }
[48/48] Compiling SwiftCoroutine AtomicInt.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:15:59: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
16 | } else {
17 | async(execute: task)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftCoroutine/Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift:17:28: warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
11 | extension DispatchQueue: CoroutineScheduler {
12 |
13 | @inlinable public func scheduleTask(_ task: @escaping () -> Void) {
| `- note: parameter 'task' is implicitly non-sendable
14 | if self === DispatchQueue.main {
15 | Thread.isMainThread ? task() : async(execute: task)
16 | } else {
17 | async(execute: task)
| `- warning: passing non-sendable parameter 'task' to function expecting a @Sendable closure
18 | }
19 | }
Build complete! (4.56s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "SwiftCoroutine",
"name" : "SwiftCoroutine",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SwiftCoroutine",
"targets" : [
"CCoroutine",
"SwiftCoroutine"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftCoroutineTests",
"module_type" : "SwiftTarget",
"name" : "SwiftCoroutineTests",
"path" : "Tests/SwiftCoroutineTests",
"sources" : [
"CoChannel/BufferedChannelTests.swift",
"CoChannel/CoChannelCombineTests.swift",
"CoChannel/CoChannelTests.swift",
"CoChannel/ConflatedChannelTests.swift",
"CoFutureTests/CoFutureAwaitTests.swift",
"CoFutureTests/CoFutureCancelTests.swift",
"CoFutureTests/CoFutureCombineTests.swift",
"CoFutureTests/CoFutureFlatMapTests.swift",
"CoFutureTests/CoFutureTests.swift",
"CoFutureTests/CoPromiseTests.swift",
"CoScope/CoScopeTests.swift",
"Coroutine/CoroutineCancelTests.swift",
"Coroutine/CoroutineContextTests.swift",
"Coroutine/CoroutineDispatcherTests.swift",
"Coroutine/CoroutineSchedulerTests.swift",
"Coroutine/CoroutineTests.swift",
"Extensions/URL+Extensions.swift",
"Extensions/XCTAssertContains.swift",
"Extensions/XCTOrderedExpectation.swift",
"Helpers/StorageTests.swift",
"Helpers/TaggedPointerTests.swift",
"Helpers/TestAtomic.swift",
"Helpers/TestFifoQueue.swift",
"Helpers/URLSessionTests.swift"
],
"target_dependencies" : [
"SwiftCoroutine"
],
"type" : "test"
},
{
"c99name" : "SwiftCoroutine",
"module_type" : "SwiftTarget",
"name" : "SwiftCoroutine",
"path" : "Sources/SwiftCoroutine",
"product_memberships" : [
"SwiftCoroutine"
],
"sources" : [
"CoChannel/Channels/_BufferedChannel.swift",
"CoChannel/Channels/_Channel.swift",
"CoChannel/Channels/_CoChannelMap.swift",
"CoChannel/Channels/_ConflatedChannel.swift",
"CoChannel/CoChannel.swift",
"CoChannel/CoChannelError.swift",
"CoChannel/CoChannelReceiver.swift",
"CoChannel/CoChannelSender.swift",
"CoFuture/CoFutureError.swift",
"CoFuture/Core/CoFuture.swift",
"CoFuture/Core/CoPromise.swift",
"CoFuture/Extensions/URLSession+CoFuture.swift",
"CoFuture/Operators/CoFuture1+await.swift",
"CoFuture/Operators/CoFuture2+map.swift",
"CoFuture/Operators/CoFuture3+flatMap.swift",
"CoFuture/Operators/CoFuture4+whenComplete.swift",
"CoFuture/Operators/CoFuture5+hashable.swift",
"CoFuture/Operators/Combine/CoChannel/CoChannel+Combine.swift",
"CoFuture/Operators/Combine/CoChannel/CoChannelPublisher.swift",
"CoFuture/Operators/Combine/CoChannel/CoChannelSubscription.swift",
"CoFuture/Operators/Combine/CoFuture/CoFuture+Combine.swift",
"CoFuture/Operators/Combine/CoFuture/CoFuturePublisher.swift",
"CoFuture/Operators/Combine/CoFuture/CoFutureSubscription.swift",
"CoScope/CoCancellable.swift",
"CoScope/CoScope.swift",
"Coroutine/Context/CoroutineContext.swift",
"Coroutine/Coroutine/Coroutine+StackSize.swift",
"Coroutine/Coroutine/Coroutine.swift",
"Coroutine/Coroutine/CoroutineError.swift",
"Coroutine/CoroutineProtocol/CoroutineProtocol.swift",
"Coroutine/SharedCoroutineDispatcher/SharedCoroutine.swift",
"Coroutine/SharedCoroutineDispatcher/SharedCoroutineDispatcher.swift",
"Coroutine/SharedCoroutineDispatcher/SharedCoroutineQueue.swift",
"Coroutine/TaskScheduler/CoroutineScheduler+DispatchQueue.swift",
"Coroutine/TaskScheduler/CoroutineScheduler.swift",
"Helpers/Atomic/AtomicInt.swift",
"Helpers/Atomic/AtomicTuple.swift",
"Helpers/Atomic/CallbackStack.swift",
"Helpers/Atomic/FifoQueue.swift",
"Helpers/Atomic/QueueNodeEraser.swift",
"Helpers/Atomic/Storage.swift",
"Helpers/Atomic/TaggedPointer.swift",
"Helpers/Constants.swift",
"Helpers/DispatchSourceTimer+extensions.swift"
],
"target_dependencies" : [
"CCoroutine"
],
"type" : "library"
},
{
"c99name" : "CCoroutine",
"module_type" : "ClangTarget",
"name" : "CCoroutine",
"path" : "Sources/CCoroutine",
"product_memberships" : [
"SwiftCoroutine"
],
"sources" : [
"CCoroutine.c"
],
"type" : "library"
}
],
"tools_version" : "5.2"
}
Done.