The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of OperationPlus, reference 1.6.0 (1340f9), with Swift 6.0 for Linux on 29 Nov 2024 20:07:13 UTC.

Swift 6 data race errors: 1

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.58.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ChimeHQ/OperationPlus.git
Reference: 1.6.0
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/ChimeHQ/OperationPlus
 * tag               1.6.0      -> FETCH_HEAD
HEAD is now at 1340f95 availability annotation for tests
Cloned https://github.com/ChimeHQ/OperationPlus.git
Revision (git rev-parse @):
1340f95dce3e93d742497d88db18f8676f4badf4
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/ChimeHQ/OperationPlus.git at 1.6.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/ChimeHQ/OperationPlus.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/25] Emitting module OperationPlus
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerOperation.swift:12:14: warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerOperation
12 | public class AsyncBlockConsumerOperation<Input>: AsyncConsumerOperation<Input> {
   |              `- warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping () -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerProducerOperation.swift:12:14: warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerProducerOperation
12 | public class AsyncBlockConsumerProducerOperation<Input, Output>: AsyncConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockOperation.swift:12:14: warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An operation for enqueuing inline work that can be completed with a callback
12 | public class AsyncBlockOperation: AsyncOperation {
   |              `- warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping () -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockProducerOperation.swift:12:14: warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockProducerOperation
12 | public class AsyncBlockProducerOperation<Output>: AsyncProducerOperation<Output> {
   |              `- warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerOperation.swift:12:12: warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerOperation
12 | open class AsyncConsumerOperation<Input>: ConsumerOperation<Input> {
   |            `- warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerProducerOperation.swift:12:12: warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerProducerOperation
12 | open class AsyncConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |            `- warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncOperation.swift:11:12: warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncOperation : BaseOperation {
   |            `- warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncProducerOperation.swift:11:12: warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncProducerOperation<Output> : ProducerOperation<Output> {
   |            `- warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:11:12: warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
  9 | import Foundation
 10 |
 11 | open class BaseOperation : Operation {
    |            `- warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
 12 |     public enum State {
 13 |         case notStarted
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperationError.swift:20:10: warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
18 | public enum BaseOperationError: Error {
19 |     case dependencyAddedInInvalidState(Operation)
20 |     case stateTransitionInvalid(BaseOperation.State)
   |          `- warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
21 |     case timedOut
22 | }
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:12:17: note: consider making enum 'State' conform to the 'Sendable' protocol
 10 |
 11 | open class BaseOperation : Operation {
 12 |     public enum State {
    |                 `- note: consider making enum 'State' conform to the 'Sendable' protocol
 13 |         case notStarted
 14 |         case running
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerOperation.swift:12:14: warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerOperation
12 | public class BlockConsumerOperation<Input>: ConsumerOperation<Input> {
   |              `- warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: (Input) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerProducerOperation.swift:12:14: warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerProducerOperation
12 | public class BlockConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias Block = (Input) -> Output?
14 |
/host/spi-builder-workspace/Sources/OperationPlus/BlockProducerOperation.swift:12:14: warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ProducerOperation
12 | public class BlockProducerOperation<Output>: ProducerOperation<Output> {
   |              `- warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: () -> Output?
14 |
/host/spi-builder-workspace/Sources/OperationPlus/ConsumerProducerOperation.swift:13:12: warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
11 | /// An operation that depends on and uses the value of a ProducerOperation, and also
12 | /// itself produces a value
13 | open class ConsumerProducerOperation<Input, Output>: ProducerOperation<Output> {
   |            `- warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
14 |     private let producerOp: ProducerOperation<Input>
15 |
/host/spi-builder-workspace/Sources/OperationPlus/ProducerOperation.swift:11:12: warning: class 'ProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class ProducerOperation<Output> : BaseOperation {
   |            `- warning: class 'ProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     public enum OutputCompletionBlockBehavior {
13 |         case onCompletionOnly
[5/27] Compiling OperationPlus AsyncOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncOperation.swift:11:12: warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncOperation : BaseOperation {
   |            `- warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncProducerOperation.swift:11:12: warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncProducerOperation<Output> : ProducerOperation<Output> {
   |            `- warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:11:12: warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
  9 | import Foundation
 10 |
 11 | open class BaseOperation : Operation {
    |            `- warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
 12 |     public enum State {
 13 |         case notStarted
[6/27] Compiling OperationPlus AsyncProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncOperation.swift:11:12: warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncOperation : BaseOperation {
   |            `- warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncProducerOperation.swift:11:12: warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncProducerOperation<Output> : ProducerOperation<Output> {
   |            `- warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:11:12: warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
  9 | import Foundation
 10 |
 11 | open class BaseOperation : Operation {
    |            `- warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
 12 |     public enum State {
 13 |         case notStarted
[7/27] Compiling OperationPlus BaseOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncOperation.swift:11:12: warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncOperation : BaseOperation {
   |            `- warning: class 'AsyncOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncProducerOperation.swift:11:12: warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class AsyncProducerOperation<Output> : ProducerOperation<Output> {
   |            `- warning: class 'AsyncProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     override open var isAsynchronous: Bool {
13 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:11:12: warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
  9 | import Foundation
 10 |
 11 | open class BaseOperation : Operation {
    |            `- warning: class 'BaseOperation' must restate inherited '@unchecked Sendable' conformance
 12 |     public enum State {
 13 |         case notStarted
[8/27] Compiling OperationPlus OperationQueue+Emptied.swift
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Emptied.swift:14:40: warning: passing non-sendable parameter 'completionBlock' to function expecting a @Sendable closure
11 | extension OperationQueue {
12 |     @discardableResult
13 |     public func currentOperationsFinished(completionBlock: @escaping () -> Void) -> Operation {
   |                                           `- note: parameter 'completionBlock' is implicitly non-sendable
14 |         let op = BlockOperation(block: completionBlock)
   |                                        `- warning: passing non-sendable parameter 'completionBlock' to function expecting a @Sendable closure
15 |
16 |         addOperation(op, dependencies: self.operations)
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Enqueuing.swift:58:44: warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
 55 |     /// - Parameter delay: The amount of time to wait before scheduling op.
 56 |     /// - Parameter block: The block to be invoked on the queue.
 57 |     public func addOperation(afterDelay delay: TimeInterval, block: @escaping () -> Void) {
    |                                                              `- note: parameter 'block' is implicitly non-sendable
 58 |         addOperation(BlockOperation(block: block), afterDelay: delay)
    |                                            `- warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
 59 |     }
 60 | }
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Enqueuing.swift:73:27: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 71 |     public func addOperation(block: @Sendable @escaping () async -> Void) {
 72 |         let op = AsyncBlockOperation { opBlock in
 73 |             Task.detached {
    |                           `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 74 |                 await block()
 75 |
 76 |                 opBlock()
    |                 `- note: closure captures 'opBlock' which is accessible to code in the current task
 77 |             }
 78 |         }
[9/27] Compiling OperationPlus OperationQueue+Enqueuing.swift
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Emptied.swift:14:40: warning: passing non-sendable parameter 'completionBlock' to function expecting a @Sendable closure
11 | extension OperationQueue {
12 |     @discardableResult
13 |     public func currentOperationsFinished(completionBlock: @escaping () -> Void) -> Operation {
   |                                           `- note: parameter 'completionBlock' is implicitly non-sendable
14 |         let op = BlockOperation(block: completionBlock)
   |                                        `- warning: passing non-sendable parameter 'completionBlock' to function expecting a @Sendable closure
15 |
16 |         addOperation(op, dependencies: self.operations)
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Enqueuing.swift:58:44: warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
 55 |     /// - Parameter delay: The amount of time to wait before scheduling op.
 56 |     /// - Parameter block: The block to be invoked on the queue.
 57 |     public func addOperation(afterDelay delay: TimeInterval, block: @escaping () -> Void) {
    |                                                              `- note: parameter 'block' is implicitly non-sendable
 58 |         addOperation(BlockOperation(block: block), afterDelay: delay)
    |                                            `- warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
 59 |     }
 60 | }
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Enqueuing.swift:73:27: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 71 |     public func addOperation(block: @Sendable @escaping () async -> Void) {
 72 |         let op = AsyncBlockOperation { opBlock in
 73 |             Task.detached {
    |                           `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 74 |                 await block()
 75 |
 76 |                 opBlock()
    |                 `- note: closure captures 'opBlock' which is accessible to code in the current task
 77 |             }
 78 |         }
[10/27] Compiling OperationPlus OperationQueue+Preconditions.swift
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Emptied.swift:14:40: warning: passing non-sendable parameter 'completionBlock' to function expecting a @Sendable closure
11 | extension OperationQueue {
12 |     @discardableResult
13 |     public func currentOperationsFinished(completionBlock: @escaping () -> Void) -> Operation {
   |                                           `- note: parameter 'completionBlock' is implicitly non-sendable
14 |         let op = BlockOperation(block: completionBlock)
   |                                        `- warning: passing non-sendable parameter 'completionBlock' to function expecting a @Sendable closure
15 |
16 |         addOperation(op, dependencies: self.operations)
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Enqueuing.swift:58:44: warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
 55 |     /// - Parameter delay: The amount of time to wait before scheduling op.
 56 |     /// - Parameter block: The block to be invoked on the queue.
 57 |     public func addOperation(afterDelay delay: TimeInterval, block: @escaping () -> Void) {
    |                                                              `- note: parameter 'block' is implicitly non-sendable
 58 |         addOperation(BlockOperation(block: block), afterDelay: delay)
    |                                            `- warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
 59 |     }
 60 | }
/host/spi-builder-workspace/Sources/OperationPlus/Extensions/OperationQueue+Enqueuing.swift:73:27: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 71 |     public func addOperation(block: @Sendable @escaping () async -> Void) {
 72 |         let op = AsyncBlockOperation { opBlock in
 73 |             Task.detached {
    |                           `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 74 |                 await block()
 75 |
 76 |                 opBlock()
    |                 `- note: closure captures 'opBlock' which is accessible to code in the current task
 77 |             }
 78 |         }
[11/27] Compiling OperationPlus AsyncBlockConsumerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerOperation.swift:12:14: warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerOperation
12 | public class AsyncBlockConsumerOperation<Input>: AsyncConsumerOperation<Input> {
   |              `- warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping () -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerProducerOperation.swift:12:14: warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerProducerOperation
12 | public class AsyncBlockConsumerProducerOperation<Input, Output>: AsyncConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockOperation.swift:12:14: warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An operation for enqueuing inline work that can be completed with a callback
12 | public class AsyncBlockOperation: AsyncOperation {
   |              `- warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping () -> Void) -> Void
14 |
[12/27] Compiling OperationPlus AsyncBlockConsumerProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerOperation.swift:12:14: warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerOperation
12 | public class AsyncBlockConsumerOperation<Input>: AsyncConsumerOperation<Input> {
   |              `- warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping () -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerProducerOperation.swift:12:14: warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerProducerOperation
12 | public class AsyncBlockConsumerProducerOperation<Input, Output>: AsyncConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockOperation.swift:12:14: warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An operation for enqueuing inline work that can be completed with a callback
12 | public class AsyncBlockOperation: AsyncOperation {
   |              `- warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping () -> Void) -> Void
14 |
[13/27] Compiling OperationPlus AsyncBlockOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerOperation.swift:12:14: warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerOperation
12 | public class AsyncBlockConsumerOperation<Input>: AsyncConsumerOperation<Input> {
   |              `- warning: class 'AsyncBlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping () -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockConsumerProducerOperation.swift:12:14: warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockConsumerProducerOperation
12 | public class AsyncBlockConsumerProducerOperation<Input, Output>: AsyncConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'AsyncBlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (Input, @escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockOperation.swift:12:14: warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An operation for enqueuing inline work that can be completed with a callback
12 | public class AsyncBlockOperation: AsyncOperation {
   |              `- warning: class 'AsyncBlockOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping () -> Void) -> Void
14 |
[14/27] Compiling OperationPlus AsyncBlockProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockProducerOperation.swift:12:14: warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockProducerOperation
12 | public class AsyncBlockProducerOperation<Output>: AsyncProducerOperation<Output> {
   |              `- warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerOperation.swift:12:12: warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerOperation
12 | open class AsyncConsumerOperation<Input>: ConsumerOperation<Input> {
   |            `- warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerProducerOperation.swift:12:12: warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerProducerOperation
12 | open class AsyncConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |            `- warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
[15/27] Compiling OperationPlus AsyncConsumerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockProducerOperation.swift:12:14: warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockProducerOperation
12 | public class AsyncBlockProducerOperation<Output>: AsyncProducerOperation<Output> {
   |              `- warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerOperation.swift:12:12: warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerOperation
12 | open class AsyncConsumerOperation<Input>: ConsumerOperation<Input> {
   |            `- warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerProducerOperation.swift:12:12: warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerProducerOperation
12 | open class AsyncConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |            `- warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
[16/27] Compiling OperationPlus AsyncConsumerProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/AsyncBlockProducerOperation.swift:12:14: warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of BlockProducerOperation
12 | public class AsyncBlockProducerOperation<Output>: AsyncProducerOperation<Output> {
   |              `- warning: class 'AsyncBlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias CompletionHandler = (@escaping (Output?) -> Void) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerOperation.swift:12:12: warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerOperation
12 | open class AsyncConsumerOperation<Input>: ConsumerOperation<Input> {
   |            `- warning: class 'AsyncConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
/host/spi-builder-workspace/Sources/OperationPlus/AsyncConsumerProducerOperation.swift:12:12: warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// An asynchronous variant of ConsumerProducerOperation
12 | open class AsyncConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |            `- warning: class 'AsyncConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     override open var isAsynchronous: Bool {
14 |         return true
[17/27] Compiling OperationPlus Publishers.swift
/host/spi-builder-workspace/Sources/OperationPlus/ProducerOperation.swift:11:12: warning: class 'ProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class ProducerOperation<Output> : BaseOperation {
   |            `- warning: class 'ProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     public enum OutputCompletionBlockBehavior {
13 |         case onCompletionOnly
[18/27] Compiling OperationPlus ProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/ProducerOperation.swift:11:12: warning: class 'ProducerOperation' must restate inherited '@unchecked Sendable' conformance
 9 | import Foundation
10 |
11 | open class ProducerOperation<Output> : BaseOperation {
   |            `- warning: class 'ProducerOperation' must restate inherited '@unchecked Sendable' conformance
12 |     public enum OutputCompletionBlockBehavior {
13 |         case onCompletionOnly
[19/27] Compiling OperationPlus Operation+Dependencies.swift
[20/27] Compiling OperationPlus OperationQueue+Creation.swift
[21/27] Compiling OperationPlus OperationQueue+Dependencies.swift
[22/27] Compiling OperationPlus BlockProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/BlockProducerOperation.swift:12:14: warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ProducerOperation
12 | public class BlockProducerOperation<Output>: ProducerOperation<Output> {
   |              `- warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: () -> Output?
14 |
/host/spi-builder-workspace/Sources/OperationPlus/ConsumerProducerOperation.swift:13:12: warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
11 | /// An operation that depends on and uses the value of a ProducerOperation, and also
12 | /// itself produces a value
13 | open class ConsumerProducerOperation<Input, Output>: ProducerOperation<Output> {
   |            `- warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
14 |     private let producerOp: ProducerOperation<Input>
15 |
[23/27] Compiling OperationPlus ConsumerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/BlockProducerOperation.swift:12:14: warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ProducerOperation
12 | public class BlockProducerOperation<Output>: ProducerOperation<Output> {
   |              `- warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: () -> Output?
14 |
/host/spi-builder-workspace/Sources/OperationPlus/ConsumerProducerOperation.swift:13:12: warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
11 | /// An operation that depends on and uses the value of a ProducerOperation, and also
12 | /// itself produces a value
13 | open class ConsumerProducerOperation<Input, Output>: ProducerOperation<Output> {
   |            `- warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
14 |     private let producerOp: ProducerOperation<Input>
15 |
[24/27] Compiling OperationPlus ConsumerProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/BlockProducerOperation.swift:12:14: warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ProducerOperation
12 | public class BlockProducerOperation<Output>: ProducerOperation<Output> {
   |              `- warning: class 'BlockProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: () -> Output?
14 |
/host/spi-builder-workspace/Sources/OperationPlus/ConsumerProducerOperation.swift:13:12: warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
11 | /// An operation that depends on and uses the value of a ProducerOperation, and also
12 | /// itself produces a value
13 | open class ConsumerProducerOperation<Input, Output>: ProducerOperation<Output> {
   |            `- warning: class 'ConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
14 |     private let producerOp: ProducerOperation<Input>
15 |
[25/27] Compiling OperationPlus BaseOperationError.swift
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperationError.swift:20:10: warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
18 | public enum BaseOperationError: Error {
19 |     case dependencyAddedInInvalidState(Operation)
20 |     case stateTransitionInvalid(BaseOperation.State)
   |          `- warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
21 |     case timedOut
22 | }
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:12:17: note: consider making enum 'State' conform to the 'Sendable' protocol
 10 |
 11 | open class BaseOperation : Operation {
 12 |     public enum State {
    |                 `- note: consider making enum 'State' conform to the 'Sendable' protocol
 13 |         case notStarted
 14 |         case running
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerOperation.swift:12:14: warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerOperation
12 | public class BlockConsumerOperation<Input>: ConsumerOperation<Input> {
   |              `- warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: (Input) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerProducerOperation.swift:12:14: warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerProducerOperation
12 | public class BlockConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias Block = (Input) -> Output?
14 |
[26/27] Compiling OperationPlus BlockConsumerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperationError.swift:20:10: warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
18 | public enum BaseOperationError: Error {
19 |     case dependencyAddedInInvalidState(Operation)
20 |     case stateTransitionInvalid(BaseOperation.State)
   |          `- warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
21 |     case timedOut
22 | }
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:12:17: note: consider making enum 'State' conform to the 'Sendable' protocol
 10 |
 11 | open class BaseOperation : Operation {
 12 |     public enum State {
    |                 `- note: consider making enum 'State' conform to the 'Sendable' protocol
 13 |         case notStarted
 14 |         case running
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerOperation.swift:12:14: warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerOperation
12 | public class BlockConsumerOperation<Input>: ConsumerOperation<Input> {
   |              `- warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: (Input) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerProducerOperation.swift:12:14: warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerProducerOperation
12 | public class BlockConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias Block = (Input) -> Output?
14 |
[27/27] Compiling OperationPlus BlockConsumerProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperationError.swift:20:10: warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
18 | public enum BaseOperationError: Error {
19 |     case dependencyAddedInInvalidState(Operation)
20 |     case stateTransitionInvalid(BaseOperation.State)
   |          `- warning: associated value 'stateTransitionInvalid' of 'Sendable'-conforming enum 'BaseOperationError' has non-sendable type 'BaseOperation.State'; this is an error in the Swift 6 language mode
21 |     case timedOut
22 | }
/host/spi-builder-workspace/Sources/OperationPlus/BaseOperation.swift:12:17: note: consider making enum 'State' conform to the 'Sendable' protocol
 10 |
 11 | open class BaseOperation : Operation {
 12 |     public enum State {
    |                 `- note: consider making enum 'State' conform to the 'Sendable' protocol
 13 |         case notStarted
 14 |         case running
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerOperation.swift:12:14: warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerOperation
12 | public class BlockConsumerOperation<Input>: ConsumerOperation<Input> {
   |              `- warning: class 'BlockConsumerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     private let block: (Input) -> Void
14 |
/host/spi-builder-workspace/Sources/OperationPlus/BlockConsumerProducerOperation.swift:12:14: warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
10 |
11 | /// A block-based version of ConsumerProducerOperation
12 | public class BlockConsumerProducerOperation<Input, Output>: ConsumerProducerOperation<Input, Output> {
   |              `- warning: class 'BlockConsumerProducerOperation' must restate inherited '@unchecked Sendable' conformance
13 |     public typealias Block = (Input) -> Output?
14 |
[29/33] Compiling OperationTestingPlus NeverFinishingOperation.swift
/host/spi-builder-workspace/Sources/OperationTestingPlus/NeverFinishingOperation.swift:16:14: warning: class 'NeverFinishingOperation' must restate inherited '@unchecked Sendable' conformance
14 | ///
15 | /// Warning: This operation will completely block a serial queue forever
16 | public class NeverFinishingOperation: BaseOperation {
   |              `- warning: class 'NeverFinishingOperation' must restate inherited '@unchecked Sendable' conformance
17 |     public override func main() {
18 |     }
[30/33] Emitting module OperationTestingPlus
/host/spi-builder-workspace/Sources/OperationTestingPlus/FulfillExpectationOperation.swift:13:14: warning: class 'FulfillExpectationOperation' must restate inherited '@unchecked Sendable' conformance
11 | /// This Operation subclass will fulfill an `XCTestExpectation` when it
12 | /// completes.
13 | public class FulfillExpectationOperation: Operation {
   |              `- warning: class 'FulfillExpectationOperation' must restate inherited '@unchecked Sendable' conformance
14 |     private let expectation: XCTestExpectation
15 |
/host/spi-builder-workspace/Sources/OperationTestingPlus/NeverFinishingOperation.swift:16:14: warning: class 'NeverFinishingOperation' must restate inherited '@unchecked Sendable' conformance
14 | ///
15 | /// Warning: This operation will completely block a serial queue forever
16 | public class NeverFinishingOperation: BaseOperation {
   |              `- warning: class 'NeverFinishingOperation' must restate inherited '@unchecked Sendable' conformance
17 |     public override func main() {
18 |     }
/host/spi-builder-workspace/Sources/OperationTestingPlus/NeverFinishingProducerOperation.swift:16:14: warning: class 'NeverFinishingProducerOperation' must restate inherited '@unchecked Sendable' conformance
14 | ///
15 | /// Warning: This operation will completely block a serial queue forever
16 | public class NeverFinishingProducerOperation<Output>: ProducerOperation<Output> {
   |              `- warning: class 'NeverFinishingProducerOperation' must restate inherited '@unchecked Sendable' conformance
17 |     public override func main() {
18 |     }
/host/spi-builder-workspace/Sources/OperationTestingPlus/OperationExpectation.swift:14:14: warning: class 'OperationExpectation' must restate inherited '@unchecked Sendable' conformance
12 | /// An expectation that is fulfilled when an operation
13 | /// has finished execution.
14 | public class OperationExpectation: XCTestExpectation {
   |              `- warning: class 'OperationExpectation' must restate inherited '@unchecked Sendable' conformance
15 |     public var queue: OperationQueue
16 |
[31/33] Compiling OperationTestingPlus FulfillExpectationOperation.swift
/host/spi-builder-workspace/Sources/OperationTestingPlus/FulfillExpectationOperation.swift:13:14: warning: class 'FulfillExpectationOperation' must restate inherited '@unchecked Sendable' conformance
11 | /// This Operation subclass will fulfill an `XCTestExpectation` when it
12 | /// completes.
13 | public class FulfillExpectationOperation: Operation {
   |              `- warning: class 'FulfillExpectationOperation' must restate inherited '@unchecked Sendable' conformance
14 |     private let expectation: XCTestExpectation
15 |
[32/33] Compiling OperationTestingPlus NeverFinishingProducerOperation.swift
/host/spi-builder-workspace/Sources/OperationTestingPlus/NeverFinishingProducerOperation.swift:16:14: warning: class 'NeverFinishingProducerOperation' must restate inherited '@unchecked Sendable' conformance
14 | ///
15 | /// Warning: This operation will completely block a serial queue forever
16 | public class NeverFinishingProducerOperation<Output>: ProducerOperation<Output> {
   |              `- warning: class 'NeverFinishingProducerOperation' must restate inherited '@unchecked Sendable' conformance
17 |     public override func main() {
18 |     }
[33/33] Compiling OperationTestingPlus OperationExpectation.swift
/host/spi-builder-workspace/Sources/OperationTestingPlus/OperationExpectation.swift:14:14: warning: class 'OperationExpectation' must restate inherited '@unchecked Sendable' conformance
12 | /// An expectation that is fulfilled when an operation
13 | /// has finished execution.
14 | public class OperationExpectation: XCTestExpectation {
   |              `- warning: class 'OperationExpectation' must restate inherited '@unchecked Sendable' conformance
15 |     public var queue: OperationQueue
16 |
Build complete! (25.45s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "OperationPlus",
  "name" : "OperationPlus",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.10"
    },
    {
      "name" : "ios",
      "version" : "9.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "OperationPlus",
      "targets" : [
        "OperationPlus"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OperationTestingPlus",
      "targets" : [
        "OperationTestingPlus"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "OperationTestingPlus",
      "module_type" : "SwiftTarget",
      "name" : "OperationTestingPlus",
      "path" : "Sources/OperationTestingPlus",
      "product_memberships" : [
        "OperationTestingPlus"
      ],
      "sources" : [
        "FulfillExpectationOperation.swift",
        "NeverFinishingOperation.swift",
        "NeverFinishingProducerOperation.swift",
        "OperationExpectation.swift"
      ],
      "target_dependencies" : [
        "OperationPlus"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OperationPlusTests",
      "module_type" : "SwiftTarget",
      "name" : "OperationPlusTests",
      "path" : "Tests/OperationPlusTests",
      "sources" : [
        "AsyncBlockOperationTests.swift",
        "BaseOperationTests.swift",
        "CombineTests.swift",
        "OperationQueueTests.swift",
        "ProducerConsumerTests.swift",
        "TestHelpers.swift"
      ],
      "target_dependencies" : [
        "OperationPlus",
        "OperationTestingPlus"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OperationPlus",
      "module_type" : "SwiftTarget",
      "name" : "OperationPlus",
      "path" : "Sources/OperationPlus",
      "product_memberships" : [
        "OperationPlus",
        "OperationTestingPlus"
      ],
      "sources" : [
        "AsyncBlockConsumerOperation.swift",
        "AsyncBlockConsumerProducerOperation.swift",
        "AsyncBlockOperation.swift",
        "AsyncBlockProducerOperation.swift",
        "AsyncConsumerOperation.swift",
        "AsyncConsumerProducerOperation.swift",
        "AsyncOperation.swift",
        "AsyncProducerOperation.swift",
        "BaseOperation.swift",
        "BaseOperationError.swift",
        "BlockConsumerOperation.swift",
        "BlockConsumerProducerOperation.swift",
        "BlockProducerOperation.swift",
        "ConsumerOperation.swift",
        "ConsumerProducerOperation.swift",
        "Extensions/Operation+Dependencies.swift",
        "Extensions/OperationQueue+Creation.swift",
        "Extensions/OperationQueue+Dependencies.swift",
        "Extensions/OperationQueue+Emptied.swift",
        "Extensions/OperationQueue+Enqueuing.swift",
        "Extensions/OperationQueue+Preconditions.swift",
        "Extensions/Publishers.swift",
        "ProducerOperation.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.