Build Information
Successful build of Acheron, reference master (9f4c26
), with Swift 6.1 for macOS (SPM) on 27 Apr 2025 23:59:54 UTC.
Swift 6 data race errors: 8
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
54 | let group: DispatchGroup = DispatchGroup()
55 | keys.forEach { (key: T) in
56 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
57 | group.enter()
58 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:38: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:50: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:61:32: warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
59 | let result: U? = self.worker(key)
60 | self.serial.async {
61 | if let result {
| `- warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
63 | self.cache[key] = result
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:84: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:57: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:82:53: warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
83 | self.requestedKeys.formUnion(newKeys)
84 | if restart {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:99:16: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
97 | func scheduleWipe() {
98 | serial.async {
99 | if self.working { self.needsWipe = true }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
100 | else { self.wipe() }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Log.swift:12:24: warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | class Log {
12 | private static var url: URL? = nil
| |- warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'url' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'url' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | static func setPath(_ path: String) {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Profiler.swift:37:23: warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | public class Profiler {
37 | public static var profiler: Profiler = Profiler()
| |- warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'profiler' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'profiler' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | private let stopwatches: DoubleMap = DoubleMap()
[30/63] Compiling Acheron AsyncMap.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:43:13: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
41 | private func startWorking() {
42 | serial.async {
43 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
44 | let keys: [T] = Array(self.requestedKeys)
45 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:56:20: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
54 | let group: DispatchGroup = DispatchGroup()
55 | keys.forEach { (key: T) in
56 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
57 | group.enter()
58 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:38: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:50: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:61:32: warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
59 | let result: U? = self.worker(key)
60 | self.serial.async {
61 | if let result {
| `- warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
63 | self.cache[key] = result
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:84: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:57: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:82:53: warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
83 | self.requestedKeys.formUnion(newKeys)
84 | if restart {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:99:16: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
97 | func scheduleWipe() {
98 | serial.async {
99 | if self.working { self.needsWipe = true }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
100 | else { self.wipe() }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Log.swift:12:24: warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | class Log {
12 | private static var url: URL? = nil
| |- warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'url' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'url' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | static func setPath(_ path: String) {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Profiler.swift:37:23: warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | public class Profiler {
37 | public static var profiler: Profiler = Profiler()
| |- warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'profiler' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'profiler' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | private let stopwatches: DoubleMap = DoubleMap()
[31/63] Compiling Acheron Log.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:43:13: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
41 | private func startWorking() {
42 | serial.async {
43 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
44 | let keys: [T] = Array(self.requestedKeys)
45 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:56:20: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
54 | let group: DispatchGroup = DispatchGroup()
55 | keys.forEach { (key: T) in
56 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
57 | group.enter()
58 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:38: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:50: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:61:32: warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
59 | let result: U? = self.worker(key)
60 | self.serial.async {
61 | if let result {
| `- warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
63 | self.cache[key] = result
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:84: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:57: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:82:53: warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
83 | self.requestedKeys.formUnion(newKeys)
84 | if restart {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:99:16: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
97 | func scheduleWipe() {
98 | serial.async {
99 | if self.working { self.needsWipe = true }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
100 | else { self.wipe() }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Log.swift:12:24: warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | class Log {
12 | private static var url: URL? = nil
| |- warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'url' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'url' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | static func setPath(_ path: String) {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Profiler.swift:37:23: warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | public class Profiler {
37 | public static var profiler: Profiler = Profiler()
| |- warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'profiler' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'profiler' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | private let stopwatches: DoubleMap = DoubleMap()
[32/63] Compiling Acheron Pen.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:43:13: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
41 | private func startWorking() {
42 | serial.async {
43 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
44 | let keys: [T] = Array(self.requestedKeys)
45 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:56:20: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
54 | let group: DispatchGroup = DispatchGroup()
55 | keys.forEach { (key: T) in
56 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
57 | group.enter()
58 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:38: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:50: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:61:32: warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
59 | let result: U? = self.worker(key)
60 | self.serial.async {
61 | if let result {
| `- warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
63 | self.cache[key] = result
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:84: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:57: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:82:53: warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
83 | self.requestedKeys.formUnion(newKeys)
84 | if restart {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:99:16: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
97 | func scheduleWipe() {
98 | serial.async {
99 | if self.working { self.needsWipe = true }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
100 | else { self.wipe() }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Log.swift:12:24: warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | class Log {
12 | private static var url: URL? = nil
| |- warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'url' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'url' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | static func setPath(_ path: String) {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Profiler.swift:37:23: warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | public class Profiler {
37 | public static var profiler: Profiler = Profiler()
| |- warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'profiler' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'profiler' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | private let stopwatches: DoubleMap = DoubleMap()
[33/63] Compiling Acheron Profiler.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:43:13: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
41 | private func startWorking() {
42 | serial.async {
43 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
44 | let keys: [T] = Array(self.requestedKeys)
45 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:56:20: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
54 | let group: DispatchGroup = DispatchGroup()
55 | keys.forEach { (key: T) in
56 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
57 | group.enter()
58 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:38: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:59:50: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
57 | group.enter()
58 | self.concurrent.async {
59 | let result: U? = self.worker(key)
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
60 | self.serial.async {
61 | if let result {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:61:32: warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
59 | let result: U? = self.worker(key)
60 | self.serial.async {
61 | if let result {
| `- warning: capture of 'result' with non-sendable type 'U?' in a '@Sendable' closure
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
63 | self.cache[key] = result
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:62:84: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
60 | self.serial.async {
61 | if let result {
62 | if self.report { print("[ \(self.label) ] complete [ \(key) ]") }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
63 | self.cache[key] = result
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:72:32: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
70 | }
71 | group.notify(queue: self.serial) {
72 | keys.forEach { self.complete?($0) }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
73 | self.startWorking()
74 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:80:57: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
78 | guard keys.count > 0 else { return }
79 | serial.async {
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:82:53: warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
80 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
81 | guard newKeys.count > 0 else { return }
82 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'AsyncMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
83 | self.requestedKeys.formUnion(newKeys)
84 | if restart {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/AsyncMap.swift:99:16: warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class AsyncMap<T:Hashable, U> {
| `- note: generic class 'AsyncMap' does not conform to the 'Sendable' protocol
12 | let label: String
13 | let report: Bool
:
97 | func scheduleWipe() {
98 | serial.async {
99 | if self.working { self.needsWipe = true }
| `- warning: capture of 'self' with non-sendable type 'AsyncMap<T, U>' in a '@Sendable' closure
100 | else { self.wipe() }
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Log.swift:12:24: warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | class Log {
12 | private static var url: URL? = nil
| |- warning: static property 'url' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'url' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'url' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 | static func setPath(_ path: String) {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/Profiler.swift:37:23: warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | public class Profiler {
37 | public static var profiler: Profiler = Profiler()
| |- warning: static property 'profiler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'profiler' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'profiler' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | private let stopwatches: DoubleMap = DoubleMap()
[34/63] Compiling Acheron RGB.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:54:13: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
52 | private func handleRequests() {
53 | serial.async {
54 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
55 | let keys: [T] = Array(self.requestedKeys)
56 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:63:20: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
61 | let group: DispatchGroup = DispatchGroup()
62 | keys.forEach { (key: T) in
63 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
64 | group.enter()
65 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:36: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:41: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:28: warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:45: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:71: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:76:48: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
74 | }
75 | }
76 | group.notify(queue: self.serial) { self.handleRequests() }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
77 | }
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:57: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:84:53: warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
85 | self.requestedKeys.formUnion(newKeys)
86 | if restart {
[35/63] Compiling Acheron SafeMap.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:54:13: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
52 | private func handleRequests() {
53 | serial.async {
54 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
55 | let keys: [T] = Array(self.requestedKeys)
56 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:63:20: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
61 | let group: DispatchGroup = DispatchGroup()
62 | keys.forEach { (key: T) in
63 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
64 | group.enter()
65 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:36: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:41: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:28: warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:45: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:71: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:76:48: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
74 | }
75 | }
76 | group.notify(queue: self.serial) { self.handleRequests() }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
77 | }
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:57: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:84:53: warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
85 | self.requestedKeys.formUnion(newKeys)
86 | if restart {
[36/63] Compiling Acheron SafeSet.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:54:13: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
52 | private func handleRequests() {
53 | serial.async {
54 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
55 | let keys: [T] = Array(self.requestedKeys)
56 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:63:20: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
61 | let group: DispatchGroup = DispatchGroup()
62 | keys.forEach { (key: T) in
63 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
64 | group.enter()
65 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:36: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:41: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:28: warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:45: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:71: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:76:48: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
74 | }
75 | }
76 | group.notify(queue: self.serial) { self.handleRequests() }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
77 | }
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:57: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:84:53: warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
85 | self.requestedKeys.formUnion(newKeys)
86 | if restart {
[37/63] Compiling Acheron ScramMap.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:54:13: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
52 | private func handleRequests() {
53 | serial.async {
54 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
55 | let keys: [T] = Array(self.requestedKeys)
56 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:63:20: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
61 | let group: DispatchGroup = DispatchGroup()
62 | keys.forEach { (key: T) in
63 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
64 | group.enter()
65 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:36: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:41: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:28: warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:45: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:71: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:76:48: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
74 | }
75 | }
76 | group.notify(queue: self.serial) { self.handleRequests() }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
77 | }
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:57: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:84:53: warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
85 | self.requestedKeys.formUnion(newKeys)
86 | if restart {
[38/63] Compiling Acheron WeakSet.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:54:13: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
52 | private func handleRequests() {
53 | serial.async {
54 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
55 | let keys: [T] = Array(self.requestedKeys)
56 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:63:20: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
61 | let group: DispatchGroup = DispatchGroup()
62 | keys.forEach { (key: T) in
63 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
64 | group.enter()
65 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:36: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:41: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:28: warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:45: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:71: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:76:48: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
74 | }
75 | }
76 | group.notify(queue: self.serial) { self.handleRequests() }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
77 | }
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:57: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:84:53: warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
85 | self.requestedKeys.formUnion(newKeys)
86 | if restart {
[39/63] Compiling Acheron XMLtoAttributes.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:54:13: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
52 | private func handleRequests() {
53 | serial.async {
54 | self.working = true
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
55 | let keys: [T] = Array(self.requestedKeys)
56 | guard keys.count > 0 else {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:63:20: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
61 | let group: DispatchGroup = DispatchGroup()
62 | keys.forEach { (key: T) in
63 | if self.report { print("[ \(self.label) ] request [ \(key) ]") }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
64 | group.enter()
65 | self.concurrent.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:36: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:66:41: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
64 | group.enter()
65 | self.concurrent.async {
66 | let value: U = self[key]
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
67 | self.onScrape(key, value)
68 | self.serial.async {
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:28: warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'value' with non-sendable type 'U' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:45: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:69:71: warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
67 | self.onScrape(key, value)
68 | self.serial.async {
69 | if value.complete { self.completedKeys.insert(key) }
| `- warning: capture of 'key' with non-sendable type 'T' in a '@Sendable' closure
70 | self.requestedKeys.remove(key)
71 | if value.progress { self.onProgress(key) }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:76:48: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
74 | }
75 | }
76 | group.notify(queue: self.serial) { self.handleRequests() }
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in an isolated closure; this is an error in the Swift 6 language mode
77 | }
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:39: warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'keys' with non-sendable type '[T]' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:82:57: warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
80 | guard keys.count > 0 else { return }
81 | serial.async {
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
| `- warning: capture of 'self' with non-sendable type 'ScramMap<T, U>' in a '@Sendable' closure
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Utility/ScramMap.swift:84:53: warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public class ScramMap<T:Hashable, U:Scramble<T>> {
| `- note: generic class 'ScramMap' does not conform to the 'Sendable' protocol
19 | let label: String
20 | let report: Bool
:
82 | let newKeys: Set<T> = Set(keys).subtracting(self.completedKeys).subtracting(self.requestedKeys)
83 | guard newKeys.count > 0 else { return }
84 | let restart: Bool = !newKeys.isEmpty && self.requestedKeys.isEmpty
| `- warning: implicit capture of 'self' requires that 'ScramMap<T, U>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
85 | self.requestedKeys.formUnion(newKeys)
86 | if restart {
[40/63] Compiling Acheron Array+Acheron.swift
[41/63] Compiling Acheron CALayer+Acheron.swift
[42/63] Compiling Acheron CGPoint+Acheron.swift
[43/63] Compiling Acheron CGRect+Acheron.swift
[44/63] Compiling Acheron CGSize+Acheron.swift
[45/63] Compiling Acheron CaseIterable+Acheron.swift
[46/63] Compiling Acheron Codable+Acheron.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:21:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | }
20 |
21 | private static var formatters: [String:DateFormatter] = [:]
| |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 | func format(_ template: String) -> String {
23 | var formatter = Date.formatters[template]
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:39:16: warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 | static var now: Date { Date() }
38 |
39 | static var isoFormatter: DateFormatter = {
| |- warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isoFormatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isoFormatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | var formatter = DateFormatter()
41 | formatter.locale = Locale(identifier: "en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:45:16: warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | return formatter
44 | }()
45 | static var iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iso8601Formatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 | let formatter: ISO8601DateFormatter = ISO8601DateFormatter()
47 | if #available(iOS 11, *) {
[47/63] Compiling Acheron Comparable+Acheron.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:21:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | }
20 |
21 | private static var formatters: [String:DateFormatter] = [:]
| |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 | func format(_ template: String) -> String {
23 | var formatter = Date.formatters[template]
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:39:16: warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 | static var now: Date { Date() }
38 |
39 | static var isoFormatter: DateFormatter = {
| |- warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isoFormatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isoFormatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | var formatter = DateFormatter()
41 | formatter.locale = Locale(identifier: "en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:45:16: warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | return formatter
44 | }()
45 | static var iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iso8601Formatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 | let formatter: ISO8601DateFormatter = ISO8601DateFormatter()
47 | if #available(iOS 11, *) {
[48/63] Compiling Acheron Date+Acheron.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:21:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | }
20 |
21 | private static var formatters: [String:DateFormatter] = [:]
| |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 | func format(_ template: String) -> String {
23 | var formatter = Date.formatters[template]
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:39:16: warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 | static var now: Date { Date() }
38 |
39 | static var isoFormatter: DateFormatter = {
| |- warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isoFormatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isoFormatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | var formatter = DateFormatter()
41 | formatter.locale = Locale(identifier: "en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:45:16: warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | return formatter
44 | }()
45 | static var iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iso8601Formatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 | let formatter: ISO8601DateFormatter = ISO8601DateFormatter()
47 | if #available(iOS 11, *) {
[49/63] Compiling Acheron Dictionary+Acheron.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:21:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | }
20 |
21 | private static var formatters: [String:DateFormatter] = [:]
| |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 | func format(_ template: String) -> String {
23 | var formatter = Date.formatters[template]
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:39:16: warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 | static var now: Date { Date() }
38 |
39 | static var isoFormatter: DateFormatter = {
| |- warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isoFormatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isoFormatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | var formatter = DateFormatter()
41 | formatter.locale = Locale(identifier: "en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:45:16: warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | return formatter
44 | }()
45 | static var iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iso8601Formatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 | let formatter: ISO8601DateFormatter = ISO8601DateFormatter()
47 | if #available(iOS 11, *) {
[50/63] Compiling Acheron NSMutableAttributedString+Acheron.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:21:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | }
20 |
21 | private static var formatters: [String:DateFormatter] = [:]
| |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 | func format(_ template: String) -> String {
23 | var formatter = Date.formatters[template]
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:39:16: warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 | static var now: Date { Date() }
38 |
39 | static var isoFormatter: DateFormatter = {
| |- warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isoFormatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isoFormatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | var formatter = DateFormatter()
41 | formatter.locale = Locale(identifier: "en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:45:16: warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | return formatter
44 | }()
45 | static var iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iso8601Formatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 | let formatter: ISO8601DateFormatter = ISO8601DateFormatter()
47 | if #available(iOS 11, *) {
[51/63] Compiling Acheron String+Acheron.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:21:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
19 | }
20 |
21 | private static var formatters: [String:DateFormatter] = [:]
| |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
22 | func format(_ template: String) -> String {
23 | var formatter = Date.formatters[template]
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:39:16: warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 | static var now: Date { Date() }
38 |
39 | static var isoFormatter: DateFormatter = {
| |- warning: static property 'isoFormatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isoFormatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isoFormatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | var formatter = DateFormatter()
41 | formatter.locale = Locale(identifier: "en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Extensions/Date+Acheron.swift:45:16: warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | return formatter
44 | }()
45 | static var iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iso8601Formatter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 | let formatter: ISO8601DateFormatter = ISO8601DateFormatter()
47 | if #available(iOS 11, *) {
[52/63] Compiling Acheron SplitterView.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:14:23: warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | public class Loom {
14 | public static var basket: Basket!
| |- warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'basket' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'basket' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | public static var namespaces: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:16:23: warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | public static var basket: Basket!
15 |
16 | public static var namespaces: [String] = []
| |- warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'namespaces' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'namespaces' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | static var domains = [String:[String:AnyClass]]()
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:17:16: warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | public static var namespaces: [String] = []
17 | static var domains = [String:[String:AnyClass]]()
| |- warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'domains' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'domains' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | static func nameFromType(_ type: Domain.Type) -> String {
[53/63] Compiling Acheron TripWire.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:14:23: warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | public class Loom {
14 | public static var basket: Basket!
| |- warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'basket' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'basket' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | public static var namespaces: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:16:23: warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | public static var basket: Basket!
15 |
16 | public static var namespaces: [String] = []
| |- warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'namespaces' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'namespaces' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | static var domains = [String:[String:AnyClass]]()
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:17:16: warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | public static var namespaces: [String] = []
17 | static var domains = [String:[String:AnyClass]]()
| |- warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'domains' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'domains' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | static func nameFromType(_ type: Domain.Type) -> String {
[54/63] Compiling Acheron Anchor.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:14:23: warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | public class Loom {
14 | public static var basket: Basket!
| |- warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'basket' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'basket' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | public static var namespaces: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:16:23: warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | public static var basket: Basket!
15 |
16 | public static var namespaces: [String] = []
| |- warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'namespaces' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'namespaces' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | static var domains = [String:[String:AnyClass]]()
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:17:16: warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | public static var namespaces: [String] = []
17 | static var domains = [String:[String:AnyClass]]()
| |- warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'domains' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'domains' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | static func nameFromType(_ type: Domain.Type) -> String {
[55/63] Compiling Acheron Basket.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:14:23: warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | public class Loom {
14 | public static var basket: Basket!
| |- warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'basket' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'basket' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | public static var namespaces: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:16:23: warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | public static var basket: Basket!
15 |
16 | public static var namespaces: [String] = []
| |- warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'namespaces' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'namespaces' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | static var domains = [String:[String:AnyClass]]()
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:17:16: warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | public static var namespaces: [String] = []
17 | static var domains = [String:[String:AnyClass]]()
| |- warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'domains' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'domains' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | static func nameFromType(_ type: Domain.Type) -> String {
[56/63] Compiling Acheron Domain.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:14:23: warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | public class Loom {
14 | public static var basket: Basket!
| |- warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'basket' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'basket' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | public static var namespaces: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:16:23: warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | public static var basket: Basket!
15 |
16 | public static var namespaces: [String] = []
| |- warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'namespaces' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'namespaces' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | static var domains = [String:[String:AnyClass]]()
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:17:16: warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | public static var namespaces: [String] = []
17 | static var domains = [String:[String:AnyClass]]()
| |- warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'domains' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'domains' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | static func nameFromType(_ type: Domain.Type) -> String {
[57/63] Compiling Acheron Loom.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:14:23: warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | public class Loom {
14 | public static var basket: Basket!
| |- warning: static property 'basket' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'basket' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'basket' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | public static var namespaces: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:16:23: warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | public static var basket: Basket!
15 |
16 | public static var namespaces: [String] = []
| |- warning: static property 'namespaces' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'namespaces' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'namespaces' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | static var domains = [String:[String:AnyClass]]()
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Loom/Loom.swift:17:16: warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | public static var namespaces: [String] = []
17 | static var domains = [String:[String:AnyClass]]()
| |- warning: static property 'domains' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'domains' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'domains' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | static func nameFromType(_ type: Domain.Type) -> String {
[58/63] Compiling Acheron Persist.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:36:17: warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
34 | guard error == nil else {
35 | print("error: \(error!)")
36 | failure()
| |- warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 | return
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:51:67: warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
49 | }
50 |
51 | if let result = String(data: data, encoding: .utf8) { success(result.toAttributes()) }
| |- warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | else { failure() }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:44:34: warning: reference to captured var 'request' in concurrently-executing code
42 | if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
43 | print("\n[ \(path) : \(response.statusCode) ] ===================================================")
44 | if let headers = request.allHTTPHeaderFields { print("headers ========================\n\(headers.toJSON())\n") }
| `- warning: reference to captured var 'request' in concurrently-executing code
45 | if let params = params { print("params =========================\n\(params.toJSON())\n") }
46 | if let message = String(data: data, encoding: .utf8) { print("message =========================\n\(message)\n") }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:40:21: warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class Pebble {
| `- note: class 'Pebble' does not conform to the 'Sendable' protocol
12 | public enum State {
13 | case pending, running, succeeded, failed
:
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
| `- warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
41 | pond.iterate()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:41:21: warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
| `- warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
42 | }
43 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:11:12: note: class 'Pond' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:67:13: warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
:
65 | queue.async {
66 | print("\n[ Pond Starting ] ====================================")
67 | self.iterate()
| `- warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:36:68: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 | state = .running
35 | DispatchQueue.main.async {
36 | let dashes: String = String(repeating: "-", count: (32-self.name.count)/2)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:39:17: warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
| |- warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pond' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:39:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
37 | print("\n =======================\n")
38 |
39 | DispatchQueue.main.async { self.onCompleted() }
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | }
41 |
[59/63] Compiling Acheron SQLitePersist.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:36:17: warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
34 | guard error == nil else {
35 | print("error: \(error!)")
36 | failure()
| |- warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 | return
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:51:67: warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
49 | }
50 |
51 | if let result = String(data: data, encoding: .utf8) { success(result.toAttributes()) }
| |- warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | else { failure() }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:44:34: warning: reference to captured var 'request' in concurrently-executing code
42 | if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
43 | print("\n[ \(path) : \(response.statusCode) ] ===================================================")
44 | if let headers = request.allHTTPHeaderFields { print("headers ========================\n\(headers.toJSON())\n") }
| `- warning: reference to captured var 'request' in concurrently-executing code
45 | if let params = params { print("params =========================\n\(params.toJSON())\n") }
46 | if let message = String(data: data, encoding: .utf8) { print("message =========================\n\(message)\n") }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:40:21: warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class Pebble {
| `- note: class 'Pebble' does not conform to the 'Sendable' protocol
12 | public enum State {
13 | case pending, running, succeeded, failed
:
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
| `- warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
41 | pond.iterate()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:41:21: warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
| `- warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
42 | }
43 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:11:12: note: class 'Pond' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:67:13: warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
:
65 | queue.async {
66 | print("\n[ Pond Starting ] ====================================")
67 | self.iterate()
| `- warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:36:68: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 | state = .running
35 | DispatchQueue.main.async {
36 | let dashes: String = String(repeating: "-", count: (32-self.name.count)/2)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:39:17: warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
| |- warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pond' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:39:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
37 | print("\n =======================\n")
38 |
39 | DispatchQueue.main.async { self.onCompleted() }
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | }
41 |
[60/63] Compiling Acheron Wrapper.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:36:17: warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
34 | guard error == nil else {
35 | print("error: \(error!)")
36 | failure()
| |- warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 | return
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:51:67: warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
49 | }
50 |
51 | if let result = String(data: data, encoding: .utf8) { success(result.toAttributes()) }
| |- warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | else { failure() }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:44:34: warning: reference to captured var 'request' in concurrently-executing code
42 | if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
43 | print("\n[ \(path) : \(response.statusCode) ] ===================================================")
44 | if let headers = request.allHTTPHeaderFields { print("headers ========================\n\(headers.toJSON())\n") }
| `- warning: reference to captured var 'request' in concurrently-executing code
45 | if let params = params { print("params =========================\n\(params.toJSON())\n") }
46 | if let message = String(data: data, encoding: .utf8) { print("message =========================\n\(message)\n") }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:40:21: warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class Pebble {
| `- note: class 'Pebble' does not conform to the 'Sendable' protocol
12 | public enum State {
13 | case pending, running, succeeded, failed
:
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
| `- warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
41 | pond.iterate()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:41:21: warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
| `- warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
42 | }
43 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:11:12: note: class 'Pond' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:67:13: warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
:
65 | queue.async {
66 | print("\n[ Pond Starting ] ====================================")
67 | self.iterate()
| `- warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:36:68: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 | state = .running
35 | DispatchQueue.main.async {
36 | let dashes: String = String(repeating: "-", count: (32-self.name.count)/2)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:39:17: warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
| |- warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pond' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:39:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
37 | print("\n =======================\n")
38 |
39 | DispatchQueue.main.async { self.onCompleted() }
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | }
41 |
[61/63] Compiling Acheron BackgroundPond.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:36:17: warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
34 | guard error == nil else {
35 | print("error: \(error!)")
36 | failure()
| |- warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 | return
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:51:67: warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
49 | }
50 |
51 | if let result = String(data: data, encoding: .utf8) { success(result.toAttributes()) }
| |- warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | else { failure() }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:44:34: warning: reference to captured var 'request' in concurrently-executing code
42 | if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
43 | print("\n[ \(path) : \(response.statusCode) ] ===================================================")
44 | if let headers = request.allHTTPHeaderFields { print("headers ========================\n\(headers.toJSON())\n") }
| `- warning: reference to captured var 'request' in concurrently-executing code
45 | if let params = params { print("params =========================\n\(params.toJSON())\n") }
46 | if let message = String(data: data, encoding: .utf8) { print("message =========================\n\(message)\n") }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:40:21: warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class Pebble {
| `- note: class 'Pebble' does not conform to the 'Sendable' protocol
12 | public enum State {
13 | case pending, running, succeeded, failed
:
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
| `- warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
41 | pond.iterate()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:41:21: warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
| `- warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
42 | }
43 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:11:12: note: class 'Pond' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:67:13: warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
:
65 | queue.async {
66 | print("\n[ Pond Starting ] ====================================")
67 | self.iterate()
| `- warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:36:68: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 | state = .running
35 | DispatchQueue.main.async {
36 | let dashes: String = String(repeating: "-", count: (32-self.name.count)/2)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:39:17: warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
| |- warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pond' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:39:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
37 | print("\n =======================\n")
38 |
39 | DispatchQueue.main.async { self.onCompleted() }
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | }
41 |
[62/63] Compiling Acheron Pebble.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:36:17: warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
34 | guard error == nil else {
35 | print("error: \(error!)")
36 | failure()
| |- warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 | return
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:51:67: warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
49 | }
50 |
51 | if let result = String(data: data, encoding: .utf8) { success(result.toAttributes()) }
| |- warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | else { failure() }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:44:34: warning: reference to captured var 'request' in concurrently-executing code
42 | if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
43 | print("\n[ \(path) : \(response.statusCode) ] ===================================================")
44 | if let headers = request.allHTTPHeaderFields { print("headers ========================\n\(headers.toJSON())\n") }
| `- warning: reference to captured var 'request' in concurrently-executing code
45 | if let params = params { print("params =========================\n\(params.toJSON())\n") }
46 | if let message = String(data: data, encoding: .utf8) { print("message =========================\n\(message)\n") }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:40:21: warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class Pebble {
| `- note: class 'Pebble' does not conform to the 'Sendable' protocol
12 | public enum State {
13 | case pending, running, succeeded, failed
:
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
| `- warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
41 | pond.iterate()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:41:21: warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
| `- warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
42 | }
43 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:11:12: note: class 'Pond' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:67:13: warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
:
65 | queue.async {
66 | print("\n[ Pond Starting ] ====================================")
67 | self.iterate()
| `- warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:36:68: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 | state = .running
35 | DispatchQueue.main.async {
36 | let dashes: String = String(repeating: "-", count: (32-self.name.count)/2)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:39:17: warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
| |- warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pond' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:39:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
37 | print("\n =======================\n")
38 |
39 | DispatchQueue.main.async { self.onCompleted() }
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | }
41 |
[63/63] Compiling Acheron Pond.swift
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:36:17: warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
34 | guard error == nil else {
35 | print("error: \(error!)")
36 | failure()
| |- warning: capture of 'failure' with non-sendable type '() -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 | return
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:51:67: warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
49 | }
50 |
51 | if let result = String(data: data, encoding: .utf8) { success(result.toAttributes()) }
| |- warning: capture of 'success' with non-sendable type '([String : Any]) -> ()' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | else { failure() }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Network/Wrapper.swift:44:34: warning: reference to captured var 'request' in concurrently-executing code
42 | if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
43 | print("\n[ \(path) : \(response.statusCode) ] ===================================================")
44 | if let headers = request.allHTTPHeaderFields { print("headers ========================\n\(headers.toJSON())\n") }
| `- warning: reference to captured var 'request' in concurrently-executing code
45 | if let params = params { print("params =========================\n\(params.toJSON())\n") }
46 | if let message = String(data: data, encoding: .utf8) { print("message =========================\n\(message)\n") }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:40:21: warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class Pebble {
| `- note: class 'Pebble' does not conform to the 'Sendable' protocol
12 | public enum State {
13 | case pending, running, succeeded, failed
:
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
| `- warning: capture of 'self' with non-sendable type 'Pebble' in a '@Sendable' closure
41 | pond.iterate()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:41:21: warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
39 | pond.queue.async {
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
| `- warning: capture of 'pond' with non-sendable type 'Pond' in a '@Sendable' closure
42 | }
43 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:11:12: note: class 'Pond' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:67:13: warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
9 | import Foundation
10 |
11 | open class Pond {
| `- note: class 'Pond' does not conform to the 'Sendable' protocol
12 | private var pebbles: [Pebble] = []
13 | let queue: DispatchQueue = DispatchQueue(label: "pond")
:
65 | queue.async {
66 | print("\n[ Pond Starting ] ====================================")
67 | self.iterate()
| `- warning: capture of 'self' with non-sendable type 'Pond' in a '@Sendable' closure
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:36:68: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 | state = .running
35 | DispatchQueue.main.async {
36 | let dashes: String = String(repeating: "-", count: (32-self.name.count)/2)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pebble.swift:39:17: warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
37 | Log.print("\n \(dashes)\(self.name.count % 2 == 1 ? "-" : "") [ \(self.name) ] \(dashes)")
38 | self.payload { (success: Bool) in
39 | pond.queue.async {
| |- warning: sending 'pond' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pond' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | self.state = success ? .succeeded : .failed
41 | pond.iterate()
/Users/admin/builder/spi-builder-workspace/Sources/Acheron/Pebbles/Pond.swift:39:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
37 | print("\n =======================\n")
38 |
39 | DispatchQueue.main.async { self.onCompleted() }
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
40 | }
41 |
Build complete! (4.88s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Acheron",
"name" : "Acheron",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "maccatalyst",
"version" : "13.0"
}
],
"products" : [
{
"name" : "Acheron",
"targets" : [
"Acheron"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "Acheron",
"module_type" : "SwiftTarget",
"name" : "Acheron",
"path" : "Sources/Acheron",
"product_memberships" : [
"Acheron"
],
"sources" : [
"Extensions/Array+Acheron.swift",
"Extensions/CALayer+Acheron.swift",
"Extensions/CGPoint+Acheron.swift",
"Extensions/CGRect+Acheron.swift",
"Extensions/CGSize+Acheron.swift",
"Extensions/CaseIterable+Acheron.swift",
"Extensions/Codable+Acheron.swift",
"Extensions/Comparable+Acheron.swift",
"Extensions/Date+Acheron.swift",
"Extensions/Dictionary+Acheron.swift",
"Extensions/NSMutableAttributedString+Acheron.swift",
"Extensions/String+Acheron.swift",
"Extensions/UIButton+Acheron.swift",
"Extensions/UIColor+Acheron.swift",
"Extensions/UIControl+Acheron.swift",
"Extensions/UIImage+Acheron.swift",
"Extensions/UIImageView+Acheron.swift",
"Extensions/UILabel+Acheron.swift",
"Extensions/UIView+Acheron.swift",
"Extensions/UIViewController+Acheron.swift",
"Interface/AEControl.swift",
"Interface/AETableView.swift",
"Interface/AEView.swift",
"Interface/AEViewController.swift",
"Interface/CellsView.swift",
"Interface/CellsViewCell.swift",
"Interface/ColorView.swift",
"Interface/ExpandableCell.swift",
"Interface/ExpandableTableView.swift",
"Interface/NodeView/Node.swift",
"Interface/NodeView/NodeCell.swift",
"Interface/NodeView/NodeColumn.swift",
"Interface/NodeView/NodeData.swift",
"Interface/NodeView/NodeHeader.swift",
"Interface/NodeView/NodeView.swift",
"Interface/Screen.swift",
"Interface/SplitterView.swift",
"Interface/TripWire.swift",
"Loom/Anchor.swift",
"Loom/Basket.swift",
"Loom/Domain.swift",
"Loom/Loom.swift",
"Loom/Persist.swift",
"Loom/Persists/SQLitePersist.swift",
"Network/Wrapper.swift",
"Pebbles/BackgroundPond.swift",
"Pebbles/Pebble.swift",
"Pebbles/Pond.swift",
"Utility/AESync.swift",
"Utility/AETimer.swift",
"Utility/AsyncMap.swift",
"Utility/Log.swift",
"Utility/Pen.swift",
"Utility/Profiler.swift",
"Utility/RGB.swift",
"Utility/SafeMap.swift",
"Utility/SafeSet.swift",
"Utility/ScramMap.swift",
"Utility/WeakSet.swift",
"Utility/XMLtoAttributes.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.