Build Information
Successful build of Deferred, reference 4.1.0 (96ad3f
), with Swift 6.0 for macOS (SPM) on 28 Nov 2024 23:27:50 UTC.
Swift 6 data race errors: 5
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 -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.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bignerdranch/Deferred.git
Reference: 4.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/bignerdranch/Deferred
* tag 4.1.0 -> FETCH_HEAD
HEAD is now at 96ad3f6 Merge pull request #293 from bignerdranch/zwaldowski/bump-version
Cloned https://github.com/bignerdranch/Deferred.git
Revision (git rev-parse @):
96ad3f6dd1ddaffe1830dbb3b1cb783a87d6e952
SUCCESS checkout https://github.com/bignerdranch/Deferred.git at 4.1.0
========================================
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": "deferred",
"name": "Deferred",
"url": "https://github.com/bignerdranch/Deferred.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Deferred",
"dependencies": [
]
}
]
}
Fetching https://github.com/bignerdranch/Deferred.git
[1/6330] Fetching deferred
Fetched https://github.com/bignerdranch/Deferred.git from cache (1.08s)
Creating working copy for https://github.com/bignerdranch/Deferred.git
Working copy of https://github.com/bignerdranch/Deferred.git resolved at 4.1.0 (96ad3f6)
warning: '.resolve-product-dependencies': dependency 'deferred' 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/bignerdranch/Deferred.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 -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/4] Write sources
[2/4] Compiling Atomics Empty.c
[3/4] Write swift-version--7754E27361AE5C74.txt
[5/23] Compiling Deferred FutureIgnore.swift
[6/23] Compiling Deferred FutureMap.swift
[7/24] Compiling Deferred Protected.swift
[8/24] Compiling Deferred FuturePeek.swift
[9/24] Compiling Deferred FutureUpon.swift
[10/24] Compiling Deferred FutureAsync.swift
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/FutureAsync.swift:23:13: warning: capture of 'deferred' with non-sendable type 'Deferred<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |
22 | queue.async(flags: flags) {
23 | deferred.fill(with: work())
| `- warning: capture of 'deferred' with non-sendable type 'Deferred<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
24 | }
25 |
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Deferred.swift:22:15: note: consider making generic struct 'Deferred' conform to the 'Sendable' protocol
20 | /// If the value never becomes determined, a handler submitted to it will never
21 | /// be executed.
22 | public struct Deferred<Value> {
| `- note: consider making generic struct 'Deferred' conform to the 'Sendable' protocol
23 | /// The primary storage, initialized with a value once-and-only-once (at
24 | /// init or later).
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/FutureAsync.swift:23:33: warning: capture of 'work' with non-sendable type '() -> Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |
22 | queue.async(flags: flags) {
23 | deferred.fill(with: work())
| |- warning: capture of 'work' with non-sendable type '() -> Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
24 | }
25 |
[11/24] Compiling Deferred FutureCollections.swift
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/FutureAsync.swift:23:13: warning: capture of 'deferred' with non-sendable type 'Deferred<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |
22 | queue.async(flags: flags) {
23 | deferred.fill(with: work())
| `- warning: capture of 'deferred' with non-sendable type 'Deferred<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
24 | }
25 |
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Deferred.swift:22:15: note: consider making generic struct 'Deferred' conform to the 'Sendable' protocol
20 | /// If the value never becomes determined, a handler submitted to it will never
21 | /// be executed.
22 | public struct Deferred<Value> {
| `- note: consider making generic struct 'Deferred' conform to the 'Sendable' protocol
23 | /// The primary storage, initialized with a value once-and-only-once (at
24 | /// init or later).
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/FutureAsync.swift:23:33: warning: capture of 'work' with non-sendable type '() -> Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |
22 | queue.async(flags: flags) {
23 | deferred.fill(with: work())
| |- warning: capture of 'work' with non-sendable type '() -> Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
24 | }
25 |
[12/24] Compiling Deferred Future.swift
[13/24] Compiling Deferred FutureAndThen.swift
[14/24] Compiling Deferred Locking.swift
[15/24] Compiling Deferred Promise.swift
[16/24] Compiling Deferred FutureComposition.swift
[17/24] Compiling Deferred FutureEveryMap.swift
[18/24] Compiling Deferred DeferredQueue.swift
[19/24] Compiling Deferred DeferredVariant.swift
[20/24] Compiling Deferred Atomics.swift
[21/24] Compiling Deferred Deferred.swift
[22/24] Compiling Deferred Executor.swift
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:46:27: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
44 | /// }
45 | ///
46 | public protocol Executor: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
47 | /// Execute the `body` closure.
48 | func submit(_ body: @escaping() -> Void)
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:83:24: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
80 | }
81 |
82 | public func submit(_ body: @escaping() -> Void) {
| `- note: parameter 'body' is implicitly non-sendable
83 | async(execute: body)
| `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
84 | }
85 |
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:99:22: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
96 | /// operations in the queue.
97 | extension OperationQueue: Executor {
98 | public func submit(_ body: @escaping() -> Void) {
| `- note: parameter 'body' is implicitly non-sendable
99 | addOperation(body)
| `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
100 | }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:127:21: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
123 | /// of the run loop.
124 | extension RunLoop: Executor {
125 | public func submit(_ body: @escaping() -> Void) {
| `- note: parameter 'body' is implicitly non-sendable
126 | if #available(macOS 10.12, iOS 10.0, tvOS 10.0, watchOS 3.0, *) {
127 | perform(body)
| `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
128 | } else {
129 | getCFRunLoop().submit(body)
[23/24] Compiling Deferred ExistentialFuture.swift
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:46:27: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
44 | /// }
45 | ///
46 | public protocol Executor: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
47 | /// Execute the `body` closure.
48 | func submit(_ body: @escaping() -> Void)
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:83:24: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
80 | }
81 |
82 | public func submit(_ body: @escaping() -> Void) {
| `- note: parameter 'body' is implicitly non-sendable
83 | async(execute: body)
| `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
84 | }
85 |
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:99:22: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
96 | /// operations in the queue.
97 | extension OperationQueue: Executor {
98 | public func submit(_ body: @escaping() -> Void) {
| `- note: parameter 'body' is implicitly non-sendable
99 | addOperation(body)
| `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
100 | }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:127:21: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
123 | /// of the run loop.
124 | extension RunLoop: Executor {
125 | public func submit(_ body: @escaping() -> Void) {
| `- note: parameter 'body' is implicitly non-sendable
126 | if #available(macOS 10.12, iOS 10.0, tvOS 10.0, watchOS 3.0, *) {
127 | perform(body)
| `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
128 | } else {
129 | getCFRunLoop().submit(body)
[24/24] Emitting module Deferred
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Executor.swift:46:27: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
44 | /// }
45 | ///
46 | public protocol Executor: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
47 | /// Execute the `body` closure.
48 | func submit(_ body: @escaping() -> Void)
[25/40] Compiling Task TaskPromise.swift
[26/41] Compiling Task TaskRecovery.swift
[27/41] Compiling Task TaskResult.swift
[28/41] Compiling Task TaskUpon.swift
[29/41] Compiling Task TaskIgnore.swift
[30/41] Compiling Task TaskMap.swift
[31/41] Compiling Task TaskCollections.swift
[32/41] Compiling Task TaskFallback.swift
[33/41] Compiling Task TaskAsync.swift
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskAsync.swift:35:13: warning: capture of 'deferred' with non-sendable type 'Deferred<Task<Success>.Result>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | defer { semaphore.signal() }
34 |
35 | deferred.fill(with: Result(catching: work))
| `- warning: capture of 'deferred' with non-sendable type 'Deferred<Task<Success>.Result>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
36 | }
37 |
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Deferred.swift:22:15: note: generic struct 'Deferred' does not conform to the 'Sendable' protocol
20 | /// If the value never becomes determined, a handler submitted to it will never
21 | /// be executed.
22 | public struct Deferred<Value> {
| `- note: generic struct 'Deferred' does not conform to the 'Sendable' protocol
23 | /// The primary storage, initialized with a value once-and-only-once (at
24 | /// init or later).
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskAsync.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Deferred'
8 |
9 | #if SWIFT_PACKAGE
10 | import Deferred
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Deferred'
11 | #endif
12 | import Dispatch
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskAsync.swift:35:50: warning: capture of 'work' with non-sendable type '() throws -> Success' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | defer { semaphore.signal() }
34 |
35 | deferred.fill(with: Result(catching: work))
| |- warning: capture of 'work' with non-sendable type '() throws -> Success' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
36 | }
37 |
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskChain.swift:35:19: warning: class 'Root' must restate inherited '@unchecked Sendable' conformance
33 | /// that first task's `Root`.
34 | @objc(BNRTaskRootProgress)
35 | private class Root: Progress {
| `- warning: class 'Root' must restate inherited '@unchecked Sendable' conformance
36 | /// Key for value of type `[Root]?` in `Thread.threadDictionary`.
37 | static let threadKey = "_BNRTaskProgressStack"
[34/41] Compiling Task TaskChain.swift
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskAsync.swift:35:13: warning: capture of 'deferred' with non-sendable type 'Deferred<Task<Success>.Result>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | defer { semaphore.signal() }
34 |
35 | deferred.fill(with: Result(catching: work))
| `- warning: capture of 'deferred' with non-sendable type 'Deferred<Task<Success>.Result>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
36 | }
37 |
/Users/admin/builder/spi-builder-workspace/Sources/Deferred/Deferred.swift:22:15: note: generic struct 'Deferred' does not conform to the 'Sendable' protocol
20 | /// If the value never becomes determined, a handler submitted to it will never
21 | /// be executed.
22 | public struct Deferred<Value> {
| `- note: generic struct 'Deferred' does not conform to the 'Sendable' protocol
23 | /// The primary storage, initialized with a value once-and-only-once (at
24 | /// init or later).
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskAsync.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Deferred'
8 |
9 | #if SWIFT_PACKAGE
10 | import Deferred
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Deferred'
11 | #endif
12 | import Dispatch
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskAsync.swift:35:50: warning: capture of 'work' with non-sendable type '() throws -> Success' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | defer { semaphore.signal() }
34 |
35 | deferred.fill(with: Result(catching: work))
| |- warning: capture of 'work' with non-sendable type '() throws -> Success' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
36 | }
37 |
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskChain.swift:35:19: warning: class 'Root' must restate inherited '@unchecked Sendable' conformance
33 | /// that first task's `Root`.
34 | @objc(BNRTaskRootProgress)
35 | private class Root: Progress {
| `- warning: class 'Root' must restate inherited '@unchecked Sendable' conformance
36 | /// Key for value of type `[Root]?` in `Thread.threadDictionary`.
37 | static let threadKey = "_BNRTaskProgressStack"
[35/41] Compiling Task Task.swift
[36/41] Compiling Task TaskAndThen.swift
[37/41] Compiling Task Either.swift
[38/41] Compiling Task ExistentialTask.swift
[39/41] Emitting module Task
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:96:20: warning: static property 'fractionContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
94 | /// delivery of notifications after deinit.
95 | final class Observation: NSObject {
96 | static var fractionContext = false
| |- warning: static property 'fractionContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fractionContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fractionContext' 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
97 | static var attributesContext = false
98 | static var cancelledContext = false
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:97:20: warning: static property 'attributesContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
95 | final class Observation: NSObject {
96 | static var fractionContext = false
97 | static var attributesContext = false
| |- warning: static property 'attributesContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'attributesContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'attributesContext' 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
98 | static var cancelledContext = false
99 | static var pausedContext = false
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:98:20: warning: static property 'cancelledContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
96 | static var fractionContext = false
97 | static var attributesContext = false
98 | static var cancelledContext = false
| |- warning: static property 'cancelledContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cancelledContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'cancelledContext' 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
99 | static var pausedContext = false
100 |
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:99:20: warning: static property 'pausedContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
97 | static var attributesContext = false
98 | static var cancelledContext = false
99 | static var pausedContext = false
| |- warning: static property 'pausedContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'pausedContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'pausedContext' 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
100 |
101 | static let fractionKeyPaths = [
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:109:31: warning: 'cancellable' has been renamed to 'isCancellable'
107 | #keyPath(Progress.localizedDescription),
108 | #keyPath(Progress.localizedAdditionalDescription),
109 | #keyPath(Progress.cancellable),
| `- warning: 'cancellable' has been renamed to 'isCancellable'
110 | #keyPath(Progress.pausable),
111 | #keyPath(Progress.kind)
Foundation.Progress:37:14: note: 'cancellable' was obsoleted in Swift 3
35 | open var isCancellable: Bool { get set }
36 | @available(swift, obsoleted: 3, renamed: "isCancellable")
37 | open var cancellable: Bool { get set }
| `- note: 'cancellable' was obsoleted in Swift 3
38 | open var isPausable: Bool { get set }
39 | @available(swift, obsoleted: 3, renamed: "isPausable")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:110:31: warning: 'pausable' has been renamed to 'isPausable'
108 | #keyPath(Progress.localizedAdditionalDescription),
109 | #keyPath(Progress.cancellable),
110 | #keyPath(Progress.pausable),
| `- warning: 'pausable' has been renamed to 'isPausable'
111 | #keyPath(Progress.kind)
112 | ]
Foundation.Progress:40:14: note: 'pausable' was obsoleted in Swift 3
38 | open var isPausable: Bool { get set }
39 | @available(swift, obsoleted: 3, renamed: "isPausable")
40 | open var pausable: Bool { get set }
| `- note: 'pausable' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:20:21: warning: class 'ProxyProgress' must restate inherited '@unchecked Sendable' conformance
18 | /// tree.
19 | @objc(BNRTaskProxyProgress)
20 | private final class ProxyProgress: Progress {
| `- warning: class 'ProxyProgress' must restate inherited '@unchecked Sendable' conformance
21 |
22 | @objc dynamic let observee: Progress
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+Future.swift:17:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ProgressCompletionExecutor' may have shared mutable state; this is an error in the Swift 6 language mode
13 | #endif
14 |
15 | private final class ProgressCompletionExecutor: Executor {
| `- note: class 'ProgressCompletionExecutor' does not conform to the 'Sendable' protocol
16 |
17 | static let shared = ProgressCompletionExecutor()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ProgressCompletionExecutor' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
18 |
19 | func submit(_ body: @escaping () -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Task/TaskChain.swift:35:19: warning: class 'Root' must restate inherited '@unchecked Sendable' conformance
33 | /// that first task's `Root`.
34 | @objc(BNRTaskRootProgress)
35 | private class Root: Progress {
| `- warning: class 'Root' must restate inherited '@unchecked Sendable' conformance
36 | /// Key for value of type `[Root]?` in `Thread.threadDictionary`.
37 | static let threadKey = "_BNRTaskProgressStack"
[40/41] Compiling Task Progress+ExplicitComposition.swift
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:96:20: warning: static property 'fractionContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
94 | /// delivery of notifications after deinit.
95 | final class Observation: NSObject {
96 | static var fractionContext = false
| |- warning: static property 'fractionContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fractionContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fractionContext' 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
97 | static var attributesContext = false
98 | static var cancelledContext = false
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:97:20: warning: static property 'attributesContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
95 | final class Observation: NSObject {
96 | static var fractionContext = false
97 | static var attributesContext = false
| |- warning: static property 'attributesContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'attributesContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'attributesContext' 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
98 | static var cancelledContext = false
99 | static var pausedContext = false
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:98:20: warning: static property 'cancelledContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
96 | static var fractionContext = false
97 | static var attributesContext = false
98 | static var cancelledContext = false
| |- warning: static property 'cancelledContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cancelledContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'cancelledContext' 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
99 | static var pausedContext = false
100 |
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:99:20: warning: static property 'pausedContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
97 | static var attributesContext = false
98 | static var cancelledContext = false
99 | static var pausedContext = false
| |- warning: static property 'pausedContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'pausedContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'pausedContext' 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
100 |
101 | static let fractionKeyPaths = [
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:109:31: warning: 'cancellable' has been renamed to 'isCancellable'
107 | #keyPath(Progress.localizedDescription),
108 | #keyPath(Progress.localizedAdditionalDescription),
109 | #keyPath(Progress.cancellable),
| `- warning: 'cancellable' has been renamed to 'isCancellable'
110 | #keyPath(Progress.pausable),
111 | #keyPath(Progress.kind)
Foundation.Progress:37:14: note: 'cancellable' was obsoleted in Swift 3
35 | open var isCancellable: Bool { get set }
36 | @available(swift, obsoleted: 3, renamed: "isCancellable")
37 | open var cancellable: Bool { get set }
| `- note: 'cancellable' was obsoleted in Swift 3
38 | open var isPausable: Bool { get set }
39 | @available(swift, obsoleted: 3, renamed: "isPausable")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:110:31: warning: 'pausable' has been renamed to 'isPausable'
108 | #keyPath(Progress.localizedAdditionalDescription),
109 | #keyPath(Progress.cancellable),
110 | #keyPath(Progress.pausable),
| `- warning: 'pausable' has been renamed to 'isPausable'
111 | #keyPath(Progress.kind)
112 | ]
Foundation.Progress:40:14: note: 'pausable' was obsoleted in Swift 3
38 | open var isPausable: Bool { get set }
39 | @available(swift, obsoleted: 3, renamed: "isPausable")
40 | open var pausable: Bool { get set }
| `- note: 'pausable' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:20:21: warning: class 'ProxyProgress' must restate inherited '@unchecked Sendable' conformance
18 | /// tree.
19 | @objc(BNRTaskProxyProgress)
20 | private final class ProxyProgress: Progress {
| `- warning: class 'ProxyProgress' must restate inherited '@unchecked Sendable' conformance
21 |
22 | @objc dynamic let observee: Progress
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:139:70: warning: 'cancelled' has been renamed to 'isCancelled'
137 | observee.addObserver(self, forKeyPath: key, options: [ .initial, .new ], context: &Observation.attributesContext)
138 | }
139 | observee.addObserver(self, forKeyPath: #keyPath(Progress.cancelled), options: .initial, context: &Observation.cancelledContext)
| `- warning: 'cancelled' has been renamed to 'isCancelled'
140 | observee.addObserver(self, forKeyPath: #keyPath(Progress.paused), options: .initial, context: &Observation.pausedContext)
141 |
Foundation.Progress:43:14: note: 'cancelled' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
43 | open var cancelled: Bool { get }
| `- note: 'cancelled' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:140:70: warning: 'paused' has been renamed to 'isPaused'
138 | }
139 | observee.addObserver(self, forKeyPath: #keyPath(Progress.cancelled), options: .initial, context: &Observation.cancelledContext)
140 | observee.addObserver(self, forKeyPath: #keyPath(Progress.paused), options: .initial, context: &Observation.pausedContext)
| `- warning: 'paused' has been renamed to 'isPaused'
141 |
142 | bnr_atomic_fetch_or(&state, State.observing.rawValue, .release)
Foundation.Progress:46:14: note: 'paused' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
46 | open var paused: Bool { get }
| `- note: 'paused' was obsoleted in Swift 3
47 | open var cancellationHandler: (@Sendable () -> Void)? { get set }
48 | open var pausingHandler: (@Sendable () -> Void)? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:157:73: warning: 'cancelled' has been renamed to 'isCancelled'
155 | observee.removeObserver(self, forKeyPath: key, context: &Observation.attributesContext)
156 | }
157 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.cancelled), context: &Observation.cancelledContext)
| `- warning: 'cancelled' has been renamed to 'isCancelled'
158 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.paused), context: &Observation.pausedContext)
159 | }
Foundation.Progress:43:14: note: 'cancelled' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
43 | open var cancelled: Bool { get }
| `- note: 'cancelled' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:158:73: warning: 'paused' has been renamed to 'isPaused'
156 | }
157 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.cancelled), context: &Observation.cancelledContext)
158 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.paused), context: &Observation.pausedContext)
| `- warning: 'paused' has been renamed to 'isPaused'
159 | }
160 |
Foundation.Progress:46:14: note: 'paused' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
46 | open var paused: Bool { get }
| `- note: 'paused' was obsoleted in Swift 3
47 | open var cancellationHandler: (@Sendable () -> Void)? { get set }
48 | open var pausingHandler: (@Sendable () -> Void)? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+Future.swift:17:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ProgressCompletionExecutor' may have shared mutable state; this is an error in the Swift 6 language mode
13 | #endif
14 |
15 | private final class ProgressCompletionExecutor: Executor {
| `- note: class 'ProgressCompletionExecutor' does not conform to the 'Sendable' protocol
16 |
17 | static let shared = ProgressCompletionExecutor()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ProgressCompletionExecutor' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
18 |
19 | func submit(_ body: @escaping () -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+Future.swift:48:35: warning: assigning non-sendable parameter 'cancellation' to a @Sendable closure
28 | /// Returns a progress that is indeterminate until `wrapped` is fulfilled,
29 | /// then finishes at 100%.
30 | static func basicProgress<Wrapped: FutureProtocol>(parent: Progress?, for wrapped: Wrapped, uponCancel cancellation: (() -> Void)? = nil) -> Progress {
| `- note: parameter 'cancellation' is implicitly non-sendable
31 | let child = Progress(parent: parent, userInfo: [
32 | Progress.didTaskGenerateKey: true
:
46 | }
47 |
48 | child.cancellationHandler = cancellation
| `- warning: assigning non-sendable parameter 'cancellation' to a @Sendable closure
49 | child.isCancellable = cancellation != nil
50 | return child
[41/41] Compiling Task Progress+Future.swift
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:96:20: warning: static property 'fractionContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
94 | /// delivery of notifications after deinit.
95 | final class Observation: NSObject {
96 | static var fractionContext = false
| |- warning: static property 'fractionContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fractionContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'fractionContext' 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
97 | static var attributesContext = false
98 | static var cancelledContext = false
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:97:20: warning: static property 'attributesContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
95 | final class Observation: NSObject {
96 | static var fractionContext = false
97 | static var attributesContext = false
| |- warning: static property 'attributesContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'attributesContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'attributesContext' 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
98 | static var cancelledContext = false
99 | static var pausedContext = false
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:98:20: warning: static property 'cancelledContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
96 | static var fractionContext = false
97 | static var attributesContext = false
98 | static var cancelledContext = false
| |- warning: static property 'cancelledContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cancelledContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'cancelledContext' 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
99 | static var pausedContext = false
100 |
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:99:20: warning: static property 'pausedContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
97 | static var attributesContext = false
98 | static var cancelledContext = false
99 | static var pausedContext = false
| |- warning: static property 'pausedContext' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'pausedContext' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'pausedContext' 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
100 |
101 | static let fractionKeyPaths = [
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:109:31: warning: 'cancellable' has been renamed to 'isCancellable'
107 | #keyPath(Progress.localizedDescription),
108 | #keyPath(Progress.localizedAdditionalDescription),
109 | #keyPath(Progress.cancellable),
| `- warning: 'cancellable' has been renamed to 'isCancellable'
110 | #keyPath(Progress.pausable),
111 | #keyPath(Progress.kind)
Foundation.Progress:37:14: note: 'cancellable' was obsoleted in Swift 3
35 | open var isCancellable: Bool { get set }
36 | @available(swift, obsoleted: 3, renamed: "isCancellable")
37 | open var cancellable: Bool { get set }
| `- note: 'cancellable' was obsoleted in Swift 3
38 | open var isPausable: Bool { get set }
39 | @available(swift, obsoleted: 3, renamed: "isPausable")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:110:31: warning: 'pausable' has been renamed to 'isPausable'
108 | #keyPath(Progress.localizedAdditionalDescription),
109 | #keyPath(Progress.cancellable),
110 | #keyPath(Progress.pausable),
| `- warning: 'pausable' has been renamed to 'isPausable'
111 | #keyPath(Progress.kind)
112 | ]
Foundation.Progress:40:14: note: 'pausable' was obsoleted in Swift 3
38 | open var isPausable: Bool { get set }
39 | @available(swift, obsoleted: 3, renamed: "isPausable")
40 | open var pausable: Bool { get set }
| `- note: 'pausable' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:20:21: warning: class 'ProxyProgress' must restate inherited '@unchecked Sendable' conformance
18 | /// tree.
19 | @objc(BNRTaskProxyProgress)
20 | private final class ProxyProgress: Progress {
| `- warning: class 'ProxyProgress' must restate inherited '@unchecked Sendable' conformance
21 |
22 | @objc dynamic let observee: Progress
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:139:70: warning: 'cancelled' has been renamed to 'isCancelled'
137 | observee.addObserver(self, forKeyPath: key, options: [ .initial, .new ], context: &Observation.attributesContext)
138 | }
139 | observee.addObserver(self, forKeyPath: #keyPath(Progress.cancelled), options: .initial, context: &Observation.cancelledContext)
| `- warning: 'cancelled' has been renamed to 'isCancelled'
140 | observee.addObserver(self, forKeyPath: #keyPath(Progress.paused), options: .initial, context: &Observation.pausedContext)
141 |
Foundation.Progress:43:14: note: 'cancelled' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
43 | open var cancelled: Bool { get }
| `- note: 'cancelled' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:140:70: warning: 'paused' has been renamed to 'isPaused'
138 | }
139 | observee.addObserver(self, forKeyPath: #keyPath(Progress.cancelled), options: .initial, context: &Observation.cancelledContext)
140 | observee.addObserver(self, forKeyPath: #keyPath(Progress.paused), options: .initial, context: &Observation.pausedContext)
| `- warning: 'paused' has been renamed to 'isPaused'
141 |
142 | bnr_atomic_fetch_or(&state, State.observing.rawValue, .release)
Foundation.Progress:46:14: note: 'paused' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
46 | open var paused: Bool { get }
| `- note: 'paused' was obsoleted in Swift 3
47 | open var cancellationHandler: (@Sendable () -> Void)? { get set }
48 | open var pausingHandler: (@Sendable () -> Void)? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:157:73: warning: 'cancelled' has been renamed to 'isCancelled'
155 | observee.removeObserver(self, forKeyPath: key, context: &Observation.attributesContext)
156 | }
157 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.cancelled), context: &Observation.cancelledContext)
| `- warning: 'cancelled' has been renamed to 'isCancelled'
158 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.paused), context: &Observation.pausedContext)
159 | }
Foundation.Progress:43:14: note: 'cancelled' was obsoleted in Swift 3
41 | open var isCancelled: Bool { get }
42 | @available(swift, obsoleted: 3, renamed: "isCancelled")
43 | open var cancelled: Bool { get }
| `- note: 'cancelled' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+ExplicitComposition.swift:158:73: warning: 'paused' has been renamed to 'isPaused'
156 | }
157 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.cancelled), context: &Observation.cancelledContext)
158 | observee.removeObserver(self, forKeyPath: #keyPath(Progress.paused), context: &Observation.pausedContext)
| `- warning: 'paused' has been renamed to 'isPaused'
159 | }
160 |
Foundation.Progress:46:14: note: 'paused' was obsoleted in Swift 3
44 | open var isPaused: Bool { get }
45 | @available(swift, obsoleted: 3, renamed: "isPaused")
46 | open var paused: Bool { get }
| `- note: 'paused' was obsoleted in Swift 3
47 | open var cancellationHandler: (@Sendable () -> Void)? { get set }
48 | open var pausingHandler: (@Sendable () -> Void)? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+Future.swift:17:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ProgressCompletionExecutor' may have shared mutable state; this is an error in the Swift 6 language mode
13 | #endif
14 |
15 | private final class ProgressCompletionExecutor: Executor {
| `- note: class 'ProgressCompletionExecutor' does not conform to the 'Sendable' protocol
16 |
17 | static let shared = ProgressCompletionExecutor()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ProgressCompletionExecutor' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
18 |
19 | func submit(_ body: @escaping () -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Task/Progress+Future.swift:48:35: warning: assigning non-sendable parameter 'cancellation' to a @Sendable closure
28 | /// Returns a progress that is indeterminate until `wrapped` is fulfilled,
29 | /// then finishes at 100%.
30 | static func basicProgress<Wrapped: FutureProtocol>(parent: Progress?, for wrapped: Wrapped, uponCancel cancellation: (() -> Void)? = nil) -> Progress {
| `- note: parameter 'cancellation' is implicitly non-sendable
31 | let child = Progress(parent: parent, userInfo: [
32 | Progress.didTaskGenerateKey: true
:
46 | }
47 |
48 | child.cancellationHandler = cancellation
| `- warning: assigning non-sendable parameter 'cancellation' to a @Sendable closure
49 | child.isCancellable = cancellation != nil
50 | return child
Build complete! (13.39s)
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Tests/DeferredTests/Tests/AllTestsCommon.swift': File not found.
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Tests/TaskTests/Tests/AllTestsCommon.swift': File not found.
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Deferred",
"name" : "Deferred",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Deferred",
"targets" : [
"Deferred",
"Task"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"4.2",
"5"
],
"targets" : [
{
"c99name" : "TaskTests",
"module_type" : "SwiftTarget",
"name" : "TaskTests",
"path" : "Tests/TaskTests",
"sources" : [
"AllTestsCommon.swift",
"TaskAsyncTests.swift",
"TaskComprehensiveTests.swift",
"TaskProgressTests.swift",
"TaskProtocolTests.swift",
"TaskResultTests.swift",
"TaskTests.swift"
],
"target_dependencies" : [
"Deferred",
"Task"
],
"type" : "test"
},
{
"c99name" : "Task",
"module_type" : "SwiftTarget",
"name" : "Task",
"path" : "Sources/Task",
"product_memberships" : [
"Deferred"
],
"sources" : [
"Either.swift",
"ExistentialTask.swift",
"Progress+ExplicitComposition.swift",
"Progress+Future.swift",
"Task.swift",
"TaskAndThen.swift",
"TaskAsync.swift",
"TaskChain.swift",
"TaskCollections.swift",
"TaskFallback.swift",
"TaskIgnore.swift",
"TaskMap.swift",
"TaskPromise.swift",
"TaskRecovery.swift",
"TaskResult.swift",
"TaskUpon.swift"
],
"target_dependencies" : [
"Deferred"
],
"type" : "library"
},
{
"c99name" : "DeferredTests",
"module_type" : "SwiftTarget",
"name" : "DeferredTests",
"path" : "Tests/DeferredTests",
"sources" : [
"AllTestsCommon.swift",
"DeferredTests.swift",
"ExistentialFutureTests.swift",
"FilledDeferredTests.swift",
"FutureAsyncTests.swift",
"FutureCustomExecutorTests.swift",
"FutureIgnoreTests.swift",
"FutureTests.swift",
"LockingTests.swift",
"ObjectDeferredTests.swift",
"PerformanceTests.swift",
"ProtectedTests.swift",
"SwiftBugTests.swift"
],
"target_dependencies" : [
"Deferred"
],
"type" : "test"
},
{
"c99name" : "Deferred",
"module_type" : "SwiftTarget",
"name" : "Deferred",
"path" : "Sources/Deferred",
"product_memberships" : [
"Deferred"
],
"sources" : [
"Atomics.swift",
"Deferred.swift",
"DeferredQueue.swift",
"DeferredVariant.swift",
"Executor.swift",
"ExistentialFuture.swift",
"Future.swift",
"FutureAndThen.swift",
"FutureAsync.swift",
"FutureCollections.swift",
"FutureComposition.swift",
"FutureEveryMap.swift",
"FutureIgnore.swift",
"FutureMap.swift",
"FuturePeek.swift",
"FutureUpon.swift",
"Locking.swift",
"Promise.swift",
"Protected.swift"
],
"target_dependencies" : [
"Atomics"
],
"type" : "library"
},
{
"c99name" : "Atomics",
"module_type" : "ClangTarget",
"name" : "Atomics",
"path" : "Sources/Atomics",
"product_memberships" : [
"Deferred"
],
"sources" : [
"Empty.c"
],
"type" : "library"
}
],
"tools_version" : "4.2"
}
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Tests/DeferredTests/Tests/AllTestsCommon.swift': File not found.
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Tests/TaskTests/Tests/AllTestsCommon.swift': File not found.
Done.