Build Information
Successful build of iOSMcuManagerLibrary, reference 1.10.1 (b60139
), with Swift 6.1 for macOS (SPM) on 19 Aug 2025 16:57:52 UTC.
Swift 6 data race errors: 13
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
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
90 | }
91 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:95:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
93 | func completedWrite(sequenceNumber: McuSequenceNumber) {
94 | lockingQueue.async {
95 | self.state[sequenceNumber] = nil
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
96 | }
97 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:101:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
99 | func onError(_ error: Error) {
100 | lockingQueue.async {
101 | self.state.forEach { _, value in
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
102 | value.writeLock.open(error)
103 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:109:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
107 | func onWriteError(sequenceNumber: McuSequenceNumber, error: Error) {
108 | lockingQueue.async {
109 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
110 | }
111 | }
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:39:27: warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
| |- warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'upperCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:40:27: warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
| |- warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'byteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:41:27: warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
| |- warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'prepend0x' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:42:27: warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
| |- warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'twoByteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
44 |
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:43:27: warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
| |- warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'reverseEndianness' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | public let rawValue: Int
[52/84] Compiling iOSMcuManagerLibrary McuMgrBleTransportWriteState.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:38:20: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
36 | lockingQueue.async {
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
40 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:39:86: warning: capture of 'lock' with non-sendable type 'ResultLock' in a '@Sendable' closure
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
| `- warning: capture of 'lock' with non-sendable type 'ResultLock' in a '@Sendable' closure
40 | }
41 | }
/Users/admin/builder/spi-builder-workspace/Source/Utils/ResultLock.swift:11:14: note: class 'ResultLock' does not conform to the 'Sendable' protocol
9 | public typealias ResultLockKey = String
10 |
11 | public class ResultLock {
| `- note: class 'ResultLock' does not conform to the 'Sendable' protocol
12 |
13 | private var semaphore: DispatchSemaphore
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:38:20: warning: implicit capture of 'self' requires that 'McuMgrBleTransportWriteState' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
36 | lockingQueue.async {
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleTransportWriteState' conforms to 'Sendable'; this is an error in the Swift 6 language mode
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
40 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:44:30: warning: capture of 'writeClosure' with non-sendable type '() -> Void' in a '@Sendable' closure
42 |
43 | func sharedLock(_ writeClosure: @escaping () -> Void) {
44 | lockingQueue.async { writeClosure() }
| |- warning: capture of 'writeClosure' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
45 | }
46 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:49:16: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
47 | func received(sequenceNumber: McuSequenceNumber, data: Data) {
48 | lockingQueue.async {
49 | if self.state[sequenceNumber]?.chunk == nil {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
50 | // If we do not have any current response data, this is the initial
51 | // packet in a potentially fragmented response. Get the expected
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:89:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
87 | func open(sequenceNumber: McuSequenceNumber, dueTo error: McuMgrTransportError) {
88 | lockingQueue.async {
89 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
90 | }
91 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:95:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
93 | func completedWrite(sequenceNumber: McuSequenceNumber) {
94 | lockingQueue.async {
95 | self.state[sequenceNumber] = nil
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
96 | }
97 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:101:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
99 | func onError(_ error: Error) {
100 | lockingQueue.async {
101 | self.state.forEach { _, value in
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
102 | value.writeLock.open(error)
103 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:109:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
107 | func onWriteError(sequenceNumber: McuSequenceNumber, error: Error) {
108 | lockingQueue.async {
109 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
110 | }
111 | }
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:39:27: warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
| |- warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'upperCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:40:27: warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
| |- warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'byteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:41:27: warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
| |- warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'prepend0x' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:42:27: warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
| |- warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'twoByteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
44 |
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:43:27: warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
| |- warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'reverseEndianness' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | public let rawValue: Int
[53/84] Compiling iOSMcuManagerLibrary CBOR+McuManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:38:20: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
36 | lockingQueue.async {
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
40 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:39:86: warning: capture of 'lock' with non-sendable type 'ResultLock' in a '@Sendable' closure
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
| `- warning: capture of 'lock' with non-sendable type 'ResultLock' in a '@Sendable' closure
40 | }
41 | }
/Users/admin/builder/spi-builder-workspace/Source/Utils/ResultLock.swift:11:14: note: class 'ResultLock' does not conform to the 'Sendable' protocol
9 | public typealias ResultLockKey = String
10 |
11 | public class ResultLock {
| `- note: class 'ResultLock' does not conform to the 'Sendable' protocol
12 |
13 | private var semaphore: DispatchSemaphore
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:38:20: warning: implicit capture of 'self' requires that 'McuMgrBleTransportWriteState' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
36 | lockingQueue.async {
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleTransportWriteState' conforms to 'Sendable'; this is an error in the Swift 6 language mode
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
40 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:44:30: warning: capture of 'writeClosure' with non-sendable type '() -> Void' in a '@Sendable' closure
42 |
43 | func sharedLock(_ writeClosure: @escaping () -> Void) {
44 | lockingQueue.async { writeClosure() }
| |- warning: capture of 'writeClosure' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
45 | }
46 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:49:16: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
47 | func received(sequenceNumber: McuSequenceNumber, data: Data) {
48 | lockingQueue.async {
49 | if self.state[sequenceNumber]?.chunk == nil {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
50 | // If we do not have any current response data, this is the initial
51 | // packet in a potentially fragmented response. Get the expected
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:89:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
87 | func open(sequenceNumber: McuSequenceNumber, dueTo error: McuMgrTransportError) {
88 | lockingQueue.async {
89 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
90 | }
91 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:95:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
93 | func completedWrite(sequenceNumber: McuSequenceNumber) {
94 | lockingQueue.async {
95 | self.state[sequenceNumber] = nil
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
96 | }
97 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:101:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
99 | func onError(_ error: Error) {
100 | lockingQueue.async {
101 | self.state.forEach { _, value in
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
102 | value.writeLock.open(error)
103 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:109:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
107 | func onWriteError(sequenceNumber: McuSequenceNumber, error: Error) {
108 | lockingQueue.async {
109 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
110 | }
111 | }
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:39:27: warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
| |- warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'upperCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:40:27: warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
| |- warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'byteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:41:27: warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
| |- warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'prepend0x' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:42:27: warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
| |- warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'twoByteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
44 |
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:43:27: warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
| |- warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'reverseEndianness' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | public let rawValue: Int
[54/84] Compiling iOSMcuManagerLibrary Data+McuManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:38:20: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
36 | lockingQueue.async {
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
40 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:39:86: warning: capture of 'lock' with non-sendable type 'ResultLock' in a '@Sendable' closure
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
| `- warning: capture of 'lock' with non-sendable type 'ResultLock' in a '@Sendable' closure
40 | }
41 | }
/Users/admin/builder/spi-builder-workspace/Source/Utils/ResultLock.swift:11:14: note: class 'ResultLock' does not conform to the 'Sendable' protocol
9 | public typealias ResultLockKey = String
10 |
11 | public class ResultLock {
| `- note: class 'ResultLock' does not conform to the 'Sendable' protocol
12 |
13 | private var semaphore: DispatchSemaphore
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:38:20: warning: implicit capture of 'self' requires that 'McuMgrBleTransportWriteState' conforms to 'Sendable'; this is an error in the Swift 6 language mode
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
36 | lockingQueue.async {
37 | // Either the Lock for a Sequence Number is Open, or there's no state for it.
38 | assert(self.state[sequenceNumber]?.writeLock.isOpen ?? true)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleTransportWriteState' conforms to 'Sendable'; this is an error in the Swift 6 language mode
39 | self.state[sequenceNumber] = (sequenceNumber: sequenceNumber, writeLock: lock, nil, nil)
40 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:44:30: warning: capture of 'writeClosure' with non-sendable type '() -> Void' in a '@Sendable' closure
42 |
43 | func sharedLock(_ writeClosure: @escaping () -> Void) {
44 | lockingQueue.async { writeClosure() }
| |- warning: capture of 'writeClosure' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
45 | }
46 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:49:16: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
47 | func received(sequenceNumber: McuSequenceNumber, data: Data) {
48 | lockingQueue.async {
49 | if self.state[sequenceNumber]?.chunk == nil {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
50 | // If we do not have any current response data, this is the initial
51 | // packet in a potentially fragmented response. Get the expected
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:89:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
87 | func open(sequenceNumber: McuSequenceNumber, dueTo error: McuMgrTransportError) {
88 | lockingQueue.async {
89 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
90 | }
91 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:95:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
93 | func completedWrite(sequenceNumber: McuSequenceNumber) {
94 | lockingQueue.async {
95 | self.state[sequenceNumber] = nil
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
96 | }
97 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:101:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
99 | func onError(_ error: Error) {
100 | lockingQueue.async {
101 | self.state.forEach { _, value in
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
102 | value.writeLock.open(error)
103 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransportWriteState.swift:109:13: warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
16 | // MARK: - McuMgrBleTransportWriteState
17 |
18 | final class McuMgrBleTransportWriteState {
| `- note: class 'McuMgrBleTransportWriteState' does not conform to the 'Sendable' protocol
19 |
20 | // MARK: - Private Properties
:
107 | func onWriteError(sequenceNumber: McuSequenceNumber, error: Error) {
108 | lockingQueue.async {
109 | self.state[sequenceNumber]?.writeLock.open(error)
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransportWriteState' in a '@Sendable' closure
110 | }
111 | }
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:39:27: warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
| |- warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'upperCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:40:27: warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
| |- warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'byteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:41:27: warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
| |- warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'prepend0x' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:42:27: warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
| |- warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'twoByteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
44 |
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:43:27: warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
| |- warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'reverseEndianness' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | public let rawValue: Int
[55/84] Compiling iOSMcuManagerLibrary McuMgrSuitManifest.swift
[56/84] Compiling iOSMcuManagerLibrary McuMgrTransport.swift
[57/84] Compiling iOSMcuManagerLibrary McuMgrUploadPipeline.swift
[58/84] Compiling iOSMcuManagerLibrary String+McuManager.swift
[59/84] Compiling iOSMcuManagerLibrary BasicManager.swift
[60/84] Compiling iOSMcuManagerLibrary CrashManager.swift
[61/84] Compiling iOSMcuManagerLibrary FirmwareUpgradeController.swift
[62/84] Compiling iOSMcuManagerLibrary McuMgrHeader.swift
[63/84] Compiling iOSMcuManagerLibrary McuMgrImage.swift
[64/84] Compiling iOSMcuManagerLibrary McuMgrLogDelegate.swift
[65/84] Compiling iOSMcuManagerLibrary McuMgrManifest.swift
[66/84] Emitting module iOSMcuManagerLibrary
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:39:27: warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
| |- warning: static property 'upperCase' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'upperCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:40:27: warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
| |- warning: static property 'byteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'byteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:41:27: warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
| |- warning: static property 'prepend0x' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'prepend0x' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:42:27: warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
| |- warning: static property 'twoByteSpacing' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'twoByteSpacing' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
44 |
/Users/admin/builder/spi-builder-workspace/Source/Extensions/Data+McuManager.swift:43:27: warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
36 | // MARK: - Hex Encoding
37 |
38 | struct HexEncodingOptions: OptionSet {
| `- note: consider making struct 'HexEncodingOptions' conform to the 'Sendable' protocol
39 | public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
40 | public static let byteSpacing = HexEncodingOptions(rawValue: 1 << 1)
41 | public static let prepend0x = HexEncodingOptions(rawValue: 1 << 2)
42 | public static let twoByteSpacing = HexEncodingOptions(rawValue: 1 << 3)
43 | public static let reverseEndianness = HexEncodingOptions(rawValue: 1 << 4)
| |- warning: static property 'reverseEndianness' is not concurrency-safe because non-'Sendable' type 'Data.HexEncodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'reverseEndianness' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | public let rawValue: Int
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1250:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1248 | public enum FirmwareUpgradeError: Error, LocalizedError {
1249 | case unknown(String)
1250 | case invalidResponse(McuMgrResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1251 | case connectionFailedAfterReset
1252 | case untestedImageFound(image: Int, slot: Int)
/Users/admin/builder/spi-builder-workspace/Source/McuMgrResponse.swift:10:12: note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
8 | import SwiftCBOR
9 |
10 | open class McuMgrResponse: CBORMappable {
| `- note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
11 |
12 | //**************************************************************************
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:650:10: warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
648 |
649 | public enum SuitManagerError: Error, LocalizedError {
650 | case suitDelegateRequiredForResource(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
651 | case listRoleResponseMismatch(roleCount: Int, responseCount: Int)
652 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:420:10: warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
418 | public enum McuMgrError: Error, LocalizedError {
419 | case returnCode(_ rc: McuMgrReturnCode)
420 | case groupCode(_ group: McuMgrGroupReturnCode)
| `- warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
421 |
422 | public var errorDescription: String? {
:
432 | // MARK: - McuMgrGroupReturnCode
433 |
434 | public class McuMgrGroupReturnCode: CBORMappable {
| `- note: class 'McuMgrGroupReturnCode' does not conform to the 'Sendable' protocol
435 |
436 | public var group: UInt64 = 0
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:23:14: warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
21 | enum BufferError: Error {
22 | case empty
23 | case invalidKey(_ key: Key)
| `- warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
24 | case noValueForKey(_ key: Key)
25 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:24:14: warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
22 | case empty
23 | case invalidKey(_ key: Key)
24 | case noValueForKey(_ key: Key)
| `- warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
25 | }
26 |
/Users/admin/builder/spi-builder-workspace/Source/McuMgrPackage.swift:94:14: warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
92 | case deniedAccessToScopedResource, notAValidDocument, unableToAccessCacheDirectory
93 | case manifestFileNotFound, manifestImageNotFound
94 | case resourceNotFound(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
95 |
96 | public var errorDescription: String? {
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:75:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
73 | didSet {
74 | DispatchQueue.main.async {
75 | self.notifyPeripheralDelegate()
| |- 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
76 | }
77 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:109:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
107 | didSet {
108 | DispatchQueue.main.async {
109 | self.notifyPeripheralDelegate()
| |- 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
110 | }
111 | }
[67/84] Compiling iOSMcuManagerLibrary StatsManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:650:10: warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
648 |
649 | public enum SuitManagerError: Error, LocalizedError {
650 | case suitDelegateRequiredForResource(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
651 | case listRoleResponseMismatch(roleCount: Int, responseCount: Int)
652 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:420:10: warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
418 | public enum McuMgrError: Error, LocalizedError {
419 | case returnCode(_ rc: McuMgrReturnCode)
420 | case groupCode(_ group: McuMgrGroupReturnCode)
| `- warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
421 |
422 | public var errorDescription: String? {
:
432 | // MARK: - McuMgrGroupReturnCode
433 |
434 | public class McuMgrGroupReturnCode: CBORMappable {
| `- note: class 'McuMgrGroupReturnCode' does not conform to the 'Sendable' protocol
435 |
436 | public var group: UInt64 = 0
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:23:14: warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
21 | enum BufferError: Error {
22 | case empty
23 | case invalidKey(_ key: Key)
| `- warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
24 | case noValueForKey(_ key: Key)
25 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:24:14: warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
22 | case empty
23 | case invalidKey(_ key: Key)
24 | case noValueForKey(_ key: Key)
| `- warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
25 | }
26 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:531:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
529 | let waitTime: DispatchTimeInterval = .milliseconds(Self.POLLING_INTERVAL_MS)
530 | DispatchQueue.main.asyncAfter(deadline: .now() + waitTime) { [unowned self] in
531 | self.pollAttempts += 1
| |- 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
532 | self.poll(callback: self.pollingCallback)
533 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:30: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:30: warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'key' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:35: warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'value' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
[68/84] Compiling iOSMcuManagerLibrary SuitManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:650:10: warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
648 |
649 | public enum SuitManagerError: Error, LocalizedError {
650 | case suitDelegateRequiredForResource(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
651 | case listRoleResponseMismatch(roleCount: Int, responseCount: Int)
652 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:420:10: warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
418 | public enum McuMgrError: Error, LocalizedError {
419 | case returnCode(_ rc: McuMgrReturnCode)
420 | case groupCode(_ group: McuMgrGroupReturnCode)
| `- warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
421 |
422 | public var errorDescription: String? {
:
432 | // MARK: - McuMgrGroupReturnCode
433 |
434 | public class McuMgrGroupReturnCode: CBORMappable {
| `- note: class 'McuMgrGroupReturnCode' does not conform to the 'Sendable' protocol
435 |
436 | public var group: UInt64 = 0
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:23:14: warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
21 | enum BufferError: Error {
22 | case empty
23 | case invalidKey(_ key: Key)
| `- warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
24 | case noValueForKey(_ key: Key)
25 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:24:14: warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
22 | case empty
23 | case invalidKey(_ key: Key)
24 | case noValueForKey(_ key: Key)
| `- warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
25 | }
26 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:531:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
529 | let waitTime: DispatchTimeInterval = .milliseconds(Self.POLLING_INTERVAL_MS)
530 | DispatchQueue.main.asyncAfter(deadline: .now() + waitTime) { [unowned self] in
531 | self.pollAttempts += 1
| |- 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
532 | self.poll(callback: self.pollingCallback)
533 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:30: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:30: warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'key' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:35: warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'value' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
[69/84] Compiling iOSMcuManagerLibrary McuManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:650:10: warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
648 |
649 | public enum SuitManagerError: Error, LocalizedError {
650 | case suitDelegateRequiredForResource(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
651 | case listRoleResponseMismatch(roleCount: Int, responseCount: Int)
652 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:420:10: warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
418 | public enum McuMgrError: Error, LocalizedError {
419 | case returnCode(_ rc: McuMgrReturnCode)
420 | case groupCode(_ group: McuMgrGroupReturnCode)
| `- warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
421 |
422 | public var errorDescription: String? {
:
432 | // MARK: - McuMgrGroupReturnCode
433 |
434 | public class McuMgrGroupReturnCode: CBORMappable {
| `- note: class 'McuMgrGroupReturnCode' does not conform to the 'Sendable' protocol
435 |
436 | public var group: UInt64 = 0
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:23:14: warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
21 | enum BufferError: Error {
22 | case empty
23 | case invalidKey(_ key: Key)
| `- warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
24 | case noValueForKey(_ key: Key)
25 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:24:14: warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
22 | case empty
23 | case invalidKey(_ key: Key)
24 | case noValueForKey(_ key: Key)
| `- warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
25 | }
26 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:531:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
529 | let waitTime: DispatchTimeInterval = .milliseconds(Self.POLLING_INTERVAL_MS)
530 | DispatchQueue.main.asyncAfter(deadline: .now() + waitTime) { [unowned self] in
531 | self.pollAttempts += 1
| |- 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
532 | self.poll(callback: self.pollingCallback)
533 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:30: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:30: warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'key' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:35: warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'value' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
[70/84] Compiling iOSMcuManagerLibrary McuMgrCallbackOoOBuffer.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:650:10: warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
648 |
649 | public enum SuitManagerError: Error, LocalizedError {
650 | case suitDelegateRequiredForResource(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'suitDelegateRequiredForResource' of 'Sendable'-conforming enum 'SuitManagerError' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
651 | case listRoleResponseMismatch(roleCount: Int, responseCount: Int)
652 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:420:10: warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
418 | public enum McuMgrError: Error, LocalizedError {
419 | case returnCode(_ rc: McuMgrReturnCode)
420 | case groupCode(_ group: McuMgrGroupReturnCode)
| `- warning: associated value 'groupCode' of 'Sendable'-conforming enum 'McuMgrError' has non-sendable type 'McuMgrGroupReturnCode'; this is an error in the Swift 6 language mode
421 |
422 | public var errorDescription: String? {
:
432 | // MARK: - McuMgrGroupReturnCode
433 |
434 | public class McuMgrGroupReturnCode: CBORMappable {
| `- note: class 'McuMgrGroupReturnCode' does not conform to the 'Sendable' protocol
435 |
436 | public var group: UInt64 = 0
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:23:14: warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
21 | enum BufferError: Error {
22 | case empty
23 | case invalidKey(_ key: Key)
| `- warning: associated value 'invalidKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
24 | case noValueForKey(_ key: Key)
25 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:24:14: warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
15 | <Key, Value> Out-of-Order Buffer.
16 | */
17 | public struct McuMgrCallbackOoOBuffer<Key: Hashable & Comparable, Value> {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
18 |
19 | // MARK: BufferError
:
22 | case empty
23 | case invalidKey(_ key: Key)
24 | case noValueForKey(_ key: Key)
| `- warning: associated value 'noValueForKey' of 'Sendable'-conforming enum 'BufferError' has non-sendable type 'Key'; this is an error in the Swift 6 language mode
25 | }
26 |
/Users/admin/builder/spi-builder-workspace/Source/Managers/SuitManager.swift:531:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
529 | let waitTime: DispatchTimeInterval = .milliseconds(Self.POLLING_INTERVAL_MS)
530 | DispatchQueue.main.asyncAfter(deadline: .now() + waitTime) { [unowned self] in
531 | self.pollAttempts += 1
| |- 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
532 | self.poll(callback: self.pollingCallback)
533 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuManager.swift:146:30: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
144 | } catch let robBufferError {
145 | DispatchQueue.main.async {
146 | callback(response, robBufferError)
| |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
147 | }
148 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:21: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:30: warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'key' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'key' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Source/McuMgrCallbackOoOBuffer.swift:122:35: warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
120 |
121 | DispatchQueue.main.async {
122 | callback(key, value)
| |- warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'value' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
[71/84] Compiling iOSMcuManagerLibrary McuMgrBleROBWriteBuffer.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:13: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:122: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
8 | import Foundation
9 | import Dispatch
10 | import CoreBluetooth
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
11 |
12 | // MARK: - McuMgrBleROBWriteBuffer
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:150: warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
55 | */
56 | NS_CLASS_AVAILABLE(10_7, 5_0)
57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
| `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
58 |
59 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:176: warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| |- warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:89:71: warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
87 | window.sort(by: <)
88 | #if DEBUG
89 | log(msg: "↵ Enqueued [Seq. No: \(sequenceNumber)] {WR \(writeNumber)}.", atLevel: .debug)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
90 | #endif
91 | writeNumber = writeNumber == .max ? 0 : writeNumber + 1
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:102:19: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
100 | // We only want to continue past this guard when a write was paused and
101 | // thus added to `pausedWrites`.
102 | guard pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
103 | pausedWritesWithoutResponse = false
104 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:109:43: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
107 | let resumeWrite: Write! = window.first
108 | unsafe_logResume(resumeWrite)
109 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
110 | }
111 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:125:31: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
123 | // If after 15ms we have not received peripheralIsReady(), override.
124 | lock.asyncAfter(deadline: .now() + .milliseconds(Self.CONNECTION_BUFFER_WAIT_TIME_MS)) { [weak self] in
125 | guard let self, pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:128:51: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
128 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
129 | }
130 | return
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:212:24: warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
35 | // MARK: - McuMgrBleTransport
36 |
37 | public class McuMgrBleTransport: NSObject {
| `- note: class 'McuMgrBleTransport' does not conform to the 'Sendable' protocol
38 |
39 | /// The CBPeripheral for this transport to communicate with.
:
210 | operationQueue.addOperation {
211 | for i in 0..<McuMgrBleTransportConstant.MAX_RETRIES {
212 | switch self._send(data: data, timeoutInSeconds: timeout) {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
213 | case .failure(McuMgrTransportError.waitAndRetry):
214 | let waitInterval = min(timeout, McuMgrBleTransportConstant.WAIT_AND_RETRY_INTERVAL)
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:229:25: warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
227 | self.log(msg: error.localizedDescription, atLevel: .error)
228 | DispatchQueue.main.async {
229 | callback(nil, error)
| |- warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
230 | }
231 | return
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:75:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
73 | didSet {
74 | DispatchQueue.main.async {
75 | self.notifyPeripheralDelegate()
| |- 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
76 | }
77 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:109:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
107 | didSet {
108 | DispatchQueue.main.async {
109 | self.notifyPeripheralDelegate()
| |- 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
110 | }
111 | }
[72/84] Compiling iOSMcuManagerLibrary McuMgrBleTransport+CBCentralManagerDelegate.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:13: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:122: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
8 | import Foundation
9 | import Dispatch
10 | import CoreBluetooth
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
11 |
12 | // MARK: - McuMgrBleROBWriteBuffer
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:150: warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
55 | */
56 | NS_CLASS_AVAILABLE(10_7, 5_0)
57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
| `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
58 |
59 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:176: warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| |- warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:89:71: warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
87 | window.sort(by: <)
88 | #if DEBUG
89 | log(msg: "↵ Enqueued [Seq. No: \(sequenceNumber)] {WR \(writeNumber)}.", atLevel: .debug)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
90 | #endif
91 | writeNumber = writeNumber == .max ? 0 : writeNumber + 1
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:102:19: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
100 | // We only want to continue past this guard when a write was paused and
101 | // thus added to `pausedWrites`.
102 | guard pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
103 | pausedWritesWithoutResponse = false
104 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:109:43: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
107 | let resumeWrite: Write! = window.first
108 | unsafe_logResume(resumeWrite)
109 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
110 | }
111 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:125:31: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
123 | // If after 15ms we have not received peripheralIsReady(), override.
124 | lock.asyncAfter(deadline: .now() + .milliseconds(Self.CONNECTION_BUFFER_WAIT_TIME_MS)) { [weak self] in
125 | guard let self, pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:128:51: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
128 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
129 | }
130 | return
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:212:24: warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
35 | // MARK: - McuMgrBleTransport
36 |
37 | public class McuMgrBleTransport: NSObject {
| `- note: class 'McuMgrBleTransport' does not conform to the 'Sendable' protocol
38 |
39 | /// The CBPeripheral for this transport to communicate with.
:
210 | operationQueue.addOperation {
211 | for i in 0..<McuMgrBleTransportConstant.MAX_RETRIES {
212 | switch self._send(data: data, timeoutInSeconds: timeout) {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
213 | case .failure(McuMgrTransportError.waitAndRetry):
214 | let waitInterval = min(timeout, McuMgrBleTransportConstant.WAIT_AND_RETRY_INTERVAL)
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:229:25: warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
227 | self.log(msg: error.localizedDescription, atLevel: .error)
228 | DispatchQueue.main.async {
229 | callback(nil, error)
| |- warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
230 | }
231 | return
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:75:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
73 | didSet {
74 | DispatchQueue.main.async {
75 | self.notifyPeripheralDelegate()
| |- 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
76 | }
77 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:109:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
107 | didSet {
108 | DispatchQueue.main.async {
109 | self.notifyPeripheralDelegate()
| |- 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
110 | }
111 | }
[73/84] Compiling iOSMcuManagerLibrary McuMgrBleTransport+CBPeripheralDelegate.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:13: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:122: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
8 | import Foundation
9 | import Dispatch
10 | import CoreBluetooth
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
11 |
12 | // MARK: - McuMgrBleROBWriteBuffer
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:150: warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
55 | */
56 | NS_CLASS_AVAILABLE(10_7, 5_0)
57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
| `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
58 |
59 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:176: warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| |- warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:89:71: warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
87 | window.sort(by: <)
88 | #if DEBUG
89 | log(msg: "↵ Enqueued [Seq. No: \(sequenceNumber)] {WR \(writeNumber)}.", atLevel: .debug)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
90 | #endif
91 | writeNumber = writeNumber == .max ? 0 : writeNumber + 1
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:102:19: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
100 | // We only want to continue past this guard when a write was paused and
101 | // thus added to `pausedWrites`.
102 | guard pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
103 | pausedWritesWithoutResponse = false
104 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:109:43: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
107 | let resumeWrite: Write! = window.first
108 | unsafe_logResume(resumeWrite)
109 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
110 | }
111 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:125:31: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
123 | // If after 15ms we have not received peripheralIsReady(), override.
124 | lock.asyncAfter(deadline: .now() + .milliseconds(Self.CONNECTION_BUFFER_WAIT_TIME_MS)) { [weak self] in
125 | guard let self, pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:128:51: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
128 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
129 | }
130 | return
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:212:24: warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
35 | // MARK: - McuMgrBleTransport
36 |
37 | public class McuMgrBleTransport: NSObject {
| `- note: class 'McuMgrBleTransport' does not conform to the 'Sendable' protocol
38 |
39 | /// The CBPeripheral for this transport to communicate with.
:
210 | operationQueue.addOperation {
211 | for i in 0..<McuMgrBleTransportConstant.MAX_RETRIES {
212 | switch self._send(data: data, timeoutInSeconds: timeout) {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
213 | case .failure(McuMgrTransportError.waitAndRetry):
214 | let waitInterval = min(timeout, McuMgrBleTransportConstant.WAIT_AND_RETRY_INTERVAL)
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:229:25: warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
227 | self.log(msg: error.localizedDescription, atLevel: .error)
228 | DispatchQueue.main.async {
229 | callback(nil, error)
| |- warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
230 | }
231 | return
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:75:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
73 | didSet {
74 | DispatchQueue.main.async {
75 | self.notifyPeripheralDelegate()
| |- 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
76 | }
77 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:109:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
107 | didSet {
108 | DispatchQueue.main.async {
109 | self.notifyPeripheralDelegate()
| |- 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
110 | }
111 | }
[74/84] Compiling iOSMcuManagerLibrary McuMgrBleTransport.swift
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:13: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:122: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
8 | import Foundation
9 | import Dispatch
10 | import CoreBluetooth
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
11 |
12 | // MARK: - McuMgrBleROBWriteBuffer
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:150: warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| `- warning: capture of 'characteristic' with non-sendable type 'CBCharacteristic' in a '@Sendable' closure
87 | window.sort(by: <)
88 | #if DEBUG
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
55 | */
56 | NS_CLASS_AVAILABLE(10_7, 5_0)
57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
| `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
58 |
59 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:86:176: warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
84 | // This lock guarantees parallel writes are not interleaved with each other.
85 | lock.async { [unowned self] in
86 | window.append(contentsOf: Write.split(writeNumber, sequenceNumber: sequenceNumber, chunks: data, peripheral: peripheral, characteristic: characteristic, callback: callback))
| |- warning: capture of 'callback' with non-sendable type '(Data?, McuMgrTransportError?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
87 | window.sort(by: <)
88 | #if DEBUG
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:89:71: warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
87 | window.sort(by: <)
88 | #if DEBUG
89 | log(msg: "↵ Enqueued [Seq. No: \(sequenceNumber)] {WR \(writeNumber)}.", atLevel: .debug)
| `- warning: implicit capture of 'self' requires that 'McuMgrBleROBWriteBuffer' conforms to 'Sendable'; this is an error in the Swift 6 language mode
90 | #endif
91 | writeNumber = writeNumber == .max ? 0 : writeNumber + 1
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:102:19: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
100 | // We only want to continue past this guard when a write was paused and
101 | // thus added to `pausedWrites`.
102 | guard pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer' in a '@Sendable' closure
103 | pausedWritesWithoutResponse = false
104 |
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:109:43: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
107 | let resumeWrite: Write! = window.first
108 | unsafe_logResume(resumeWrite)
109 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
110 | }
111 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:125:31: warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
20 | understand anything.
21 | */
22 | internal final class McuMgrBleROBWriteBuffer {
| `- note: class 'McuMgrBleROBWriteBuffer' does not conform to the 'Sendable' protocol
23 |
24 | /**
:
123 | // If after 15ms we have not received peripheralIsReady(), override.
124 | lock.asyncAfter(deadline: .now() + .milliseconds(Self.CONNECTION_BUFFER_WAIT_TIME_MS)) { [weak self] in
125 | guard let self, pausedWritesWithoutResponse else { return }
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleROBWriteBuffer?' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleROBWriteBuffer.swift:128:51: warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
126 | log(msg: "! Override Peripheral Ready For Write Without Response", atLevel: .debug)
127 | overridePeripheralNotReadyForWriteWithoutResponse = true
128 | unsafe_writeThroughWindow(to: peripheral)
| `- warning: capture of 'peripheral' with non-sendable type 'CBPeripheral' in a '@Sendable' closure
129 | }
130 | return
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBPeripheral.h:55:28: note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
53 | */
54 | NS_CLASS_AVAILABLE(10_7, 5_0)
55 | CB_EXTERN_CLASS @interface CBPeripheral : CBPeer
| `- note: class 'CBPeripheral' does not conform to the 'Sendable' protocol
56 |
57 | /*!
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:212:24: warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
35 | // MARK: - McuMgrBleTransport
36 |
37 | public class McuMgrBleTransport: NSObject {
| `- note: class 'McuMgrBleTransport' does not conform to the 'Sendable' protocol
38 |
39 | /// The CBPeripheral for this transport to communicate with.
:
210 | operationQueue.addOperation {
211 | for i in 0..<McuMgrBleTransportConstant.MAX_RETRIES {
212 | switch self._send(data: data, timeoutInSeconds: timeout) {
| `- warning: capture of 'self' with non-sendable type 'McuMgrBleTransport' in a '@Sendable' closure
213 | case .failure(McuMgrTransportError.waitAndRetry):
214 | let waitInterval = min(timeout, McuMgrBleTransportConstant.WAIT_AND_RETRY_INTERVAL)
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:229:25: warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
227 | self.log(msg: error.localizedDescription, atLevel: .error)
228 | DispatchQueue.main.async {
229 | callback(nil, error)
| |- warning: capture of 'callback' with non-sendable type 'McuMgrCallback<T>' (aka '(Optional<T>, Optional<any Error>) -> ()') in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
230 | }
231 | return
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:75:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
73 | didSet {
74 | DispatchQueue.main.async {
75 | self.notifyPeripheralDelegate()
| |- 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
76 | }
77 | }
/Users/admin/builder/spi-builder-workspace/Source/Bluetooth/McuMgrBleTransport.swift:109:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
107 | didSet {
108 | DispatchQueue.main.async {
109 | self.notifyPeripheralDelegate()
| |- 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
110 | }
111 | }
[75/84] Compiling iOSMcuManagerLibrary CBOR+String.swift
[76/84] Compiling iOSMcuManagerLibrary ResultLock.swift
[77/84] Compiling iOSMcuManagerLibrary UTI.swift
[78/84] Compiling iOSMcuManagerLibrary McuMgrPackage.swift
/Users/admin/builder/spi-builder-workspace/Source/McuMgrPackage.swift:94:14: warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
92 | case deniedAccessToScopedResource, notAValidDocument, unableToAccessCacheDirectory
93 | case manifestFileNotFound, manifestImageNotFound
94 | case resourceNotFound(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
95 |
96 | public var errorDescription: String? {
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
[79/84] Compiling iOSMcuManagerLibrary McuMgrResponse.swift
/Users/admin/builder/spi-builder-workspace/Source/McuMgrPackage.swift:94:14: warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
92 | case deniedAccessToScopedResource, notAValidDocument, unableToAccessCacheDirectory
93 | case manifestFileNotFound, manifestImageNotFound
94 | case resourceNotFound(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
95 |
96 | public var errorDescription: String? {
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
[80/84] Compiling iOSMcuManagerLibrary McuMgrSuitEnvelope.swift
/Users/admin/builder/spi-builder-workspace/Source/McuMgrPackage.swift:94:14: warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
92 | case deniedAccessToScopedResource, notAValidDocument, unableToAccessCacheDirectory
93 | case manifestFileNotFound, manifestImageNotFound
94 | case resourceNotFound(_ resource: FirmwareUpgradeResource)
| `- warning: associated value 'resourceNotFound' of 'Sendable'-conforming enum 'Error' has non-sendable type 'FirmwareUpgradeResource'; this is an error in the Swift 6 language mode
95 |
96 | public var errorDescription: String? {
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeController.swift:38:13: note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
36 | // MARK: FirmwareUpgradeResource
37 |
38 | public enum FirmwareUpgradeResource: CustomStringConvertible {
| `- note: consider making enum 'FirmwareUpgradeResource' conform to the 'Sendable' protocol
39 | case file(name: String)
40 |
[81/84] Compiling iOSMcuManagerLibrary FirmwareUpgradeManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1250:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1248 | public enum FirmwareUpgradeError: Error, LocalizedError {
1249 | case unknown(String)
1250 | case invalidResponse(McuMgrResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1251 | case connectionFailedAfterReset
1252 | case untestedImageFound(image: Int, slot: Int)
/Users/admin/builder/spi-builder-workspace/Source/McuMgrResponse.swift:10:12: note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
8 | import SwiftCBOR
9 |
10 | open class McuMgrResponse: CBORMappable {
| `- note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
11 |
12 | //**************************************************************************
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- 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
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:61: warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'previousState' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:80: warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'state' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:328:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
326 | paused = false
327 | DispatchQueue.main.async { [weak self] in
328 | self?.delegate?.upgradeDidComplete()
| |- 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
329 | // Release cyclic reference.
330 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:241:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
239 | // Allow Library Apps to show 100% Progress in this case.
240 | DispatchQueue.main.async { [weak self] in
241 | self?.delegate?.uploadProgressDidChange(bytesSent: 100, imageSize: 100,
| |- 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
242 | timestamp: Date())
243 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- 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
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:53: warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'tmp' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:602:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
600 | DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { [weak self] in
601 | // Validation successful, begin with image upload.
602 | self?.upload()
| |- 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
603 | }
604 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1001:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
999 | self.log(msg: "Waiting \(Int(configuration.estimatedSwapTime)) seconds reconnecting...", atLevel: .info)
1000 | DispatchQueue.main.asyncAfter(deadline: .now() + remainingTime) { [weak self] in
1001 | self?.log(msg: "Reconnecting...", atLevel: .info)
| |- 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
1002 | self?.reconnect()
1003 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1140:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1138 |
1139 | DispatchQueue.main.async { [weak self] in
1140 | self?.delegate?.uploadProgressDidChange(bytesSent: bytesSent, imageSize: imageSize, timestamp: timestamp)
| |- 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
1141 | }
1142 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1151:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1149 | public func uploadDidCancel() {
1150 | DispatchQueue.main.async { [weak self] in
1151 | self?.delegate?.upgradeDidCancel(state: .none)
| |- 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
1152 | }
1153 | state = .none
[82/84] Compiling iOSMcuManagerLibrary DefaultManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1250:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1248 | public enum FirmwareUpgradeError: Error, LocalizedError {
1249 | case unknown(String)
1250 | case invalidResponse(McuMgrResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1251 | case connectionFailedAfterReset
1252 | case untestedImageFound(image: Int, slot: Int)
/Users/admin/builder/spi-builder-workspace/Source/McuMgrResponse.swift:10:12: note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
8 | import SwiftCBOR
9 |
10 | open class McuMgrResponse: CBORMappable {
| `- note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
11 |
12 | //**************************************************************************
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- 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
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:61: warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'previousState' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:80: warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'state' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:328:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
326 | paused = false
327 | DispatchQueue.main.async { [weak self] in
328 | self?.delegate?.upgradeDidComplete()
| |- 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
329 | // Release cyclic reference.
330 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:241:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
239 | // Allow Library Apps to show 100% Progress in this case.
240 | DispatchQueue.main.async { [weak self] in
241 | self?.delegate?.uploadProgressDidChange(bytesSent: 100, imageSize: 100,
| |- 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
242 | timestamp: Date())
243 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- 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
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:53: warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'tmp' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:602:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
600 | DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { [weak self] in
601 | // Validation successful, begin with image upload.
602 | self?.upload()
| |- 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
603 | }
604 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1001:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
999 | self.log(msg: "Waiting \(Int(configuration.estimatedSwapTime)) seconds reconnecting...", atLevel: .info)
1000 | DispatchQueue.main.asyncAfter(deadline: .now() + remainingTime) { [weak self] in
1001 | self?.log(msg: "Reconnecting...", atLevel: .info)
| |- 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
1002 | self?.reconnect()
1003 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1140:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1138 |
1139 | DispatchQueue.main.async { [weak self] in
1140 | self?.delegate?.uploadProgressDidChange(bytesSent: bytesSent, imageSize: imageSize, timestamp: timestamp)
| |- 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
1141 | }
1142 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1151:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1149 | public func uploadDidCancel() {
1150 | DispatchQueue.main.async { [weak self] in
1151 | self?.delegate?.upgradeDidCancel(state: .none)
| |- 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
1152 | }
1153 | state = .none
[83/84] Compiling iOSMcuManagerLibrary FileSystemManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1250:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1248 | public enum FirmwareUpgradeError: Error, LocalizedError {
1249 | case unknown(String)
1250 | case invalidResponse(McuMgrResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1251 | case connectionFailedAfterReset
1252 | case untestedImageFound(image: Int, slot: Int)
/Users/admin/builder/spi-builder-workspace/Source/McuMgrResponse.swift:10:12: note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
8 | import SwiftCBOR
9 |
10 | open class McuMgrResponse: CBORMappable {
| `- note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
11 |
12 | //**************************************************************************
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- 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
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:61: warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'previousState' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:80: warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'state' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:328:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
326 | paused = false
327 | DispatchQueue.main.async { [weak self] in
328 | self?.delegate?.upgradeDidComplete()
| |- 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
329 | // Release cyclic reference.
330 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:241:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
239 | // Allow Library Apps to show 100% Progress in this case.
240 | DispatchQueue.main.async { [weak self] in
241 | self?.delegate?.uploadProgressDidChange(bytesSent: 100, imageSize: 100,
| |- 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
242 | timestamp: Date())
243 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- 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
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:53: warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'tmp' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:602:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
600 | DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { [weak self] in
601 | // Validation successful, begin with image upload.
602 | self?.upload()
| |- 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
603 | }
604 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1001:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
999 | self.log(msg: "Waiting \(Int(configuration.estimatedSwapTime)) seconds reconnecting...", atLevel: .info)
1000 | DispatchQueue.main.asyncAfter(deadline: .now() + remainingTime) { [weak self] in
1001 | self?.log(msg: "Reconnecting...", atLevel: .info)
| |- 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
1002 | self?.reconnect()
1003 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1140:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1138 |
1139 | DispatchQueue.main.async { [weak self] in
1140 | self?.delegate?.uploadProgressDidChange(bytesSent: bytesSent, imageSize: imageSize, timestamp: timestamp)
| |- 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
1141 | }
1142 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1151:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1149 | public func uploadDidCancel() {
1150 | DispatchQueue.main.async { [weak self] in
1151 | self?.delegate?.upgradeDidCancel(state: .none)
| |- 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
1152 | }
1153 | state = .none
[84/84] Compiling iOSMcuManagerLibrary ImageManager.swift
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1250:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1248 | public enum FirmwareUpgradeError: Error, LocalizedError {
1249 | case unknown(String)
1250 | case invalidResponse(McuMgrResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'FirmwareUpgradeError' has non-sendable type 'McuMgrResponse'; this is an error in the Swift 6 language mode
1251 | case connectionFailedAfterReset
1252 | case untestedImageFound(image: Int, slot: Int)
/Users/admin/builder/spi-builder-workspace/Source/McuMgrResponse.swift:10:12: note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
8 | import SwiftCBOR
9 |
10 | open class McuMgrResponse: CBORMappable {
| `- note: class 'McuMgrResponse' does not conform to the 'Sendable' protocol
11 |
12 | //**************************************************************************
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- 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
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:61: warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'previousState' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'previousState' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:193:80: warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
191 | if state != previousState {
192 | DispatchQueue.main.async { [weak self] in
193 | self?.delegate?.upgradeStateDidChange(from: previousState, to: state)
| |- warning: sending 'state' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'state' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
194 | }
195 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:328:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
326 | paused = false
327 | DispatchQueue.main.async { [weak self] in
328 | self?.delegate?.upgradeDidComplete()
| |- 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
329 | // Release cyclic reference.
330 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:241:21: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
239 | // Allow Library Apps to show 100% Progress in this case.
240 | DispatchQueue.main.async { [weak self] in
241 | self?.delegate?.uploadProgressDidChange(bytesSent: 100, imageSize: 100,
| |- 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
242 | timestamp: Date())
243 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- 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
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:352:53: warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
350 | paused = false
351 | DispatchQueue.main.async { [weak self] in
352 | self?.delegate?.upgradeDidFail(inState: tmp, with: errorOverride)
| |- warning: sending 'tmp' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'tmp' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
353 | // Release cyclic reference.
354 | self?.cyclicReferenceHolder = nil
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:602:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
600 | DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { [weak self] in
601 | // Validation successful, begin with image upload.
602 | self?.upload()
| |- 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
603 | }
604 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1001:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
999 | self.log(msg: "Waiting \(Int(configuration.estimatedSwapTime)) seconds reconnecting...", atLevel: .info)
1000 | DispatchQueue.main.asyncAfter(deadline: .now() + remainingTime) { [weak self] in
1001 | self?.log(msg: "Reconnecting...", atLevel: .info)
| |- 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
1002 | self?.reconnect()
1003 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1140:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1138 |
1139 | DispatchQueue.main.async { [weak self] in
1140 | self?.delegate?.uploadProgressDidChange(bytesSent: bytesSent, imageSize: imageSize, timestamp: timestamp)
| |- 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
1141 | }
1142 | }
/Users/admin/builder/spi-builder-workspace/Source/Managers/DFU/FirmwareUpgradeManager.swift:1151:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
1149 | public func uploadDidCancel() {
1150 | DispatchQueue.main.async { [weak self] in
1151 | self?.delegate?.upgradeDidCancel(state: .none)
| |- 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
1152 | }
1153 | state = .none
Build complete! (11.53s)
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/Users/admin/builder/spi-builder-workspace/Source/PrivacyInfo.xcprivacy
Build complete.
{
"dependencies" : [
{
"identity" : "swiftcbor",
"requirement" : {
"exact" : [
"0.4.7"
]
},
"type" : "sourceControl",
"url" : "https://github.com/valpackett/SwiftCBOR.git"
},
{
"identity" : "zipfoundation",
"requirement" : {
"range" : [
{
"lower_bound" : "0.9.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/weichsel/ZIPFoundation.git"
}
],
"manifest_display_name" : "iOSMcuManagerLibrary",
"name" : "iOSMcuManagerLibrary",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "iOSMcuManagerLibrary",
"targets" : [
"iOSMcuManagerLibrary"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "iOSMcuManagerLibrary",
"module_type" : "SwiftTarget",
"name" : "iOSMcuManagerLibrary",
"path" : "Source",
"product_dependencies" : [
"SwiftCBOR",
"ZIPFoundation"
],
"product_memberships" : [
"iOSMcuManagerLibrary"
],
"sources" : [
"Bluetooth/McuMgrBleROBWriteBuffer.swift",
"Bluetooth/McuMgrBleTransport+CBCentralManagerDelegate.swift",
"Bluetooth/McuMgrBleTransport+CBPeripheralDelegate.swift",
"Bluetooth/McuMgrBleTransport.swift",
"Bluetooth/McuMgrBleTransportConfguration.swift",
"Bluetooth/McuMgrBleTransportWriteState.swift",
"Extensions/CBOR+McuManager.swift",
"Extensions/Data+McuManager.swift",
"Extensions/String+McuManager.swift",
"Managers/BasicManager.swift",
"Managers/CrashManager.swift",
"Managers/DFU/FirmwareUpgradeController.swift",
"Managers/DFU/FirmwareUpgradeManager.swift",
"Managers/DefaultManager.swift",
"Managers/FileSystemManager.swift",
"Managers/ImageManager.swift",
"Managers/LogManager.swift",
"Managers/RunTestManager.swift",
"Managers/SettingsManager.swift",
"Managers/ShellManager.swift",
"Managers/StatsManager.swift",
"Managers/SuitManager.swift",
"McuManager.swift",
"McuMgrCallbackOoOBuffer.swift",
"McuMgrHeader.swift",
"McuMgrImage.swift",
"McuMgrLogDelegate.swift",
"McuMgrManifest.swift",
"McuMgrPackage.swift",
"McuMgrResponse.swift",
"McuMgrSuitEnvelope.swift",
"McuMgrSuitManifest.swift",
"McuMgrTransport.swift",
"McuMgrUploadPipeline.swift",
"Utils/CBOR+String.swift",
"Utils/ResultLock.swift",
"Utils/UTI.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Done.