Build Information
Successful build of Then, reference 7.0.2 (709112
), with Swift 6.1 for macOS (SPM) on 28 Apr 2025 10:58:44 UTC.
Swift 6 data race errors: 0
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/freshOS/then.git
Reference: 7.0.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/freshOS/then
* tag 7.0.2 -> FETCH_HEAD
HEAD is now at 709112d Bumps to swift 5.9
Cloned https://github.com/freshOS/then.git
Revision (git rev-parse @):
709112d17ac9f61060b28c86d61d3f0f9b66c08a
SUCCESS checkout https://github.com/freshOS/then.git at 7.0.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": "then",
"name": "Then",
"url": "https://github.com/freshOS/then.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/then",
"dependencies": [
]
}
]
}
Fetching https://github.com/freshOS/then.git
[1/1990] Fetching then
Fetched https://github.com/freshOS/then.git from cache (2.83s)
Creating working copy for https://github.com/freshOS/then.git
Working copy of https://github.com/freshOS/then.git resolved at 7.0.2 (709112d)
warning: '.resolve-product-dependencies': dependency 'then' 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/freshOS/then.git
https://github.com/freshOS/then.git
{
"dependencies" : [
],
"manifest_display_name" : "Then",
"name" : "Then",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "tvos",
"version" : "12.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "Then",
"targets" : [
"Then"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ThenTests",
"module_type" : "SwiftTarget",
"name" : "ThenTests",
"path" : "Tests/ThenTests",
"sources" : [
"AsyncAwaitTests.swift",
"BridgeErrorTests.swift",
"ChainTests.swift",
"DelayTests.swift",
"FinallyTests.swift",
"Helpers.swift",
"MemoryTests.swift",
"NoMatterWhatTests.swift",
"OnErrorTests.swift",
"ProgressTests.swift",
"RaceTests.swift",
"RecoverTests.swift",
"RegisterThenTests.swift",
"RetryTests.swift",
"ThenTests.swift",
"TimeoutTests.swift",
"UnwrapTests.swift",
"ValidateTests.swift",
"WhenAllTests.swift",
"ZipTests.swift"
],
"target_dependencies" : [
"Then"
],
"type" : "test"
},
{
"c99name" : "Then",
"module_type" : "SwiftTarget",
"name" : "Then",
"path" : "Sources",
"product_memberships" : [
"Then"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"Then/Async.swift",
"Then/Await+Operators.swift",
"Then/Await.swift",
"Then/Promise+Aliases.swift",
"Then/Promise+BridgeError.swift",
"Then/Promise+Chain.swift",
"Then/Promise+Delay.swift",
"Then/Promise+Error.swift",
"Then/Promise+Finally.swift",
"Then/Promise+First.swift",
"Then/Promise+Helpers.swift",
"Then/Promise+NoMatterWhat.swift",
"Then/Promise+Progress.swift",
"Then/Promise+Race.swift",
"Then/Promise+Recover.swift",
"Then/Promise+Retry.swift",
"Then/Promise+Then.swift",
"Then/Promise+Timeout.swift",
"Then/Promise+Unwrap.swift",
"Then/Promise+Validate.swift",
"Then/Promise+Zip.swift",
"Then/Promise+nil.swift",
"Then/Promise.swift",
"Then/PromiseBlocks.swift",
"Then/PromiseError.swift",
"Then/PromiseState.swift",
"Then/VoidPromise.swift",
"Then/WhenAll.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
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
[0/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version-2F0A5646E1D333AE.txt
[4/31] Emitting module Then
[5/33] Compiling Then WhenAll.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/WhenAll.swift:126:17: warning: capture of 'updates' with non-sendable type '(inout [T]) -> Void' in a '@Sendable' closure
124 | func updateArray(_ updates: @escaping (_ result: inout [T]) -> Void) {
125 | lockQueue.async {
126 | updates(&self._array)
| |- warning: capture of 'updates' with non-sendable type '(inout [T]) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
127 | }
128 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/WhenAll.swift:126:26: warning: capture of 'self' with non-sendable type 'Promises.ArrayContainer<T>' in a '@Sendable' closure
118 | }
119 |
120 | private class ArrayContainer<T> {
| `- note: generic class 'ArrayContainer' does not conform to the 'Sendable' protocol
121 | private var _array: [T] = []
122 | private let lockQueue = DispatchQueue(label: "com.freshOS.then.whenAll.lockQueue", qos: .userInitiated)
:
124 | func updateArray(_ updates: @escaping (_ result: inout [T]) -> Void) {
125 | lockQueue.async {
126 | updates(&self._array)
| `- warning: capture of 'self' with non-sendable type 'Promises.ArrayContainer<T>' in a '@Sendable' closure
127 | }
128 | }
[6/33] Compiling Then resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/WhenAll.swift:126:17: warning: capture of 'updates' with non-sendable type '(inout [T]) -> Void' in a '@Sendable' closure
124 | func updateArray(_ updates: @escaping (_ result: inout [T]) -> Void) {
125 | lockQueue.async {
126 | updates(&self._array)
| |- warning: capture of 'updates' with non-sendable type '(inout [T]) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
127 | }
128 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/WhenAll.swift:126:26: warning: capture of 'self' with non-sendable type 'Promises.ArrayContainer<T>' in a '@Sendable' closure
118 | }
119 |
120 | private class ArrayContainer<T> {
| `- note: generic class 'ArrayContainer' does not conform to the 'Sendable' protocol
121 | private var _array: [T] = []
122 | private let lockQueue = DispatchQueue(label: "com.freshOS.then.whenAll.lockQueue", qos: .userInitiated)
:
124 | func updateArray(_ updates: @escaping (_ result: inout [T]) -> Void) {
125 | lockQueue.async {
126 | updates(&self._array)
| `- warning: capture of 'self' with non-sendable type 'Promises.ArrayContainer<T>' in a '@Sendable' closure
127 | }
128 | }
[7/33] Compiling Then Promise+nil.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:60:34: warning: passing non-sendable parameter 'action' to function expecting a @Sendable closure
57 | }
58 |
59 | private func _asynchronize(_ action: @escaping () -> Void) {
| `- note: parameter 'action' is implicitly non-sendable
60 | lockQueue.async(execute: action)
| `- warning: passing non-sendable parameter 'action' to function expecting a @Sendable closure
61 | }
62 |
[8/33] Compiling Then Promise.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:60:34: warning: passing non-sendable parameter 'action' to function expecting a @Sendable closure
57 | }
58 |
59 | private func _asynchronize(_ action: @escaping () -> Void) {
| `- note: parameter 'action' is implicitly non-sendable
60 | lockQueue.async(execute: action)
| `- warning: passing non-sendable parameter 'action' to function expecting a @Sendable closure
61 | }
62 |
[9/33] Compiling Then PromiseBlocks.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:60:34: warning: passing non-sendable parameter 'action' to function expecting a @Sendable closure
57 | }
58 |
59 | private func _asynchronize(_ action: @escaping () -> Void) {
| `- note: parameter 'action' is implicitly non-sendable
60 | lockQueue.async(execute: action)
| `- warning: passing non-sendable parameter 'action' to function expecting a @Sendable closure
61 | }
62 |
[10/33] Compiling Then Promise+Unwrap.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:32:13: warning: capture of 'p1' with non-sendable type 'Promise<T>' in a '@Sendable' closure
30 | group.enter()
31 | concurentQueue.async {
32 | p1.then { aT in
| `- warning: capture of 'p1' with non-sendable type 'Promise<T>' in a '@Sendable' closure
33 | localQueue.async(flags: .barrier) {
34 | t = aT
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in an isolated closure; this is an error in the Swift 6 language mode
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in an isolated closure; this is an error in the Swift 6 language mode
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:25: warning: capture of 'aT' with non-sendable type 'T' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 'aT' with non-sendable type 'T' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: mutation of captured var 't' in concurrently-executing code
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: mutation of captured var 't' in concurrently-executing code
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:38:25: warning: mutation of captured var 'error' in concurrently-executing code
36 | }.onError { e in
37 | localQueue.async(flags: .barrier) {
38 | error = e
| `- warning: mutation of captured var 'error' in concurrently-executing code
39 | }
40 | }.finally {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:49:13: warning: capture of 'p2' with non-sendable type 'Promise<U>' in a '@Sendable' closure
47 | group.enter()
48 | concurentQueue.async {
49 | p2.then { aU in
| `- warning: capture of 'p2' with non-sendable type 'Promise<U>' in a '@Sendable' closure
50 | localQueue.async(flags: .barrier) {
51 | u = aU
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in an isolated closure; this is an error in the Swift 6 language mode
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in an isolated closure; this is an error in the Swift 6 language mode
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:25: warning: capture of 'aU' with non-sendable type 'U' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'aU' with non-sendable type 'U' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: mutation of captured var 'u' in concurrently-executing code
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: mutation of captured var 'u' in concurrently-executing code
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:55:25: warning: mutation of captured var 'error' in concurrently-executing code
53 | }.onError { e in
54 | localQueue.async(flags: .barrier) {
55 | error = e
| `- warning: mutation of captured var 'error' in concurrently-executing code
56 | }
57 | }.finally {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:69:21: warning: capture of 'p' with non-sendable type 'Promise<(T, U)>' in a '@Sendable' closure
67 | localQueue.async {
68 | if let e = error {
69 | p.reject(e)
| `- warning: capture of 'p' with non-sendable type 'Promise<(T, U)>' in a '@Sendable' closure
70 | } else {
71 | p.fulfill((t, u))
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:32: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:35: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:68:28: warning: reference to captured var 'error' in concurrently-executing code
66 | group.notify(queue: queue) {
67 | localQueue.async {
68 | if let e = error {
| `- warning: reference to captured var 'error' in concurrently-executing code
69 | p.reject(e)
70 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:32: warning: reference to captured var 't' in concurrently-executing code
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: reference to captured var 't' in concurrently-executing code
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:35: warning: reference to captured var 'u' in concurrently-executing code
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: reference to captured var 'u' in concurrently-executing code
72 | }
73 | }
[11/33] Compiling Then Promise+Validate.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:32:13: warning: capture of 'p1' with non-sendable type 'Promise<T>' in a '@Sendable' closure
30 | group.enter()
31 | concurentQueue.async {
32 | p1.then { aT in
| `- warning: capture of 'p1' with non-sendable type 'Promise<T>' in a '@Sendable' closure
33 | localQueue.async(flags: .barrier) {
34 | t = aT
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in an isolated closure; this is an error in the Swift 6 language mode
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in an isolated closure; this is an error in the Swift 6 language mode
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:25: warning: capture of 'aT' with non-sendable type 'T' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 'aT' with non-sendable type 'T' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: mutation of captured var 't' in concurrently-executing code
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: mutation of captured var 't' in concurrently-executing code
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:38:25: warning: mutation of captured var 'error' in concurrently-executing code
36 | }.onError { e in
37 | localQueue.async(flags: .barrier) {
38 | error = e
| `- warning: mutation of captured var 'error' in concurrently-executing code
39 | }
40 | }.finally {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:49:13: warning: capture of 'p2' with non-sendable type 'Promise<U>' in a '@Sendable' closure
47 | group.enter()
48 | concurentQueue.async {
49 | p2.then { aU in
| `- warning: capture of 'p2' with non-sendable type 'Promise<U>' in a '@Sendable' closure
50 | localQueue.async(flags: .barrier) {
51 | u = aU
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in an isolated closure; this is an error in the Swift 6 language mode
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in an isolated closure; this is an error in the Swift 6 language mode
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:25: warning: capture of 'aU' with non-sendable type 'U' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'aU' with non-sendable type 'U' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: mutation of captured var 'u' in concurrently-executing code
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: mutation of captured var 'u' in concurrently-executing code
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:55:25: warning: mutation of captured var 'error' in concurrently-executing code
53 | }.onError { e in
54 | localQueue.async(flags: .barrier) {
55 | error = e
| `- warning: mutation of captured var 'error' in concurrently-executing code
56 | }
57 | }.finally {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:69:21: warning: capture of 'p' with non-sendable type 'Promise<(T, U)>' in a '@Sendable' closure
67 | localQueue.async {
68 | if let e = error {
69 | p.reject(e)
| `- warning: capture of 'p' with non-sendable type 'Promise<(T, U)>' in a '@Sendable' closure
70 | } else {
71 | p.fulfill((t, u))
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:32: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:35: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:68:28: warning: reference to captured var 'error' in concurrently-executing code
66 | group.notify(queue: queue) {
67 | localQueue.async {
68 | if let e = error {
| `- warning: reference to captured var 'error' in concurrently-executing code
69 | p.reject(e)
70 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:32: warning: reference to captured var 't' in concurrently-executing code
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: reference to captured var 't' in concurrently-executing code
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:35: warning: reference to captured var 'u' in concurrently-executing code
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: reference to captured var 'u' in concurrently-executing code
72 | }
73 | }
[12/33] Compiling Then Promise+Zip.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:32:13: warning: capture of 'p1' with non-sendable type 'Promise<T>' in a '@Sendable' closure
30 | group.enter()
31 | concurentQueue.async {
32 | p1.then { aT in
| `- warning: capture of 'p1' with non-sendable type 'Promise<T>' in a '@Sendable' closure
33 | localQueue.async(flags: .barrier) {
34 | t = aT
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in an isolated closure; this is an error in the Swift 6 language mode
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in an isolated closure; this is an error in the Swift 6 language mode
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:25: warning: capture of 'aT' with non-sendable type 'T' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: capture of 'aT' with non-sendable type 'T' in a '@Sendable' closure
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:34:21: warning: mutation of captured var 't' in concurrently-executing code
32 | p1.then { aT in
33 | localQueue.async(flags: .barrier) {
34 | t = aT
| `- warning: mutation of captured var 't' in concurrently-executing code
35 | }
36 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:38:25: warning: mutation of captured var 'error' in concurrently-executing code
36 | }.onError { e in
37 | localQueue.async(flags: .barrier) {
38 | error = e
| `- warning: mutation of captured var 'error' in concurrently-executing code
39 | }
40 | }.finally {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:49:13: warning: capture of 'p2' with non-sendable type 'Promise<U>' in a '@Sendable' closure
47 | group.enter()
48 | concurentQueue.async {
49 | p2.then { aU in
| `- warning: capture of 'p2' with non-sendable type 'Promise<U>' in a '@Sendable' closure
50 | localQueue.async(flags: .barrier) {
51 | u = aU
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in an isolated closure; this is an error in the Swift 6 language mode
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in an isolated closure; this is an error in the Swift 6 language mode
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:25: warning: capture of 'aU' with non-sendable type 'U' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: capture of 'aU' with non-sendable type 'U' in a '@Sendable' closure
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:51:21: warning: mutation of captured var 'u' in concurrently-executing code
49 | p2.then { aU in
50 | localQueue.async(flags: .barrier) {
51 | u = aU
| `- warning: mutation of captured var 'u' in concurrently-executing code
52 | }
53 | }.onError { e in
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:55:25: warning: mutation of captured var 'error' in concurrently-executing code
53 | }.onError { e in
54 | localQueue.async(flags: .barrier) {
55 | error = e
| `- warning: mutation of captured var 'error' in concurrently-executing code
56 | }
57 | }.finally {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:69:21: warning: capture of 'p' with non-sendable type 'Promise<(T, U)>' in a '@Sendable' closure
67 | localQueue.async {
68 | if let e = error {
69 | p.reject(e)
| `- warning: capture of 'p' with non-sendable type 'Promise<(T, U)>' in a '@Sendable' closure
70 | } else {
71 | p.fulfill((t, u))
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise.swift:26:14: note: generic class 'Promise' does not conform to the 'Sendable' protocol
24 | }
25 |
26 | public class Promise<T> {
| `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
27 |
28 | // MARK: - Protected properties
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:32: warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: capture of 't' with non-sendable type 'T?' in a '@Sendable' closure
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:35: warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
12 | extension Promises {
13 |
14 | public static func zip<T, U>(_ p1: Promise<T>, _ p2: Promise<U>) -> Promise<(T, U)> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
15 |
16 | let p = Promise<(T, U)>()
:
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: capture of 'u' with non-sendable type 'U?' in a '@Sendable' closure
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:68:28: warning: reference to captured var 'error' in concurrently-executing code
66 | group.notify(queue: queue) {
67 | localQueue.async {
68 | if let e = error {
| `- warning: reference to captured var 'error' in concurrently-executing code
69 | p.reject(e)
70 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:32: warning: reference to captured var 't' in concurrently-executing code
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: reference to captured var 't' in concurrently-executing code
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Zip.swift:71:35: warning: reference to captured var 'u' in concurrently-executing code
69 | p.reject(e)
70 | } else {
71 | p.fulfill((t, u))
| `- warning: reference to captured var 'u' in concurrently-executing code
72 | }
73 | }
[13/33] Compiling Then Promise+Progress.swift
[14/33] Compiling Then Promise+Race.swift
[15/33] Compiling Then Promise+Recover.swift
[16/33] Compiling Then Promise+Retry.swift
[17/33] Compiling Then Promise+Then.swift
[18/33] Compiling Then Promise+Timeout.swift
[19/33] Compiling Then Promise+Delay.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:42:21: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
40 | DispatchQueue.global(qos: DispatchQoS.QoSClass.userInitiated).asyncAfter(deadline: .now() + time) {
41 | callingQueue.async {
42 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
43 | }
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:42:21: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
40 | DispatchQueue.global(qos: DispatchQoS.QoSClass.userInitiated).asyncAfter(deadline: .now() + time) {
41 | callingQueue.async {
42 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
43 | }
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:47:17: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
45 | } else {
46 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + time) {
47 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
48 | }
49 | }
[20/33] Compiling Then Promise+Error.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:42:21: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
40 | DispatchQueue.global(qos: DispatchQoS.QoSClass.userInitiated).asyncAfter(deadline: .now() + time) {
41 | callingQueue.async {
42 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
43 | }
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:42:21: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
40 | DispatchQueue.global(qos: DispatchQoS.QoSClass.userInitiated).asyncAfter(deadline: .now() + time) {
41 | callingQueue.async {
42 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
43 | }
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:47:17: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
45 | } else {
46 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + time) {
47 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
48 | }
49 | }
[21/33] Compiling Then Promise+Finally.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:42:21: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
40 | DispatchQueue.global(qos: DispatchQoS.QoSClass.userInitiated).asyncAfter(deadline: .now() + time) {
41 | callingQueue.async {
42 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
43 | }
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:42:21: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
40 | DispatchQueue.global(qos: DispatchQoS.QoSClass.userInitiated).asyncAfter(deadline: .now() + time) {
41 | callingQueue.async {
42 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
43 | }
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/Then/Promise+Delay.swift:47:17: warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
45 | } else {
46 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + time) {
47 | block()
| |- warning: capture of 'block' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
48 | }
49 | }
[22/33] Compiling Then PromiseError.swift
[23/33] Compiling Then PromiseState.swift
[24/33] Compiling Then VoidPromise.swift
[25/33] Compiling Then Promise+First.swift
[26/33] Compiling Then Promise+Helpers.swift
[27/33] Compiling Then Promise+NoMatterWhat.swift
[28/33] Compiling Then Async.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:17:29: warning: capture of 'block' with non-sendable type '() throws -> T' in a '@Sendable' closure
15 | DispatchQueue(label: "then.async.queue", attributes: .concurrent).async {
16 | do {
17 | let t = try block()
| |- warning: capture of 'block' with non-sendable type '() throws -> T' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
18 | resolve(t)
19 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:18:17: warning: capture of 'resolve' with non-sendable type '(T) -> Void' in a '@Sendable' closure
16 | do {
17 | let t = try block()
18 | resolve(t)
| |- warning: capture of 'resolve' with non-sendable type '(T) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
19 | } catch {
20 | reject(error)
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:20:17: warning: capture of 'reject' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
18 | resolve(t)
19 | } catch {
20 | reject(error)
| |- warning: capture of 'reject' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
21 | }
22 | }
[29/33] Compiling Then Await+Operators.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:17:29: warning: capture of 'block' with non-sendable type '() throws -> T' in a '@Sendable' closure
15 | DispatchQueue(label: "then.async.queue", attributes: .concurrent).async {
16 | do {
17 | let t = try block()
| |- warning: capture of 'block' with non-sendable type '() throws -> T' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
18 | resolve(t)
19 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:18:17: warning: capture of 'resolve' with non-sendable type '(T) -> Void' in a '@Sendable' closure
16 | do {
17 | let t = try block()
18 | resolve(t)
| |- warning: capture of 'resolve' with non-sendable type '(T) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
19 | } catch {
20 | reject(error)
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:20:17: warning: capture of 'reject' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
18 | resolve(t)
19 | } catch {
20 | reject(error)
| |- warning: capture of 'reject' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
21 | }
22 | }
[30/33] Compiling Then Await.swift
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:17:29: warning: capture of 'block' with non-sendable type '() throws -> T' in a '@Sendable' closure
15 | DispatchQueue(label: "then.async.queue", attributes: .concurrent).async {
16 | do {
17 | let t = try block()
| |- warning: capture of 'block' with non-sendable type '() throws -> T' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
18 | resolve(t)
19 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:18:17: warning: capture of 'resolve' with non-sendable type '(T) -> Void' in a '@Sendable' closure
16 | do {
17 | let t = try block()
18 | resolve(t)
| |- warning: capture of 'resolve' with non-sendable type '(T) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
19 | } catch {
20 | reject(error)
/Users/admin/builder/spi-builder-workspace/Sources/Then/Async.swift:20:17: warning: capture of 'reject' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
18 | resolve(t)
19 | } catch {
20 | reject(error)
| |- warning: capture of 'reject' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
21 | }
22 | }
[31/33] Compiling Then Promise+Aliases.swift
[32/33] Compiling Then Promise+BridgeError.swift
[33/33] Compiling Then Promise+Chain.swift
Build complete! (6.45s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Then",
"name" : "Then",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "tvos",
"version" : "12.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "Then",
"targets" : [
"Then"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ThenTests",
"module_type" : "SwiftTarget",
"name" : "ThenTests",
"path" : "Tests/ThenTests",
"sources" : [
"AsyncAwaitTests.swift",
"BridgeErrorTests.swift",
"ChainTests.swift",
"DelayTests.swift",
"FinallyTests.swift",
"Helpers.swift",
"MemoryTests.swift",
"NoMatterWhatTests.swift",
"OnErrorTests.swift",
"ProgressTests.swift",
"RaceTests.swift",
"RecoverTests.swift",
"RegisterThenTests.swift",
"RetryTests.swift",
"ThenTests.swift",
"TimeoutTests.swift",
"UnwrapTests.swift",
"ValidateTests.swift",
"WhenAllTests.swift",
"ZipTests.swift"
],
"target_dependencies" : [
"Then"
],
"type" : "test"
},
{
"c99name" : "Then",
"module_type" : "SwiftTarget",
"name" : "Then",
"path" : "Sources",
"product_memberships" : [
"Then"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"Then/Async.swift",
"Then/Await+Operators.swift",
"Then/Await.swift",
"Then/Promise+Aliases.swift",
"Then/Promise+BridgeError.swift",
"Then/Promise+Chain.swift",
"Then/Promise+Delay.swift",
"Then/Promise+Error.swift",
"Then/Promise+Finally.swift",
"Then/Promise+First.swift",
"Then/Promise+Helpers.swift",
"Then/Promise+NoMatterWhat.swift",
"Then/Promise+Progress.swift",
"Then/Promise+Race.swift",
"Then/Promise+Recover.swift",
"Then/Promise+Retry.swift",
"Then/Promise+Then.swift",
"Then/Promise+Timeout.swift",
"Then/Promise+Unwrap.swift",
"Then/Promise+Validate.swift",
"Then/Promise+Zip.swift",
"Then/Promise+nil.swift",
"Then/Promise.swift",
"Then/PromiseBlocks.swift",
"Then/PromiseError.swift",
"Then/PromiseState.swift",
"Then/VoidPromise.swift",
"Then/WhenAll.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Done.