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 SwiftSpellbook, reference 1.1.3 (e89030), with Swift 6.0 for macOS (SPM) on 6 Nov 2024 17:39:42 UTC.

Swift 6 data race errors: 83

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

Build Log

 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 58 |
 59 |         /// URL is included into results.
 60 |         public static let proceed = Self(current: true, children: true)
    |                           |- warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'proceed' 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
 61 |
 62 |         /// URL is excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:63:27: warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 61 |
 62 |         /// URL is excluded from results.
 63 |         public static let skip = Self(current: false, children: true)
    |                           |- warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skip' 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
 64 |
 65 |         /// URL and all descendants are excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:66:27: warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 64 |
 65 |         /// URL and all descendants are excluded from results.
 66 |         public static let skipRecursive = Self(current: false, children: false)
    |                           |- warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skipRecursive' 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
 67 |     }
 68 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileStore.swift:50:23: warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
 25 | /// Wraps common file operations file reading and writing.
 26 | /// Provides ability to change underlying implementation to mock dealing with real file system.
 27 | public struct FileStore<T> {
    |               `- note: consider making generic struct 'FileStore' conform to the 'Sendable' protocol
 28 |     private let read: (URL, T?) throws -> T
 29 |     private let write: (T, URL, Bool) throws -> Void
    :
 48 | extension FileStore where T == Data {
 49 |     @available(*, deprecated, renamed: "standard(writingOptions:)")
 50 |     public static let standard: FileStore = .standard()
    |                       |- warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'standard' 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
 51 |
 52 |     public static func standard(writingOptions: Data.WritingOptions = .atomic) -> FileStore {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
[41/66] Compiling SpellbookFoundation FileStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:60:27: warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 58 |
 59 |         /// URL is included into results.
 60 |         public static let proceed = Self(current: true, children: true)
    |                           |- warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'proceed' 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
 61 |
 62 |         /// URL is excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:63:27: warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 61 |
 62 |         /// URL is excluded from results.
 63 |         public static let skip = Self(current: false, children: true)
    |                           |- warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skip' 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
 64 |
 65 |         /// URL and all descendants are excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:66:27: warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 64 |
 65 |         /// URL and all descendants are excluded from results.
 66 |         public static let skipRecursive = Self(current: false, children: false)
    |                           |- warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skipRecursive' 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
 67 |     }
 68 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileStore.swift:50:23: warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
 25 | /// Wraps common file operations file reading and writing.
 26 | /// Provides ability to change underlying implementation to mock dealing with real file system.
 27 | public struct FileStore<T> {
    |               `- note: consider making generic struct 'FileStore' conform to the 'Sendable' protocol
 28 |     private let read: (URL, T?) throws -> T
 29 |     private let write: (T, URL, Bool) throws -> Void
    :
 48 | extension FileStore where T == Data {
 49 |     @available(*, deprecated, renamed: "standard(writingOptions:)")
 50 |     public static let standard: FileStore = .standard()
    |                       |- warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'standard' 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
 51 |
 52 |     public static func standard(writingOptions: Data.WritingOptions = .atomic) -> FileStore {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
[42/66] Compiling SpellbookFoundation TemporaryDirectory.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:60:27: warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 58 |
 59 |         /// URL is included into results.
 60 |         public static let proceed = Self(current: true, children: true)
    |                           |- warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'proceed' 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
 61 |
 62 |         /// URL is excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:63:27: warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 61 |
 62 |         /// URL is excluded from results.
 63 |         public static let skip = Self(current: false, children: true)
    |                           |- warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skip' 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
 64 |
 65 |         /// URL and all descendants are excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:66:27: warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 64 |
 65 |         /// URL and all descendants are excluded from results.
 66 |         public static let skipRecursive = Self(current: false, children: false)
    |                           |- warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skipRecursive' 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
 67 |     }
 68 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileStore.swift:50:23: warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
 25 | /// Wraps common file operations file reading and writing.
 26 | /// Provides ability to change underlying implementation to mock dealing with real file system.
 27 | public struct FileStore<T> {
    |               `- note: consider making generic struct 'FileStore' conform to the 'Sendable' protocol
 28 |     private let read: (URL, T?) throws -> T
 29 |     private let write: (T, URL, Bool) throws -> Void
    :
 48 | extension FileStore where T == Data {
 49 |     @available(*, deprecated, renamed: "standard(writingOptions:)")
 50 |     public static let standard: FileStore = .standard()
    |                       |- warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'standard' 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
 51 |
 52 |     public static func standard(writingOptions: Data.WritingOptions = .atomic) -> FileStore {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
[43/66] Compiling SpellbookFoundation Extensions - CoreGraphics.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:60:27: warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 58 |
 59 |         /// URL is included into results.
 60 |         public static let proceed = Self(current: true, children: true)
    |                           |- warning: static property 'proceed' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'proceed' 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
 61 |
 62 |         /// URL is excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:63:27: warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 61 |
 62 |         /// URL is excluded from results.
 63 |         public static let skip = Self(current: false, children: true)
    |                           |- warning: static property 'skip' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skip' 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
 64 |
 65 |         /// URL and all descendants are excluded from results.
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileEnumerator.swift:66:27: warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
 48 |
 49 | extension FileEnumerator {
 50 |     public struct FilterVerdict {
    |                   `- note: consider making struct 'FilterVerdict' conform to the 'Sendable' protocol
 51 |         public var current: Bool
 52 |         public var children: Bool
    :
 64 |
 65 |         /// URL and all descendants are excluded from results.
 66 |         public static let skipRecursive = Self(current: false, children: false)
    |                           |- warning: static property 'skipRecursive' is not concurrency-safe because non-'Sendable' type 'FileEnumerator.FilterVerdict' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'skipRecursive' 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
 67 |     }
 68 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/FileStore.swift:50:23: warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
 25 | /// Wraps common file operations file reading and writing.
 26 | /// Provides ability to change underlying implementation to mock dealing with real file system.
 27 | public struct FileStore<T> {
    |               `- note: consider making generic struct 'FileStore' conform to the 'Sendable' protocol
 28 |     private let read: (URL, T?) throws -> T
 29 |     private let write: (T, URL, Bool) throws -> Void
    :
 48 | extension FileStore where T == Data {
 49 |     @available(*, deprecated, renamed: "standard(writingOptions:)")
 50 |     public static let standard: FileStore = .standard()
    |                       |- warning: static property 'standard' is not concurrency-safe because non-'Sendable' type 'FileStore<Data>' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'standard' 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
 51 |
 52 |     public static func standard(writingOptions: Data.WritingOptions = .atomic) -> FileStore {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
[44/66] Compiling SpellbookFoundation Boxing.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:40: warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |               `- note: consider making generic struct 'Closure' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                        `- warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:45: warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                             `- warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:26:13: warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
 24 | import Foundation
 25 |
 26 | private let log = SpellbookLogger.internal(category: "EventAsk")
    |             |- warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'log' 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
 27 |
 28 | public typealias EventAskCombined<Input, Output> = EventAskEx<Input, Output, Output>
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Common/SpellbookLog.swift:25:17: note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 23 | import Foundation
 24 |
 25 | public protocol SpellbookLog {
    |                 `- note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 26 |     func _custom(
 27 |         level: SpellbookLogLevel,
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:110:24: warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |         if let timeout {
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
    |                        `- warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
112 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Atomic.swift:70:20: note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
68 | }
69 |
70 | public final class AtomicFlag {
   |                    `- note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
71 |     private let pointer: UnsafeMutablePointer<atomic_flag>
72 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:17: warning: capture of 'completion' with non-sendable type '(Output) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                 |- warning: capture of 'completion' with non-sendable type '(Output) -> Void' 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'
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:28: warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                            `- warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
171 |
172 | extension EventAskEx {
173 |     private class Values {
    |                   `- note: class 'Values' does not conform to the 'Sendable' protocol
174 |         private var values: [Transformed?]
175 |         private var lock = UnfairLock()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:49: warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                 `- warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
150 |
151 | extension EventAskEx {
152 |     public struct Timeout {
    |                   `- note: consider making struct 'Timeout' conform to the 'Sendable' protocol
153 |         public var interval: TimeInterval
154 |         public var onTimeout: () -> Fallback? = { nil }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:79: warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 29 | public typealias EventAsk<Input, Output> = EventAskEx<Input, Output, [Output]>
 30 |
 31 | public class EventAskEx<Input, Transformed, Output> {
    |              `- note: generic class 'EventAskEx' does not conform to the 'Sendable' protocol
 32 |     private typealias Entry<T> = (transform: AsyncTransform, queue: DispatchQueue?)
 33 |     private let transforms = Synchronized<[UUID: Entry<AsyncTransform>]>(.concurrent)
    :
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                                               `- warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:62:62: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
 60 |     public func ask(_ value: Input, timeout: Timeout? = nil) async -> Output {
 61 |         await withCheckedContinuation { continuation in
 62 |             askAsync(value, timeout: timeout) { continuation.resume(returning: $0) }
    |                                                              |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 63 |         }
 64 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:144:18: 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
142 |     public func subscribe(transform: @escaping ConcurrentTransform) -> SubscriptionToken {
143 |         subscribe(on: nil) { input, reply in
144 |             Task {
    |                  `- 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
145 |                 reply(await transform(input))
    |                             `- note: closure captures 'transform' which is accessible to code in the current task
146 |             }
147 |         }
[45/66] Compiling SpellbookFoundation Closure.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:40: warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |               `- note: consider making generic struct 'Closure' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                        `- warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:45: warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                             `- warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:26:13: warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
 24 | import Foundation
 25 |
 26 | private let log = SpellbookLogger.internal(category: "EventAsk")
    |             |- warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'log' 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
 27 |
 28 | public typealias EventAskCombined<Input, Output> = EventAskEx<Input, Output, Output>
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Common/SpellbookLog.swift:25:17: note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 23 | import Foundation
 24 |
 25 | public protocol SpellbookLog {
    |                 `- note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 26 |     func _custom(
 27 |         level: SpellbookLogLevel,
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:110:24: warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |         if let timeout {
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
    |                        `- warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
112 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Atomic.swift:70:20: note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
68 | }
69 |
70 | public final class AtomicFlag {
   |                    `- note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
71 |     private let pointer: UnsafeMutablePointer<atomic_flag>
72 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:17: warning: capture of 'completion' with non-sendable type '(Output) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                 |- warning: capture of 'completion' with non-sendable type '(Output) -> Void' 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'
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:28: warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                            `- warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
171 |
172 | extension EventAskEx {
173 |     private class Values {
    |                   `- note: class 'Values' does not conform to the 'Sendable' protocol
174 |         private var values: [Transformed?]
175 |         private var lock = UnfairLock()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:49: warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                 `- warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
150 |
151 | extension EventAskEx {
152 |     public struct Timeout {
    |                   `- note: consider making struct 'Timeout' conform to the 'Sendable' protocol
153 |         public var interval: TimeInterval
154 |         public var onTimeout: () -> Fallback? = { nil }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:79: warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 29 | public typealias EventAsk<Input, Output> = EventAskEx<Input, Output, [Output]>
 30 |
 31 | public class EventAskEx<Input, Transformed, Output> {
    |              `- note: generic class 'EventAskEx' does not conform to the 'Sendable' protocol
 32 |     private typealias Entry<T> = (transform: AsyncTransform, queue: DispatchQueue?)
 33 |     private let transforms = Synchronized<[UUID: Entry<AsyncTransform>]>(.concurrent)
    :
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                                               `- warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:62:62: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
 60 |     public func ask(_ value: Input, timeout: Timeout? = nil) async -> Output {
 61 |         await withCheckedContinuation { continuation in
 62 |             askAsync(value, timeout: timeout) { continuation.resume(returning: $0) }
    |                                                              |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 63 |         }
 64 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:144:18: 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
142 |     public func subscribe(transform: @escaping ConcurrentTransform) -> SubscriptionToken {
143 |         subscribe(on: nil) { input, reply in
144 |             Task {
    |                  `- 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
145 |                 reply(await transform(input))
    |                             `- note: closure captures 'transform' which is accessible to code in the current task
146 |             }
147 |         }
[46/66] Compiling SpellbookFoundation Refreshable.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:40: warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |               `- note: consider making generic struct 'Closure' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                        `- warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:45: warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                             `- warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:26:13: warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
 24 | import Foundation
 25 |
 26 | private let log = SpellbookLogger.internal(category: "EventAsk")
    |             |- warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'log' 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
 27 |
 28 | public typealias EventAskCombined<Input, Output> = EventAskEx<Input, Output, Output>
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Common/SpellbookLog.swift:25:17: note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 23 | import Foundation
 24 |
 25 | public protocol SpellbookLog {
    |                 `- note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 26 |     func _custom(
 27 |         level: SpellbookLogLevel,
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:110:24: warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |         if let timeout {
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
    |                        `- warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
112 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Atomic.swift:70:20: note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
68 | }
69 |
70 | public final class AtomicFlag {
   |                    `- note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
71 |     private let pointer: UnsafeMutablePointer<atomic_flag>
72 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:17: warning: capture of 'completion' with non-sendable type '(Output) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                 |- warning: capture of 'completion' with non-sendable type '(Output) -> Void' 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'
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:28: warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                            `- warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
171 |
172 | extension EventAskEx {
173 |     private class Values {
    |                   `- note: class 'Values' does not conform to the 'Sendable' protocol
174 |         private var values: [Transformed?]
175 |         private var lock = UnfairLock()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:49: warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                 `- warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
150 |
151 | extension EventAskEx {
152 |     public struct Timeout {
    |                   `- note: consider making struct 'Timeout' conform to the 'Sendable' protocol
153 |         public var interval: TimeInterval
154 |         public var onTimeout: () -> Fallback? = { nil }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:79: warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 29 | public typealias EventAsk<Input, Output> = EventAskEx<Input, Output, [Output]>
 30 |
 31 | public class EventAskEx<Input, Transformed, Output> {
    |              `- note: generic class 'EventAskEx' does not conform to the 'Sendable' protocol
 32 |     private typealias Entry<T> = (transform: AsyncTransform, queue: DispatchQueue?)
 33 |     private let transforms = Synchronized<[UUID: Entry<AsyncTransform>]>(.concurrent)
    :
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                                               `- warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:62:62: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
 60 |     public func ask(_ value: Input, timeout: Timeout? = nil) async -> Output {
 61 |         await withCheckedContinuation { continuation in
 62 |             askAsync(value, timeout: timeout) { continuation.resume(returning: $0) }
    |                                                              |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 63 |         }
 64 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:144:18: 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
142 |     public func subscribe(transform: @escaping ConcurrentTransform) -> SubscriptionToken {
143 |         subscribe(on: nil) { input, reply in
144 |             Task {
    |                  `- 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
145 |                 reply(await transform(input))
    |                             `- note: closure captures 'transform' which is accessible to code in the current task
146 |             }
147 |         }
[47/66] Compiling SpellbookFoundation Resource (RAII).swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:40: warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |               `- note: consider making generic struct 'Closure' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                        `- warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:45: warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                             `- warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:26:13: warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
 24 | import Foundation
 25 |
 26 | private let log = SpellbookLogger.internal(category: "EventAsk")
    |             |- warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'log' 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
 27 |
 28 | public typealias EventAskCombined<Input, Output> = EventAskEx<Input, Output, Output>
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Common/SpellbookLog.swift:25:17: note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 23 | import Foundation
 24 |
 25 | public protocol SpellbookLog {
    |                 `- note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 26 |     func _custom(
 27 |         level: SpellbookLogLevel,
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:110:24: warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |         if let timeout {
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
    |                        `- warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
112 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Atomic.swift:70:20: note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
68 | }
69 |
70 | public final class AtomicFlag {
   |                    `- note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
71 |     private let pointer: UnsafeMutablePointer<atomic_flag>
72 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:17: warning: capture of 'completion' with non-sendable type '(Output) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                 |- warning: capture of 'completion' with non-sendable type '(Output) -> Void' 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'
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:28: warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                            `- warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
171 |
172 | extension EventAskEx {
173 |     private class Values {
    |                   `- note: class 'Values' does not conform to the 'Sendable' protocol
174 |         private var values: [Transformed?]
175 |         private var lock = UnfairLock()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:49: warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                 `- warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
150 |
151 | extension EventAskEx {
152 |     public struct Timeout {
    |                   `- note: consider making struct 'Timeout' conform to the 'Sendable' protocol
153 |         public var interval: TimeInterval
154 |         public var onTimeout: () -> Fallback? = { nil }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:79: warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 29 | public typealias EventAsk<Input, Output> = EventAskEx<Input, Output, [Output]>
 30 |
 31 | public class EventAskEx<Input, Transformed, Output> {
    |              `- note: generic class 'EventAskEx' does not conform to the 'Sendable' protocol
 32 |     private typealias Entry<T> = (transform: AsyncTransform, queue: DispatchQueue?)
 33 |     private let transforms = Synchronized<[UUID: Entry<AsyncTransform>]>(.concurrent)
    :
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                                               `- warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:62:62: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
 60 |     public func ask(_ value: Input, timeout: Timeout? = nil) async -> Output {
 61 |         await withCheckedContinuation { continuation in
 62 |             askAsync(value, timeout: timeout) { continuation.resume(returning: $0) }
    |                                                              |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 63 |         }
 64 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:144:18: 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
142 |     public func subscribe(transform: @escaping ConcurrentTransform) -> SubscriptionToken {
143 |         subscribe(on: nil) { input, reply in
144 |             Task {
    |                  `- 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
145 |                 reply(await transform(input))
    |                             `- note: closure captures 'transform' which is accessible to code in the current task
146 |             }
147 |         }
[48/66] Compiling SpellbookFoundation Types.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:40: warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |               `- note: consider making generic struct 'Closure' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                        `- warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:45: warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                             `- warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:26:13: warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
 24 | import Foundation
 25 |
 26 | private let log = SpellbookLogger.internal(category: "EventAsk")
    |             |- warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'log' 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
 27 |
 28 | public typealias EventAskCombined<Input, Output> = EventAskEx<Input, Output, Output>
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Common/SpellbookLog.swift:25:17: note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 23 | import Foundation
 24 |
 25 | public protocol SpellbookLog {
    |                 `- note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 26 |     func _custom(
 27 |         level: SpellbookLogLevel,
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:110:24: warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |         if let timeout {
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
    |                        `- warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
112 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Atomic.swift:70:20: note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
68 | }
69 |
70 | public final class AtomicFlag {
   |                    `- note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
71 |     private let pointer: UnsafeMutablePointer<atomic_flag>
72 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:17: warning: capture of 'completion' with non-sendable type '(Output) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                 |- warning: capture of 'completion' with non-sendable type '(Output) -> Void' 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'
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:28: warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                            `- warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
171 |
172 | extension EventAskEx {
173 |     private class Values {
    |                   `- note: class 'Values' does not conform to the 'Sendable' protocol
174 |         private var values: [Transformed?]
175 |         private var lock = UnfairLock()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:49: warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                 `- warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
150 |
151 | extension EventAskEx {
152 |     public struct Timeout {
    |                   `- note: consider making struct 'Timeout' conform to the 'Sendable' protocol
153 |         public var interval: TimeInterval
154 |         public var onTimeout: () -> Fallback? = { nil }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:79: warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 29 | public typealias EventAsk<Input, Output> = EventAskEx<Input, Output, [Output]>
 30 |
 31 | public class EventAskEx<Input, Transformed, Output> {
    |              `- note: generic class 'EventAskEx' does not conform to the 'Sendable' protocol
 32 |     private typealias Entry<T> = (transform: AsyncTransform, queue: DispatchQueue?)
 33 |     private let transforms = Synchronized<[UUID: Entry<AsyncTransform>]>(.concurrent)
    :
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                                               `- warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:62:62: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
 60 |     public func ask(_ value: Input, timeout: Timeout? = nil) async -> Output {
 61 |         await withCheckedContinuation { continuation in
 62 |             askAsync(value, timeout: timeout) { continuation.resume(returning: $0) }
    |                                                              |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 63 |         }
 64 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:144:18: 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
142 |     public func subscribe(transform: @escaping ConcurrentTransform) -> SubscriptionToken {
143 |         subscribe(on: nil) { input, reply in
144 |             Task {
    |                  `- 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
145 |                 reply(await transform(input))
    |                             `- note: closure captures 'transform' which is accessible to code in the current task
146 |             }
147 |         }
[49/66] Compiling SpellbookFoundation EventAsk.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:40: warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |               `- note: consider making generic struct 'Closure' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                        `- warning: capture of 'self' with non-sendable type 'Closure<T, ()>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Types & PropertyWrappers/Closure.swift:54:45: warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | /// Wrapper around the closure that allows extending.
26 | /// Design follows 'Decorator' pattern.
27 | public struct Closure<T, R> {
   |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
28 |     public let body: (T) -> R
29 |
   :
52 |
53 |     public func async(on queue: DispatchQueue) -> Self where R == Void {
54 |         Self { result in queue.async { self(result) } }
   |                                             `- warning: capture of 'result' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 |     }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Filesystem & Bundle/TemporaryDirectory.swift:63:23: warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 | /// A convenient interface to deal with temporary directories.
 26 | public struct TemporaryDirectory {
    |               `- note: consider making struct 'TemporaryDirectory' conform to the 'Sendable' protocol
 27 |     public let location: URL
 28 |
    :
 61 | extension TemporaryDirectory {
 62 |     /// Temporarty directory named as the main app bundle inside current user temporary directory.
 63 |     public static let bundle = TemporaryDirectory(
    |                       |- warning: static property 'bundle' is not concurrency-safe because non-'Sendable' type 'TemporaryDirectory' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'bundle' 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
 64 |         name: Bundle.main.bundleIdentifier ?? Bundle.main.bundlePath.lastPathComponent
 65 |     )
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:26:13: warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
 24 | import Foundation
 25 |
 26 | private let log = SpellbookLogger.internal(category: "EventAsk")
    |             |- warning: let 'log' is not concurrency-safe because non-'Sendable' type 'any SpellbookLog' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'log' 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
 27 |
 28 | public typealias EventAskCombined<Input, Output> = EventAskEx<Input, Output, Output>
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Common/SpellbookLog.swift:25:17: note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 23 | import Foundation
 24 |
 25 | public protocol SpellbookLog {
    |                 `- note: protocol 'SpellbookLog' does not conform to the 'Sendable' protocol
 26 |     func _custom(
 27 |         level: SpellbookLogLevel,
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:110:24: warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |         if let timeout {
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
    |                        `- warning: capture of 'once' with non-sendable type 'AtomicFlag' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
112 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Atomic.swift:70:20: note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
68 | }
69 |
70 | public final class AtomicFlag {
   |                    `- note: class 'AtomicFlag' does not conform to the 'Sendable' protocol
71 |     private let pointer: UnsafeMutablePointer<atomic_flag>
72 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:17: warning: capture of 'completion' with non-sendable type '(Output) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                 |- warning: capture of 'completion' with non-sendable type '(Output) -> Void' 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'
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:28: warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                            `- warning: capture of 'values' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Values' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
171 |
172 | extension EventAskEx {
173 |     private class Values {
    |                   `- note: class 'Values' does not conform to the 'Sendable' protocol
174 |         private var values: [Transformed?]
175 |         private var lock = UnfairLock()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:49: warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                 `- warning: capture of 'timeout' with non-sendable type 'EventAskEx<Input, Transformed, Output>.Timeout' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
    :
150 |
151 | extension EventAskEx {
152 |     public struct Timeout {
    |                   `- note: consider making struct 'Timeout' conform to the 'Sendable' protocol
153 |         public var interval: TimeInterval
154 |         public var onTimeout: () -> Fallback? = { nil }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:111:79: warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 29 | public typealias EventAsk<Input, Output> = EventAskEx<Input, Output, [Output]>
 30 |
 31 | public class EventAskEx<Input, Transformed, Output> {
    |              `- note: generic class 'EventAskEx' does not conform to the 'Sendable' protocol
 32 |     private typealias Entry<T> = (transform: AsyncTransform, queue: DispatchQueue?)
 33 |     private let transforms = Synchronized<[UUID: Entry<AsyncTransform>]>(.concurrent)
    :
109 |             queue.asyncAfter(delay: timeout.interval) {
110 |                 guard !once.testAndSet() else { return }
111 |                 completion(values.get(fallback: timeout.onTimeout(), combine: self.combine))
    |                                                                               `- warning: capture of 'self' with non-sendable type 'EventAskEx<Input, Transformed, Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
112 |             }
113 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:62:62: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
 60 |     public func ask(_ value: Input, timeout: Timeout? = nil) async -> Output {
 61 |         await withCheckedContinuation { continuation in
 62 |             askAsync(value, timeout: timeout) { continuation.resume(returning: $0) }
    |                                                              |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 63 |         }
 64 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventAsk.swift:144:18: 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
142 |     public func subscribe(transform: @escaping ConcurrentTransform) -> SubscriptionToken {
143 |         subscribe(on: nil) { input, reply in
144 |             Task {
    |                  `- 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
145 |                 reply(await transform(input))
    |                             `- note: closure captures 'transform' which is accessible to code in the current task
146 |             }
147 |         }
[50/66] Compiling SpellbookFoundation Extensions - Locks.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:13: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
205 | @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *)
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
    |                        `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
208 |         try withLock { try body() }
    |             `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:28: warning: capture of 'body' with non-sendable type '() throws -> R' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
208 |         try withLock { try body() }
    |                            |- warning: capture of 'body' with non-sendable type '() throws -> R' 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'
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:224:41: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
221 |     }
222 |
223 |     func withAsyncWriteLock(_ body: @escaping () -> Void) {
    |                               `- note: parameter 'body' is implicitly non-sendable
224 |         async(flags: .barrier, execute: body)
    |                                         `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
225 |     }
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:31: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
29 |         completion: @escaping (Result<R, Error>) -> Void
30 |     ) where Success == Void, Failure == Never {
31 |         Task<Void, Never> {
   |                           `- 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
32 |             do {
33 |                 let result = try await body()
34 |                 completion(.success(result))
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
35 |             } catch {
36 |                 completion(.failure(error))
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:45: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
43 |         completion: @escaping (R) -> Void
44 |     ) where Success == Void, Failure == Never {
45 |         Task<Void, Never> {
   |                           `- 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
46 |             completion(await body())
   |             `- note: closure captures 'completion' which is accessible to code in the current task
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:54: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
52 |         completion: @escaping (Error?) -> Void
53 |     ) where Success == Void, Failure == Never {
54 |         Task<Void, Never> {
   |                           `- 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
55 |             do {
56 |                 try await body()
57 |                 completion(nil)
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
58 |             } catch {
59 |                 completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:73:18: 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 sync<R>(_ action: @escaping () async throws -> R) throws -> R {
 72 |         try sync { completion in
 73 |             Task {
    |                  `- 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 |                 do {
 75 |                     let success = try await action()
    |                                             `- note: closure captures 'action' which is accessible to code in the current task
 76 |                     completion(.success(success))
 77 |                 } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:113:18: 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
111 |     public static func sync<R>(_ action: @escaping () async -> R) -> R {
112 |         sync { completion in
113 |             Task {
    |                  `- 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
114 |                 let result = await action()
    |                                    `- note: closure captures 'action' which is accessible to code in the current task
115 |                 completion(result)
116 |             }
[51/66] Compiling SpellbookFoundation Extensions - Task.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:13: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
205 | @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *)
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
    |                        `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
208 |         try withLock { try body() }
    |             `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:28: warning: capture of 'body' with non-sendable type '() throws -> R' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
208 |         try withLock { try body() }
    |                            |- warning: capture of 'body' with non-sendable type '() throws -> R' 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'
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:224:41: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
221 |     }
222 |
223 |     func withAsyncWriteLock(_ body: @escaping () -> Void) {
    |                               `- note: parameter 'body' is implicitly non-sendable
224 |         async(flags: .barrier, execute: body)
    |                                         `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
225 |     }
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:31: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
29 |         completion: @escaping (Result<R, Error>) -> Void
30 |     ) where Success == Void, Failure == Never {
31 |         Task<Void, Never> {
   |                           `- 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
32 |             do {
33 |                 let result = try await body()
34 |                 completion(.success(result))
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
35 |             } catch {
36 |                 completion(.failure(error))
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:45: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
43 |         completion: @escaping (R) -> Void
44 |     ) where Success == Void, Failure == Never {
45 |         Task<Void, Never> {
   |                           `- 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
46 |             completion(await body())
   |             `- note: closure captures 'completion' which is accessible to code in the current task
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:54: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
52 |         completion: @escaping (Error?) -> Void
53 |     ) where Success == Void, Failure == Never {
54 |         Task<Void, Never> {
   |                           `- 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
55 |             do {
56 |                 try await body()
57 |                 completion(nil)
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
58 |             } catch {
59 |                 completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:73:18: 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 sync<R>(_ action: @escaping () async throws -> R) throws -> R {
 72 |         try sync { completion in
 73 |             Task {
    |                  `- 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 |                 do {
 75 |                     let success = try await action()
    |                                             `- note: closure captures 'action' which is accessible to code in the current task
 76 |                     completion(.success(success))
 77 |                 } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:113:18: 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
111 |     public static func sync<R>(_ action: @escaping () async -> R) -> R {
112 |         sync { completion in
113 |             Task {
    |                  `- 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
114 |                 let result = await action()
    |                                    `- note: closure captures 'action' which is accessible to code in the current task
115 |                 completion(result)
116 |             }
[52/66] Compiling SpellbookFoundation PosixLocks.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:13: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
205 | @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *)
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
    |                        `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
208 |         try withLock { try body() }
    |             `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:28: warning: capture of 'body' with non-sendable type '() throws -> R' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
208 |         try withLock { try body() }
    |                            |- warning: capture of 'body' with non-sendable type '() throws -> R' 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'
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:224:41: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
221 |     }
222 |
223 |     func withAsyncWriteLock(_ body: @escaping () -> Void) {
    |                               `- note: parameter 'body' is implicitly non-sendable
224 |         async(flags: .barrier, execute: body)
    |                                         `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
225 |     }
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:31: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
29 |         completion: @escaping (Result<R, Error>) -> Void
30 |     ) where Success == Void, Failure == Never {
31 |         Task<Void, Never> {
   |                           `- 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
32 |             do {
33 |                 let result = try await body()
34 |                 completion(.success(result))
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
35 |             } catch {
36 |                 completion(.failure(error))
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:45: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
43 |         completion: @escaping (R) -> Void
44 |     ) where Success == Void, Failure == Never {
45 |         Task<Void, Never> {
   |                           `- 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
46 |             completion(await body())
   |             `- note: closure captures 'completion' which is accessible to code in the current task
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:54: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
52 |         completion: @escaping (Error?) -> Void
53 |     ) where Success == Void, Failure == Never {
54 |         Task<Void, Never> {
   |                           `- 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
55 |             do {
56 |                 try await body()
57 |                 completion(nil)
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
58 |             } catch {
59 |                 completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:73:18: 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 sync<R>(_ action: @escaping () async throws -> R) throws -> R {
 72 |         try sync { completion in
 73 |             Task {
    |                  `- 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 |                 do {
 75 |                     let success = try await action()
    |                                             `- note: closure captures 'action' which is accessible to code in the current task
 76 |                     completion(.success(success))
 77 |                 } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:113:18: 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
111 |     public static func sync<R>(_ action: @escaping () async -> R) -> R {
112 |         sync { completion in
113 |             Task {
    |                  `- 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
114 |                 let result = await action()
    |                                    `- note: closure captures 'action' which is accessible to code in the current task
115 |                 completion(result)
116 |             }
[53/66] Compiling SpellbookFoundation Synchronized.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:13: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
205 | @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *)
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
    |                        `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
208 |         try withLock { try body() }
    |             `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:28: warning: capture of 'body' with non-sendable type '() throws -> R' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
208 |         try withLock { try body() }
    |                            |- warning: capture of 'body' with non-sendable type '() throws -> R' 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'
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:224:41: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
221 |     }
222 |
223 |     func withAsyncWriteLock(_ body: @escaping () -> Void) {
    |                               `- note: parameter 'body' is implicitly non-sendable
224 |         async(flags: .barrier, execute: body)
    |                                         `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
225 |     }
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:31: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
29 |         completion: @escaping (Result<R, Error>) -> Void
30 |     ) where Success == Void, Failure == Never {
31 |         Task<Void, Never> {
   |                           `- 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
32 |             do {
33 |                 let result = try await body()
34 |                 completion(.success(result))
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
35 |             } catch {
36 |                 completion(.failure(error))
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:45: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
43 |         completion: @escaping (R) -> Void
44 |     ) where Success == Void, Failure == Never {
45 |         Task<Void, Never> {
   |                           `- 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
46 |             completion(await body())
   |             `- note: closure captures 'completion' which is accessible to code in the current task
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:54: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
52 |         completion: @escaping (Error?) -> Void
53 |     ) where Success == Void, Failure == Never {
54 |         Task<Void, Never> {
   |                           `- 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
55 |             do {
56 |                 try await body()
57 |                 completion(nil)
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
58 |             } catch {
59 |                 completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:73:18: 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 sync<R>(_ action: @escaping () async throws -> R) throws -> R {
 72 |         try sync { completion in
 73 |             Task {
    |                  `- 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 |                 do {
 75 |                     let success = try await action()
    |                                             `- note: closure captures 'action' which is accessible to code in the current task
 76 |                     completion(.success(success))
 77 |                 } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:113:18: 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
111 |     public static func sync<R>(_ action: @escaping () async -> R) -> R {
112 |         sync { completion in
113 |             Task {
    |                  `- 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
114 |                 let result = await action()
    |                                    `- note: closure captures 'action' which is accessible to code in the current task
115 |                 completion(result)
116 |             }
[54/66] Compiling SpellbookFoundation SynchronizedObjC.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:13: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
205 | @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *)
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
    |                        `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
208 |         try withLock { try body() }
    |             `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:28: warning: capture of 'body' with non-sendable type '() throws -> R' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
208 |         try withLock { try body() }
    |                            |- warning: capture of 'body' with non-sendable type '() throws -> R' 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'
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:224:41: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
221 |     }
222 |
223 |     func withAsyncWriteLock(_ body: @escaping () -> Void) {
    |                               `- note: parameter 'body' is implicitly non-sendable
224 |         async(flags: .barrier, execute: body)
    |                                         `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
225 |     }
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:31: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
29 |         completion: @escaping (Result<R, Error>) -> Void
30 |     ) where Success == Void, Failure == Never {
31 |         Task<Void, Never> {
   |                           `- 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
32 |             do {
33 |                 let result = try await body()
34 |                 completion(.success(result))
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
35 |             } catch {
36 |                 completion(.failure(error))
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:45: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
43 |         completion: @escaping (R) -> Void
44 |     ) where Success == Void, Failure == Never {
45 |         Task<Void, Never> {
   |                           `- 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
46 |             completion(await body())
   |             `- note: closure captures 'completion' which is accessible to code in the current task
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:54: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
52 |         completion: @escaping (Error?) -> Void
53 |     ) where Success == Void, Failure == Never {
54 |         Task<Void, Never> {
   |                           `- 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
55 |             do {
56 |                 try await body()
57 |                 completion(nil)
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
58 |             } catch {
59 |                 completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:73:18: 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 sync<R>(_ action: @escaping () async throws -> R) throws -> R {
 72 |         try sync { completion in
 73 |             Task {
    |                  `- 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 |                 do {
 75 |                     let success = try await action()
    |                                             `- note: closure captures 'action' which is accessible to code in the current task
 76 |                     completion(.success(success))
 77 |                 } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:113:18: 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
111 |     public static func sync<R>(_ action: @escaping () async -> R) -> R {
112 |         sync { completion in
113 |             Task {
    |                  `- 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
114 |                 let result = await action()
    |                                    `- note: closure captures 'action' which is accessible to code in the current task
115 |                 completion(result)
116 |             }
[55/66] Compiling SpellbookFoundation SynchronousExecutor.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:13: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
205 | @available(macOS 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *)
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
    |                        `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
208 |         try withLock { try body() }
    |             `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:208:28: warning: capture of 'body' with non-sendable type '() throws -> R' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | extension OSAllocatedUnfairLock: SynchronizedLocking where State == Void {
207 |     func withWriteLock<R>(_ body: () throws -> R) rethrows -> R {
208 |         try withLock { try body() }
    |                            |- warning: capture of 'body' with non-sendable type '() throws -> R' 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'
209 |     }
210 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Synchronized.swift:224:41: warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
221 |     }
222 |
223 |     func withAsyncWriteLock(_ body: @escaping () -> Void) {
    |                               `- note: parameter 'body' is implicitly non-sendable
224 |         async(flags: .barrier, execute: body)
    |                                         `- warning: passing non-sendable parameter 'body' to function expecting a @Sendable closure
225 |     }
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:31: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
29 |         completion: @escaping (Result<R, Error>) -> Void
30 |     ) where Success == Void, Failure == Never {
31 |         Task<Void, Never> {
   |                           `- 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
32 |             do {
33 |                 let result = try await body()
34 |                 completion(.success(result))
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
35 |             } catch {
36 |                 completion(.failure(error))
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:45: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
43 |         completion: @escaping (R) -> Void
44 |     ) where Success == Void, Failure == Never {
45 |         Task<Void, Never> {
   |                           `- 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
46 |             completion(await body())
   |             `- note: closure captures 'completion' which is accessible to code in the current task
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/Extensions - Task.swift:54: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
52 |         completion: @escaping (Error?) -> Void
53 |     ) where Success == Void, Failure == Never {
54 |         Task<Void, Never> {
   |                           `- 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
55 |             do {
56 |                 try await body()
57 |                 completion(nil)
   |                 `- note: closure captures 'completion' which is accessible to code in the current task
58 |             } catch {
59 |                 completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:73:18: 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 sync<R>(_ action: @escaping () async throws -> R) throws -> R {
 72 |         try sync { completion in
 73 |             Task {
    |                  `- 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 |                 do {
 75 |                     let success = try await action()
    |                                             `- note: closure captures 'action' which is accessible to code in the current task
 76 |                     completion(.success(success))
 77 |                 } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Threading & Concurrency/SynchronousExecutor.swift:113:18: 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
111 |     public static func sync<R>(_ action: @escaping () async -> R) -> R {
112 |         sync { completion in
113 |             Task {
    |                  `- 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
114 |                 let result = await action()
    |                                    `- note: closure captures 'action' which is accessible to code in the current task
115 |                 completion(result)
116 |             }
[56/66] Compiling SpellbookFoundation Internal.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Internal.swift:29:47: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
25 | extension Optional where Wrapped == DispatchQueue {
26 |     @inline(__always)
27 |     package func async(flags: DispatchWorkItemFlags = [], execute work: @escaping () -> Void) {
   |                                                                   `- note: parameter 'work' is implicitly non-sendable
28 |         if let self {
29 |             self.async(flags: flags, execute: work)
   |                                               `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
30 |         } else {
31 |             work()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:31:33: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
29 |     /// Returns current task audit token.
30 |     public static func current() throws -> audit_token_t {
31 |         try audit_token_t(task: mach_task_self_)
   |                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 |     }
33 |
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:36:65: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 |     /// Returns task for pid.
35 |     public init(pid: pid_t) throws {
36 |         let taskName = try NSError.mach.try { task_name_for_pid(mach_task_self_, pid, $0) }
   |                                                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |         try self.init(task: taskName)
38 |     }
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
[57/66] Compiling SpellbookFoundation AuditToken.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Internal.swift:29:47: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
25 | extension Optional where Wrapped == DispatchQueue {
26 |     @inline(__always)
27 |     package func async(flags: DispatchWorkItemFlags = [], execute work: @escaping () -> Void) {
   |                                                                   `- note: parameter 'work' is implicitly non-sendable
28 |         if let self {
29 |             self.async(flags: flags, execute: work)
   |                                               `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
30 |         } else {
31 |             work()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:31:33: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
29 |     /// Returns current task audit token.
30 |     public static func current() throws -> audit_token_t {
31 |         try audit_token_t(task: mach_task_self_)
   |                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 |     }
33 |
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:36:65: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 |     /// Returns task for pid.
35 |     public init(pid: pid_t) throws {
36 |         let taskName = try NSError.mach.try { task_name_for_pid(mach_task_self_, pid, $0) }
   |                                                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |         try self.init(task: taskName)
38 |     }
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
[58/66] Compiling SpellbookFoundation BridgedCEnum.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Internal.swift:29:47: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
25 | extension Optional where Wrapped == DispatchQueue {
26 |     @inline(__always)
27 |     package func async(flags: DispatchWorkItemFlags = [], execute work: @escaping () -> Void) {
   |                                                                   `- note: parameter 'work' is implicitly non-sendable
28 |         if let self {
29 |             self.async(flags: flags, execute: work)
   |                                               `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
30 |         } else {
31 |             work()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:31:33: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
29 |     /// Returns current task audit token.
30 |     public static func current() throws -> audit_token_t {
31 |         try audit_token_t(task: mach_task_self_)
   |                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 |     }
33 |
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:36:65: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 |     /// Returns task for pid.
35 |     public init(pid: pid_t) throws {
36 |         let taskName = try NSError.mach.try { task_name_for_pid(mach_task_self_, pid, $0) }
   |                                                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |         try self.init(task: taskName)
38 |     }
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
[59/66] Compiling SpellbookFoundation MachTime.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Internal.swift:29:47: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
25 | extension Optional where Wrapped == DispatchQueue {
26 |     @inline(__always)
27 |     package func async(flags: DispatchWorkItemFlags = [], execute work: @escaping () -> Void) {
   |                                                                   `- note: parameter 'work' is implicitly non-sendable
28 |         if let self {
29 |             self.async(flags: flags, execute: work)
   |                                               `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
30 |         } else {
31 |             work()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:31:33: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
29 |     /// Returns current task audit token.
30 |     public static func current() throws -> audit_token_t {
31 |         try audit_token_t(task: mach_task_self_)
   |                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 |     }
33 |
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:36:65: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 |     /// Returns task for pid.
35 |     public init(pid: pid_t) throws {
36 |         let taskName = try NSError.mach.try { task_name_for_pid(mach_task_self_, pid, $0) }
   |                                                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |         try self.init(task: taskName)
38 |     }
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
[60/66] Compiling SpellbookFoundation POD+Swift.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Internal.swift:29:47: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
25 | extension Optional where Wrapped == DispatchQueue {
26 |     @inline(__always)
27 |     package func async(flags: DispatchWorkItemFlags = [], execute work: @escaping () -> Void) {
   |                                                                   `- note: parameter 'work' is implicitly non-sendable
28 |         if let self {
29 |             self.async(flags: flags, execute: work)
   |                                               `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
30 |         } else {
31 |             work()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:31:33: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
29 |     /// Returns current task audit token.
30 |     public static func current() throws -> audit_token_t {
31 |         try audit_token_t(task: mach_task_self_)
   |                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 |     }
33 |
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:36:65: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 |     /// Returns task for pid.
35 |     public init(pid: pid_t) throws {
36 |         let taskName = try NSError.mach.try { task_name_for_pid(mach_task_self_, pid, $0) }
   |                                                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |         try self.init(task: taskName)
38 |     }
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
[61/66] Compiling SpellbookFoundation Unsafe.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Internal.swift:29:47: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
25 | extension Optional where Wrapped == DispatchQueue {
26 |     @inline(__always)
27 |     package func async(flags: DispatchWorkItemFlags = [], execute work: @escaping () -> Void) {
   |                                                                   `- note: parameter 'work' is implicitly non-sendable
28 |         if let self {
29 |             self.async(flags: flags, execute: work)
   |                                               `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
30 |         } else {
31 |             work()
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:31:33: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
29 |     /// Returns current task audit token.
30 |     public static func current() throws -> audit_token_t {
31 |         try audit_token_t(task: mach_task_self_)
   |                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 |     }
33 |
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/Low Level/AuditToken.swift:36:65: warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 |     /// Returns task for pid.
35 |     public init(pid: pid_t) throws {
36 |         let taskName = try NSError.mach.try { task_name_for_pid(mach_task_self_, pid, $0) }
   |                                                                 `- warning: reference to var 'mach_task_self_' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |         try self.init(task: taskName)
38 |     }
Darwin.mach_task_self_:1:12: note: var declared here
1 | public var mach_task_self_: mach_port_t
  |            `- note: var declared here
[62/66] Compiling SpellbookFoundation EventNotify.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:33: warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                 |- warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' 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'
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:40: warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | import Foundation
24 |
25 | public final class EventNotify<T>: ValueObserving {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
26 |     private typealias Handler = (T, Any?) -> Void
27 |
   :
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                        `- warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:47: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                               `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:31: warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                               |- warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' 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'
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:44: warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                            `- warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:51: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                                   `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
[63/66] Compiling SpellbookFoundation ValueObservable.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:33: warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                 |- warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' 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'
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:40: warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | import Foundation
24 |
25 | public final class EventNotify<T>: ValueObserving {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
26 |     private typealias Handler = (T, Any?) -> Void
27 |
   :
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                        `- warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:47: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                               `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:31: warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                               |- warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' 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'
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:44: warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                            `- warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:51: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                                   `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
[64/66] Compiling SpellbookFoundation ValueObserving.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:33: warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                 |- warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' 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'
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:40: warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | import Foundation
24 |
25 | public final class EventNotify<T>: ValueObserving {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
26 |     private typealias Handler = (T, Any?) -> Void
27 |
   :
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                        `- warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:47: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                               `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:31: warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                               |- warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' 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'
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:44: warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                            `- warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:51: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                                   `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
[65/66] Compiling SpellbookFoundation ValueStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:33: warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                 |- warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' 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'
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:40: warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | import Foundation
24 |
25 | public final class EventNotify<T>: ValueObserving {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
26 |     private typealias Handler = (T, Any?) -> Void
27 |
   :
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                        `- warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:47: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                               `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:31: warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                               |- warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' 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'
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:44: warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                            `- warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:51: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                                   `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
[66/66] Compiling SpellbookFoundation ValueView.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:33: warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                 |- warning: capture of 'action' with non-sendable type '(T, Any?) -> Void' 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'
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:40: warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | import Foundation
24 |
25 | public final class EventNotify<T>: ValueObserving {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
26 |     private typealias Handler = (T, Any?) -> Void
27 |
   :
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                        `- warning: capture of 'value' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/EventNotify.swift:76:47: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 |     private func notifyOne(_ value: T, _ context: Any?, action: @escaping (T, Any?) -> Void) {
75 |         if let notifyQueue = notifyQueue {
76 |             notifyQueue.async { action(value, context) }
   |                                               `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 |         } else {
78 |             action(value, context)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:31: warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                               |- warning: capture of 'receiveValue' with non-sendable type '(Self.Value, Any?) -> Void' 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'
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:44: warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                            `- warning: capture of 'value' with non-sendable type 'Self.Value' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookFoundation/ValueObserving/ValueObserving.swift:75:51: warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |         AnyValueObserving { suppressInitialNotify, receiveValue in
 74 |             self.subscribe(suppressInitialNotify: suppressInitialNotify) { value, context in
 75 |                 queue.async { receiveValue(value, context) }
    |                                                   `- warning: capture of 'context' with non-sendable type 'Any?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             }
 77 |         }
[67/80] Compiling SpellbookHTTP HTTPResult.swift
[68/80] Compiling SpellbookBinaryParsing BinaryWriterOutput.swift
[69/80] Compiling SpellbookBinaryParsing BinaryReaderInput.swift
[70/80] Compiling SpellbookBinaryParsing BinaryWriter.swift
[71/80] Compiling SpellbookBinaryParsing BinaryReader.swift
[72/80] Emitting module SpellbookBinaryParsing
[73/80] Compiling SpellbookBinaryParsing BinaryParsingError.swift
[74/80] Emitting module SpellbookHTTP
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPRequest.swift:55:23: warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
 46 |
 47 | extension HTTPRequest {
 48 |     public struct Method: RawRepresentable, Hashable {
    |                   `- note: consider making struct 'Method' conform to the 'Sendable' protocol
 49 |         public var rawValue: String
 50 |         public init(rawValue: String) { self.rawValue = rawValue }
    :
 53 |
 54 | extension HTTPRequest.Method {
 55 |     public static let get = Self(rawValue: "GET")
    |                       |- warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'get' 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
 56 |     public static let post = Self(rawValue: "POST")
 57 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPRequest.swift:56:23: warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
 46 |
 47 | extension HTTPRequest {
 48 |     public struct Method: RawRepresentable, Hashable {
    |                   `- note: consider making struct 'Method' conform to the 'Sendable' protocol
 49 |         public var rawValue: String
 50 |         public init(rawValue: String) { self.rawValue = rawValue }
    :
 54 | extension HTTPRequest.Method {
 55 |     public static let get = Self(rawValue: "GET")
 56 |     public static let post = Self(rawValue: "POST")
    |                       |- warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'post' 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
 57 | }
 58 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPRequest.swift:75:23: warning: static property 'userAgent' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Header' may have shared mutable state; this is an error in the Swift 6 language mode
 66 |
 67 | extension HTTPRequest {
 68 |     public struct Header: RawRepresentable, Hashable {
    |                   `- note: consider making struct 'Header' conform to the 'Sendable' protocol
 69 |         public var rawValue: String
 70 |         public init(rawValue: String) { self.rawValue = rawValue }
    :
 73 |
 74 | extension HTTPRequest.Header {
 75 |     public static let userAgent = Self(rawValue: "user-agent")
    |                       |- warning: static property 'userAgent' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Header' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userAgent' 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
 76 | }
 77 |
[75/80] Compiling SpellbookHTTP HTTPClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPClient.swift:51:17: warning: capture of 'completion' with non-sendable type '(Result<HTTPResult<Data>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 49 |         session.dataTask(with: urlRequest) { data, response, error in
 50 |             if let error {
 51 |                 completion(.failure(error))
    |                 |- warning: capture of 'completion' with non-sendable type '(Result<HTTPResult<Data>, any Error>) -> Void' 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'
 52 |                 return
 53 |             }
[76/80] Compiling SpellbookHTTP HTTPRequest.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPRequest.swift:55:23: warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
 46 |
 47 | extension HTTPRequest {
 48 |     public struct Method: RawRepresentable, Hashable {
    |                   `- note: consider making struct 'Method' conform to the 'Sendable' protocol
 49 |         public var rawValue: String
 50 |         public init(rawValue: String) { self.rawValue = rawValue }
    :
 53 |
 54 | extension HTTPRequest.Method {
 55 |     public static let get = Self(rawValue: "GET")
    |                       |- warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'get' 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
 56 |     public static let post = Self(rawValue: "POST")
 57 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPRequest.swift:56:23: warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
 46 |
 47 | extension HTTPRequest {
 48 |     public struct Method: RawRepresentable, Hashable {
    |                   `- note: consider making struct 'Method' conform to the 'Sendable' protocol
 49 |         public var rawValue: String
 50 |         public init(rawValue: String) { self.rawValue = rawValue }
    :
 54 | extension HTTPRequest.Method {
 55 |     public static let get = Self(rawValue: "GET")
 56 |     public static let post = Self(rawValue: "POST")
    |                       |- warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Method' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'post' 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
 57 | }
 58 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookHTTP/HTTPRequest.swift:75:23: warning: static property 'userAgent' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Header' may have shared mutable state; this is an error in the Swift 6 language mode
 66 |
 67 | extension HTTPRequest {
 68 |     public struct Header: RawRepresentable, Hashable {
    |                   `- note: consider making struct 'Header' conform to the 'Sendable' protocol
 69 |         public var rawValue: String
 70 |         public init(rawValue: String) { self.rawValue = rawValue }
    :
 73 |
 74 | extension HTTPRequest.Header {
 75 |     public static let userAgent = Self(rawValue: "user-agent")
    |                       |- warning: static property 'userAgent' is not concurrency-safe because non-'Sendable' type 'HTTPRequest.Header' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userAgent' 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
 76 | }
 77 |
[77/80] Compiling SpellbookTestUtils Extensions - XCTestCase.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:37:23: warning: static property 'waitRate' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |     public static var waitRate = 100.0
36 | #else
37 |     public static var waitRate = 1.0
   |                       |- warning: static property 'waitRate' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'waitRate' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'waitRate' 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
38 | #endif
39 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:40:23: warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
38 | #endif
39 |
40 |     public static var waitTimeout: TimeInterval = 0.5
   |                       |- warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'waitTimeout' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'waitTimeout' 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
41 |
42 |     public static var testBundle: Bundle {
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:58:9: warning: call to main actor-isolated instance method 'waitForExpectations(timeout:handler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
54 |
55 |     @discardableResult
56 |     public func waitForExpectations(timeout: TimeInterval = XCTestCase.waitTimeout, ignoreWaitRate: Bool) -> Error? {
   |                 `- note: add '@MainActor' to make instance method 'waitForExpectations(timeout:ignoreWaitRate:)' part of global actor 'MainActor'
57 |         var error: Error?
58 |         waitForExpectations(timeout: timeout * Self.waitRate) {
   |         `- warning: call to main actor-isolated instance method 'waitForExpectations(timeout:handler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
59 |             error = $0
60 |         }
XCTest.XCTestCase:5:26: note: calls to instance method 'waitForExpectations(timeout:handler:)' from outside of its actor context are implicitly asynchronous
 3 |     @available(swift, obsoleted: 3, renamed: "expectation(description:)")
 4 |     open func expectationWithDescription(_ description: String) -> XCTestExpectation
 5 |     @MainActor open func waitForExpectations(timeout: TimeInterval, handler: (@Sendable ((any Error)?) -> Void)? = nil)
   |                          `- note: calls to instance method 'waitForExpectations(timeout:handler:)' from outside of its actor context are implicitly asynchronous
 6 |     @available(swift, obsoleted: 3, renamed: "waitForExpectations(timeout:handler:)")
 7 |     @MainActor open func waitForExpectationsWithTimeout(_ timeout: TimeInterval, handler: (@Sendable ((any Error)?) -> Void)? = nil)
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:59:13: warning: mutation of captured var 'error' in concurrently-executing code; this is an error in the Swift 6 language mode
57 |         var error: Error?
58 |         waitForExpectations(timeout: timeout * Self.waitRate) {
59 |             error = $0
   |             `- warning: mutation of captured var 'error' in concurrently-executing code; this is an error in the Swift 6 language mode
60 |         }
61 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:58:9: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
56 |     public func waitForExpectations(timeout: TimeInterval = XCTestCase.waitTimeout, ignoreWaitRate: Bool) -> Error? {
57 |         var error: Error?
58 |         waitForExpectations(timeout: timeout * Self.waitRate) {
   |         |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |         `- note: sending task-isolated 'self' to main actor-isolated instance method 'waitForExpectations(timeout:handler:)' risks causing data races between main actor-isolated and task-isolated uses
59 |             error = $0
60 |         }
[78/80] Emitting module SpellbookTestUtils
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:37:23: warning: static property 'waitRate' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |     public static var waitRate = 100.0
36 | #else
37 |     public static var waitRate = 1.0
   |                       |- warning: static property 'waitRate' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'waitRate' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'waitRate' 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
38 | #endif
39 |
/Users/admin/builder/spi-builder-workspace/Sources/SpellbookTestUtils/Extensions - XCTestCase.swift:40:23: warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
38 | #endif
39 |
40 |     public static var waitTimeout: TimeInterval = 0.5
   |                       |- warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'waitTimeout' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'waitTimeout' 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
41 |
42 |     public static var testBundle: Bundle {
[79/80] Compiling SpellbookTestUtils Testing.swift
[80/80] Compiling SpellbookTestUtils TestError.swift
Build complete! (26.66s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftSpellbook",
  "name" : "SwiftSpellbook",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "SpellbookFoundation",
      "targets" : [
        "SpellbookFoundation"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SpellbookHTTP",
      "targets" : [
        "SpellbookHTTP"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SpellbookBinaryParsing",
      "targets" : [
        "SpellbookBinaryParsing"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SpellbookTestUtils",
      "targets" : [
        "SpellbookTestUtils"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SpellbookTests",
      "module_type" : "SwiftTarget",
      "name" : "SpellbookTests",
      "path" : "Tests/SpellbookTests",
      "sources" : [
        "BinaryParsing/BinaryParsingTests.swift",
        "Common/BlockingQueueTests.swift",
        "Common/CancellationTokenTests.swift",
        "Common/ObjectBuilderTests.swift",
        "Common/OtherCommonTests.swift",
        "Common/SBLogTests.swift",
        "Common/SBUnitTests.swift",
        "Common/UtilsTests.swift",
        "Common/WildcardExpressionTests.swift",
        "DictionaryParsing/DictionaryParsingTests.swift",
        "Errors/CommonErrorTests.swift",
        "Errors/ErrorExtensionsTests.swift",
        "Errors/NSErrorTests.swift",
        "Extensions Tests/CodableTests.swift",
        "Extensions Tests/CollectionsTests.swift",
        "Extensions Tests/FileManagerTests.swift",
        "Extensions Tests/StandardTypesTests.swift",
        "Filesystem & Bundle/FileEnumeratorTests.swift",
        "Filesystem & Bundle/FileStoreTests.swift",
        "Filesystem & Bundle/TemporaryDirectoryTests.swift",
        "GUITests/GUITests.swift",
        "LowLevel/AuditTokenTests.swift",
        "LowLevel/MachTests.swift",
        "LowLevel/UnsafeTests.swift",
        "Observing/EventAskTests.swift",
        "Observing/EventNotifyTests.swift",
        "Observing/ObservableTests.swift",
        "Observing/ValueObservingTests.swift",
        "Observing/ValueStoreTests.swift",
        "Other/ObjCTests.swift",
        "Threading & Concurrency/ConcurrentBlockOperationTests.swift",
        "Threading & Concurrency/DispatchQueueExtensionsTests.swift",
        "Threading & Concurrency/SynchronousExecutorTests.swift",
        "Types & PropertyWrappers/PropertyWrapperTests.swift",
        "Types & PropertyWrappers/RefreshableTests.swift",
        "Types & PropertyWrappers/ResourceTests.swift",
        "Types & PropertyWrappers/TypesTests.swift"
      ],
      "target_dependencies" : [
        "SpellbookFoundation",
        "SpellbookBinaryParsing",
        "SpellbookTestUtils"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SpellbookTestUtilsTests",
      "module_type" : "SwiftTarget",
      "name" : "SpellbookTestUtilsTests",
      "path" : "Tests/SpellbookTestUtilsTests",
      "sources" : [
        "TestingTests.swift"
      ],
      "target_dependencies" : [
        "SpellbookFoundation",
        "SpellbookTestUtils"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SpellbookTestUtils",
      "module_type" : "SwiftTarget",
      "name" : "SpellbookTestUtils",
      "path" : "Sources/SpellbookTestUtils",
      "product_memberships" : [
        "SpellbookTestUtils"
      ],
      "sources" : [
        "Extensions - XCTestCase.swift",
        "TestError.swift",
        "Testing.swift"
      ],
      "target_dependencies" : [
        "SpellbookFoundation"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpellbookHTTP",
      "module_type" : "SwiftTarget",
      "name" : "SpellbookHTTP",
      "path" : "Sources/SpellbookHTTP",
      "product_memberships" : [
        "SpellbookHTTP"
      ],
      "sources" : [
        "HTTPClient.swift",
        "HTTPRequest.swift",
        "HTTPResult.swift"
      ],
      "target_dependencies" : [
        "SpellbookFoundation"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpellbookFoundationObjC",
      "module_type" : "ClangTarget",
      "name" : "SpellbookFoundationObjC",
      "path" : "Sources/SpellbookFoundationObjC",
      "product_memberships" : [
        "SpellbookFoundation",
        "SpellbookHTTP",
        "SpellbookBinaryParsing",
        "SpellbookTestUtils"
      ],
      "sources" : [
        "SpellbookObjC.mm"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpellbookFoundation",
      "module_type" : "SwiftTarget",
      "name" : "SpellbookFoundation",
      "path" : "Sources/SpellbookFoundation",
      "product_memberships" : [
        "SpellbookFoundation",
        "SpellbookHTTP",
        "SpellbookBinaryParsing",
        "SpellbookTestUtils"
      ],
      "sources" : [
        "Combine/Extensions - Combine.swift",
        "Combine/Proxies - Combine.swift",
        "Common/Benchmark.swift",
        "Common/CancellationToken.swift",
        "Common/Environment.swift",
        "Common/Exceptions.swift",
        "Common/Extensions - Codable.swift",
        "Common/Extensions - Collections.swift",
        "Common/Extensions - Comparable.swift",
        "Common/Extensions - Formatters.swift",
        "Common/Extensions - StandardTypes.swift",
        "Common/SBUnit.swift",
        "Common/SpellbookLog.swift",
        "Common/Utils.swift",
        "Common/ValueBuilder.swift",
        "Common/WildcardExpression.swift",
        "DictionaryParsing/DictionaryCodingKey.swift",
        "DictionaryParsing/DictionaryReader.swift",
        "DictionaryParsing/DictionaryWriter.swift",
        "Errors/CommonError.swift",
        "Errors/CustomErrorUpdating.swift",
        "Errors/Extensions - Error.swift",
        "Errors/Extensions - NSError.swift",
        "Errors/IOKitError.swift",
        "Filesystem & Bundle/Extensions - Bundle.swift",
        "Filesystem & Bundle/Extensions - FileManager.swift",
        "Filesystem & Bundle/FileEnumerator.swift",
        "Filesystem & Bundle/FileStore.swift",
        "Filesystem & Bundle/TemporaryDirectory.swift",
        "GUI/Extensions - CoreGraphics.swift",
        "Internal.swift",
        "Low Level/AuditToken.swift",
        "Low Level/BridgedCEnum.swift",
        "Low Level/MachTime.swift",
        "Low Level/POD+Swift.swift",
        "Low Level/Unsafe.swift",
        "System & Hardware/DeviceInfo.swift",
        "System & Hardware/Extensions - ProcessInfo.swift",
        "Threading & Concurrency/Atomic.swift",
        "Threading & Concurrency/BlockingQueue.swift",
        "Threading & Concurrency/ConcurrentBlockOperation.swift",
        "Threading & Concurrency/Extensions - DispatchQueue.swift",
        "Threading & Concurrency/Extensions - Locks.swift",
        "Threading & Concurrency/Extensions - Task.swift",
        "Threading & Concurrency/PosixLocks.swift",
        "Threading & Concurrency/Synchronized.swift",
        "Threading & Concurrency/SynchronizedObjC.swift",
        "Threading & Concurrency/SynchronousExecutor.swift",
        "Types & PropertyWrappers/Boxing.swift",
        "Types & PropertyWrappers/Closure.swift",
        "Types & PropertyWrappers/Refreshable.swift",
        "Types & PropertyWrappers/Resource (RAII).swift",
        "Types & PropertyWrappers/Types.swift",
        "ValueObserving/EventAsk.swift",
        "ValueObserving/EventNotify.swift",
        "ValueObserving/ValueObservable.swift",
        "ValueObserving/ValueObserving.swift",
        "ValueObserving/ValueStore.swift",
        "ValueObserving/ValueView.swift"
      ],
      "target_dependencies" : [
        "SpellbookFoundationObjC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpellbookBinaryParsing",
      "module_type" : "SwiftTarget",
      "name" : "SpellbookBinaryParsing",
      "path" : "Sources/SpellbookBinaryParsing",
      "product_memberships" : [
        "SpellbookBinaryParsing"
      ],
      "sources" : [
        "BinaryParsingError.swift",
        "BinaryReader.swift",
        "BinaryReaderInput.swift",
        "BinaryWriter.swift",
        "BinaryWriterOutput.swift"
      ],
      "target_dependencies" : [
        "SpellbookFoundation"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.