This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 Hydra with Swift 6.0 for Linux.

Swift 6 data race errors: 1

Build Command

bash -c docker run --rm -v "checkouts-4609320-1":/host -w "$workDir" 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 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/malcommac/Hydra.git
Reference: master
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/malcommac/Hydra
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at dde0163 Merge pull request #88 from revolter/patch-1
Cloned https://github.com/malcommac/Hydra.git
Revision (git rev-parse @):
dde016391e8fbeec9fc9aac1174bd73b7311059a
SUCCESS checkout https://github.com/malcommac/Hydra.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $workDir
https://github.com/malcommac/Hydra.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-1":/host -w "$workDir" 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 2>&1
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/24] Emitting module Hydra
/host/spi-builder-workspace/Sources/Hydra/Promise+Await.swift:41:5: warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// The currently executing tasks run on distinct threads that are managed by the dispatch queue.
 40 | /// The exact number of tasks executing at any given point is variable and depends on system conditions.
 41 | let awaitContext = Context.custom(queue: DispatchQueue(label: "com.hydra.awaitcontext", attributes: .concurrent))
    |     |- warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'awaitContext' 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
 42 |
 43 | /// This define a `..` operator you can use instead of calling `await` func.
/host/spi-builder-workspace/Sources/Hydra/Context.swift:48:13: note: consider making enum 'Context' conform to the 'Sendable' protocol
46 | /// - utility: Should we used when work takes a few seconds to a few minutes (work that may take some time to complete and doesn’t require an immediate result, such as downloading or importing data. Utility tasks typically have a progress bar that is visible to the user. Focuses on providing a balance between responsiveness, performance, and energy efficiency).
47 | /// - custom: provide a custom queue
48 | public enum Context {
   |             `- note: consider making enum 'Context' conform to the 'Sendable' protocol
49 | 	case main
50 | 	case userInteractive
[4/27] Compiling Hydra Commons.swift
[5/27] Compiling Hydra Context.swift
[6/27] Compiling Hydra DispatchTimerWrapper.swift
[7/27] Compiling Hydra Promise+Validate.swift
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:168:10: warning: capture of 'self' with non-sendable type 'Promise<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
166 | 					// body can throws and fail. throwing a promise's body is equal to
167 | 					// reject it with the same error.
168 | 					try self.body?( { value in
    |          `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
169 | 						self.set(state: .resolved(value)) // resolved
170 | 					}, { err in
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:169:7: warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
167 | 					// reject it with the same error.
168 | 					try self.body?( { value in
169 | 						self.set(state: .resolved(value)) // resolved
    |       `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
170 | 					}, { err in
171 | 						self.set(state: .rejected(err)) // rejected
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:171:7: warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
169 | 						self.set(state: .resolved(value)) // resolved
170 | 					}, { err in
171 | 						self.set(state: .rejected(err)) // rejected
    |       `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
172 | 					}, self.operation)
173 | 				} catch let err {
[8/27] Compiling Hydra Promise+Zip.swift
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:168:10: warning: capture of 'self' with non-sendable type 'Promise<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
166 | 					// body can throws and fail. throwing a promise's body is equal to
167 | 					// reject it with the same error.
168 | 					try self.body?( { value in
    |          `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
169 | 						self.set(state: .resolved(value)) // resolved
170 | 					}, { err in
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:169:7: warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
167 | 					// reject it with the same error.
168 | 					try self.body?( { value in
169 | 						self.set(state: .resolved(value)) // resolved
    |       `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
170 | 					}, { err in
171 | 						self.set(state: .rejected(err)) // rejected
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:171:7: warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
169 | 						self.set(state: .resolved(value)) // resolved
170 | 					}, { err in
171 | 						self.set(state: .rejected(err)) // rejected
    |       `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
172 | 					}, self.operation)
173 | 				} catch let err {
[9/27] Compiling Hydra Promise.swift
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:168:10: warning: capture of 'self' with non-sendable type 'Promise<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
166 | 					// body can throws and fail. throwing a promise's body is equal to
167 | 					// reject it with the same error.
168 | 					try self.body?( { value in
    |          `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
169 | 						self.set(state: .resolved(value)) // resolved
170 | 					}, { err in
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:169:7: warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
167 | 					// reject it with the same error.
168 | 					try self.body?( { value in
169 | 						self.set(state: .resolved(value)) // resolved
    |       `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
170 | 					}, { err in
171 | 						self.set(state: .rejected(err)) // rejected
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:171:7: warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |              `- note: generic class 'Promise' does not conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
    :
169 | 						self.set(state: .resolved(value)) // resolved
170 | 					}, { err in
171 | 						self.set(state: .rejected(err)) // rejected
    |       `- warning: capture of 'self' with non-sendable type 'Promise<Value>' in an isolated closure; this is an error in the Swift 6 language mode
172 | 					}, self.operation)
173 | 				} catch let err {
[10/27] Compiling Hydra Promise+Observer.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:60:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.ResolveObserver' (aka '(Value) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
58 | 			case (.onResolve(let context, let handler), .resolved(let value)):
59 | 				context.queue.async {
60 | 					handler(value)
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.ResolveObserver' (aka '(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'
61 | 				}
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:60:14: warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
58 | 			case (.onResolve(let context, let handler), .resolved(let value)):
59 | 				context.queue.async {
60 | 					handler(value)
   |              `- warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
61 | 				}
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:35:22: note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |                      `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:64:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.RejectObserver' (aka '(any Error) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
63 | 				context.queue.async {
64 | 					handler(error)
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.RejectObserver' (aka '(any Error) -> ()') 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'
65 | 				}
66 | 			case (.onCancel(let context, let handler), .cancelled):
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:68:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.CancelObserver' (aka '() -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 | 			case (.onCancel(let context, let handler), .cancelled):
67 | 				context.queue.async {
68 | 					handler()
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.CancelObserver' (aka '() -> ()') 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'
69 | 				}
70 | 			default:
[11/27] Compiling Hydra Promise+Pass.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:60:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.ResolveObserver' (aka '(Value) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
58 | 			case (.onResolve(let context, let handler), .resolved(let value)):
59 | 				context.queue.async {
60 | 					handler(value)
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.ResolveObserver' (aka '(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'
61 | 				}
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:60:14: warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
58 | 			case (.onResolve(let context, let handler), .resolved(let value)):
59 | 				context.queue.async {
60 | 					handler(value)
   |              `- warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
61 | 				}
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:35:22: note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |                      `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:64:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.RejectObserver' (aka '(any Error) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
63 | 				context.queue.async {
64 | 					handler(error)
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.RejectObserver' (aka '(any Error) -> ()') 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'
65 | 				}
66 | 			case (.onCancel(let context, let handler), .cancelled):
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:68:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.CancelObserver' (aka '() -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 | 			case (.onCancel(let context, let handler), .cancelled):
67 | 				context.queue.async {
68 | 					handler()
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.CancelObserver' (aka '() -> ()') 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'
69 | 				}
70 | 			default:
[12/27] Compiling Hydra Promise+Recover.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:60:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.ResolveObserver' (aka '(Value) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
58 | 			case (.onResolve(let context, let handler), .resolved(let value)):
59 | 				context.queue.async {
60 | 					handler(value)
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.ResolveObserver' (aka '(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'
61 | 				}
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:60:14: warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
58 | 			case (.onResolve(let context, let handler), .resolved(let value)):
59 | 				context.queue.async {
60 | 					handler(value)
   |              `- warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
61 | 				}
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:35:22: note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |                      `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:64:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.RejectObserver' (aka '(any Error) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | 			case (.onReject(let context, let handler), .rejected(let error)):
63 | 				context.queue.async {
64 | 					handler(error)
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.RejectObserver' (aka '(any Error) -> ()') 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'
65 | 				}
66 | 			case (.onCancel(let context, let handler), .cancelled):
/host/spi-builder-workspace/Sources/Hydra/Promise+Observer.swift:68:6: warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.CancelObserver' (aka '() -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 | 			case (.onCancel(let context, let handler), .cancelled):
67 | 				context.queue.async {
68 | 					handler()
   |      |- warning: capture of 'handler' with non-sendable type 'Promise<Value>.Observer.CancelObserver' (aka '() -> ()') 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'
69 | 				}
70 | 			default:
[13/27] Compiling Hydra Promise+All.swift
[14/27] Compiling Hydra Promise+Always.swift
[15/27] Compiling Hydra Promise+Any.swift
[16/27] Compiling Hydra Promise+Async.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Async.swift:63:4: warning: capture of 'block' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
61 | 	guard let delay = after else {
62 | 		context.queue.async {
63 | 			block()
   |    |- warning: capture of 'block' with non-sendable type '() -> ()' 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'
64 | 		}
65 | 		return
/host/spi-builder-workspace/Sources/Hydra/Promise+Async.swift:68:3: warning: capture of 'block' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 | 	}
67 | 	context.queue.asyncAfter(deadline: .now() + delay) {
68 | 		block()
   |   |- warning: capture of 'block' with non-sendable type '() -> ()' 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'
69 | 	}
70 | }
/host/spi-builder-workspace/Sources/Hydra/Promise+Await.swift:41:5: warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// The currently executing tasks run on distinct threads that are managed by the dispatch queue.
 40 | /// The exact number of tasks executing at any given point is variable and depends on system conditions.
 41 | let awaitContext = Context.custom(queue: DispatchQueue(label: "com.hydra.awaitcontext", attributes: .concurrent))
    |     |- warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'awaitContext' 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
 42 |
 43 | /// This define a `..` operator you can use instead of calling `await` func.
/host/spi-builder-workspace/Sources/Hydra/Context.swift:48:13: note: consider making enum 'Context' conform to the 'Sendable' protocol
46 | /// - utility: Should we used when work takes a few seconds to a few minutes (work that may take some time to complete and doesn’t require an immediate result, such as downloading or importing data. Utility tasks typically have a progress bar that is visible to the user. Focuses on providing a balance between responsiveness, performance, and energy efficiency).
47 | /// - custom: provide a custom queue
48 | public enum Context {
   |             `- note: consider making enum 'Context' conform to the 'Sendable' protocol
49 | 	case main
50 | 	case userInteractive
[17/27] Compiling Hydra Promise+Await.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Async.swift:63:4: warning: capture of 'block' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
61 | 	guard let delay = after else {
62 | 		context.queue.async {
63 | 			block()
   |    |- warning: capture of 'block' with non-sendable type '() -> ()' 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'
64 | 		}
65 | 		return
/host/spi-builder-workspace/Sources/Hydra/Promise+Async.swift:68:3: warning: capture of 'block' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 | 	}
67 | 	context.queue.asyncAfter(deadline: .now() + delay) {
68 | 		block()
   |   |- warning: capture of 'block' with non-sendable type '() -> ()' 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'
69 | 	}
70 | }
/host/spi-builder-workspace/Sources/Hydra/Promise+Await.swift:41:5: warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// The currently executing tasks run on distinct threads that are managed by the dispatch queue.
 40 | /// The exact number of tasks executing at any given point is variable and depends on system conditions.
 41 | let awaitContext = Context.custom(queue: DispatchQueue(label: "com.hydra.awaitcontext", attributes: .concurrent))
    |     |- warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'awaitContext' 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
 42 |
 43 | /// This define a `..` operator you can use instead of calling `await` func.
/host/spi-builder-workspace/Sources/Hydra/Context.swift:48:13: note: consider making enum 'Context' conform to the 'Sendable' protocol
46 | /// - utility: Should we used when work takes a few seconds to a few minutes (work that may take some time to complete and doesn’t require an immediate result, such as downloading or importing data. Utility tasks typically have a progress bar that is visible to the user. Focuses on providing a balance between responsiveness, performance, and energy efficiency).
47 | /// - custom: provide a custom queue
48 | public enum Context {
   |             `- note: consider making enum 'Context' conform to the 'Sendable' protocol
49 | 	case main
50 | 	case userInteractive
[18/27] Compiling Hydra Promise+Cancel.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Async.swift:63:4: warning: capture of 'block' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
61 | 	guard let delay = after else {
62 | 		context.queue.async {
63 | 			block()
   |    |- warning: capture of 'block' with non-sendable type '() -> ()' 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'
64 | 		}
65 | 		return
/host/spi-builder-workspace/Sources/Hydra/Promise+Async.swift:68:3: warning: capture of 'block' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 | 	}
67 | 	context.queue.asyncAfter(deadline: .now() + delay) {
68 | 		block()
   |   |- warning: capture of 'block' with non-sendable type '() -> ()' 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'
69 | 	}
70 | }
/host/spi-builder-workspace/Sources/Hydra/Promise+Await.swift:41:5: warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
 39 | /// The currently executing tasks run on distinct threads that are managed by the dispatch queue.
 40 | /// The exact number of tasks executing at any given point is variable and depends on system conditions.
 41 | let awaitContext = Context.custom(queue: DispatchQueue(label: "com.hydra.awaitcontext", attributes: .concurrent))
    |     |- warning: let 'awaitContext' is not concurrency-safe because non-'Sendable' type 'Context' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'awaitContext' 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
 42 |
 43 | /// This define a `..` operator you can use instead of calling `await` func.
/host/spi-builder-workspace/Sources/Hydra/Context.swift:48:13: note: consider making enum 'Context' conform to the 'Sendable' protocol
46 | /// - utility: Should we used when work takes a few seconds to a few minutes (work that may take some time to complete and doesn’t require an immediate result, such as downloading or importing data. Utility tasks typically have a progress bar that is visible to the user. Focuses on providing a balance between responsiveness, performance, and energy efficiency).
47 | /// - custom: provide a custom queue
48 | public enum Context {
   |             `- note: consider making enum 'Context' conform to the 'Sendable' protocol
49 | 	case main
50 | 	case userInteractive
[19/27] Compiling Hydra Promise+State.swift
[20/27] Compiling Hydra Promise+Then.swift
[21/27] Compiling Hydra Promise+Timeout.swift
[22/27] Compiling Hydra Promise+Catch.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Defer.swift:54:6: warning: capture of 'resolve' with non-sendable type '(Value) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | 				let fireTime: DispatchTime = .now() + seconds
53 | 				ctx.queue.asyncAfter(deadline: fireTime) {
54 | 					resolve(value)
   |      |- warning: capture of 'resolve' 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'
55 | 				}
56 | 			}
/host/spi-builder-workspace/Sources/Hydra/Promise+Defer.swift:54:14: warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | 				let fireTime: DispatchTime = .now() + seconds
53 | 				ctx.queue.asyncAfter(deadline: fireTime) {
54 | 					resolve(value)
   |              `- warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 | 				}
56 | 			}
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:35:22: note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |                      `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
[23/27] Compiling Hydra Promise+Defer.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Defer.swift:54:6: warning: capture of 'resolve' with non-sendable type '(Value) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | 				let fireTime: DispatchTime = .now() + seconds
53 | 				ctx.queue.asyncAfter(deadline: fireTime) {
54 | 					resolve(value)
   |      |- warning: capture of 'resolve' 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'
55 | 				}
56 | 			}
/host/spi-builder-workspace/Sources/Hydra/Promise+Defer.swift:54:14: warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | 				let fireTime: DispatchTime = .now() + seconds
53 | 				ctx.queue.asyncAfter(deadline: fireTime) {
54 | 					resolve(value)
   |              `- warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 | 				}
56 | 			}
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:35:22: note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |                      `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
[24/27] Compiling Hydra Promise+Map.swift
/host/spi-builder-workspace/Sources/Hydra/Promise+Defer.swift:54:6: warning: capture of 'resolve' with non-sendable type '(Value) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | 				let fireTime: DispatchTime = .now() + seconds
53 | 				ctx.queue.asyncAfter(deadline: fireTime) {
54 | 					resolve(value)
   |      |- warning: capture of 'resolve' 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'
55 | 				}
56 | 			}
/host/spi-builder-workspace/Sources/Hydra/Promise+Defer.swift:54:14: warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | 				let fireTime: DispatchTime = .now() + seconds
53 | 				ctx.queue.asyncAfter(deadline: fireTime) {
54 | 					resolve(value)
   |              `- warning: capture of 'value' with non-sendable type 'Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 | 				}
56 | 			}
/host/spi-builder-workspace/Sources/Hydra/Promise.swift:35:22: note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 33 | import Foundation
 34 |
 35 | public class Promise<Value> {
    |                      `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
 36 |
 37 | 	public typealias Resolved = (Value) -> ()
[25/27] Compiling Hydra Promise+Reduce.swift
[26/27] Compiling Hydra Promise+Retry.swift
[27/27] Compiling Hydra Promise+RetryWhen.swift
Build complete! (15.07s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Hydra",
  "name" : "Hydra",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.10"
    },
    {
      "name" : "ios",
      "version" : "9.0"
    },
    {
      "name" : "watchos",
      "version" : "2.0"
    },
    {
      "name" : "tvos",
      "version" : "9.0"
    }
  ],
  "products" : [
    {
      "name" : "Hydra",
      "targets" : [
        "Hydra"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "HydraTests",
      "module_type" : "SwiftTarget",
      "name" : "HydraTests",
      "path" : "Tests/HydraTests",
      "sources" : [
        "HydraTests.swift"
      ],
      "target_dependencies" : [
        "Hydra"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Hydra",
      "module_type" : "SwiftTarget",
      "name" : "Hydra",
      "path" : "Sources/Hydra",
      "product_memberships" : [
        "Hydra"
      ],
      "sources" : [
        "Commons.swift",
        "Context.swift",
        "DispatchTimerWrapper.swift",
        "Promise+All.swift",
        "Promise+Always.swift",
        "Promise+Any.swift",
        "Promise+Async.swift",
        "Promise+Await.swift",
        "Promise+Cancel.swift",
        "Promise+Catch.swift",
        "Promise+Defer.swift",
        "Promise+Map.swift",
        "Promise+Observer.swift",
        "Promise+Pass.swift",
        "Promise+Recover.swift",
        "Promise+Reduce.swift",
        "Promise+Retry.swift",
        "Promise+RetryWhen.swift",
        "Promise+State.swift",
        "Promise+Then.swift",
        "Promise+Timeout.swift",
        "Promise+Validate.swift",
        "Promise+Zip.swift",
        "Promise.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.