The Swift Package Index logo.Swift Package Index

Build Information

Successful build of iOS-BLE-Library, reference main (ac5a29), with Swift 6.1 for macOS (SPM) on 3 Apr 2026 15:54:36 UTC.

Swift 6 data race errors: 0

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

========================================
RunAll
========================================
Builder version: 4.69.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nordicsemi/IOS-BLE-Library.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/nordicsemi/IOS-BLE-Library
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at ac5a290 Merge pull request #57 from nordicsemi/readme
Cloned https://github.com/nordicsemi/IOS-BLE-Library.git
Revision (git rev-parse @):
ac5a2902d3b122ec91535d0d2f531fa6ae54962d
SUCCESS checkout https://github.com/nordicsemi/IOS-BLE-Library.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/nordicsemi/IOS-BLE-Library.git
https://github.com/nordicsemi/IOS-BLE-Library.git
{
  "dependencies" : [
    {
      "identity" : "ios-corebluetooth-mock",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "iOS-BLE-Library",
  "name" : "iOS-BLE-Library",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "iOS-BLE-Library",
      "targets" : [
        "iOS-BLE-Library"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "iOS-BLE-Library-Mock",
      "targets" : [
        "iOS-BLE-Library-Mock"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "iOS_BLE_Library_Mock",
      "module_type" : "SwiftTarget",
      "name" : "iOS-BLE-Library-Mock",
      "path" : "Sources/iOS-BLE-Library-Mock",
      "product_dependencies" : [
        "CoreBluetoothMock"
      ],
      "product_memberships" : [
        "iOS-BLE-Library-Mock"
      ],
      "sources" : [
        "Alias.swift",
        "CentralManager/CentralManager.swift",
        "CentralManager/Model/ScanResult.swift",
        "CentralManager/ReactiveCentralManagerDelegate.swift",
        "Peripheral/Peripheral+Writer.swift",
        "Peripheral/Peripheral.swift",
        "Peripheral/PeripheralError.swift",
        "Peripheral/ReactivePeripheralDelegate.swift",
        "Utilities/AdvertisementData.swift",
        "Utilities/AsyncCharacteristicData.swift",
        "Utilities/CBManagerState.swift",
        "Utilities/Extensions/CBManagerState+Ext.swift",
        "Utilities/Extensions/Data+Ext.swift.swift",
        "Utilities/Extensions/Publishers+Async.swift",
        "Utilities/Logger.swift",
        "Utilities/Publishers/ContinuationSubscriber.swift",
        "Utilities/Publishers/Publishers+Bluetooth.swift",
        "Utilities/Publishers/Publishers+Connectable.swift",
        "Utilities/Publishers/Publishers+FailablePrefix.swift.swift",
        "Utilities/Publishers/Publishers+GuestList.swift",
        "Utilities/Publishers/Publishers+Peripheral.swift",
        "Utilities/Queue.swift",
        "Utilities/RSSI.swift",
        "Utilities/UnimplementedError.swift"
      ],
      "target_dependencies" : [
        "iOS-BLE-Library"
      ],
      "type" : "library"
    },
    {
      "c99name" : "iOS_BLE_Library",
      "module_type" : "SwiftTarget",
      "name" : "iOS-BLE-Library",
      "path" : "Sources/iOS-BLE-Library",
      "product_memberships" : [
        "iOS-BLE-Library",
        "iOS-BLE-Library-Mock"
      ],
      "sources" : [
        "CentralManager/CentralManager.swift",
        "CentralManager/Model/ScanResult.swift",
        "CentralManager/ReactiveCentralManagerDelegate.swift",
        "Peripheral/Peripheral+Writer.swift",
        "Peripheral/Peripheral.swift",
        "Peripheral/PeripheralError.swift",
        "Peripheral/ReactivePeripheralDelegate.swift",
        "Utilities/AdvertisementData.swift",
        "Utilities/AsyncCharacteristicData.swift",
        "Utilities/CBManagerState.swift",
        "Utilities/Extensions/CBManagerState+Ext.swift",
        "Utilities/Extensions/Data+Ext.swift.swift",
        "Utilities/Extensions/Publishers+Async.swift",
        "Utilities/Logger.swift",
        "Utilities/Publishers/ContinuationSubscriber.swift",
        "Utilities/Publishers/Publishers+Bluetooth.swift",
        "Utilities/Publishers/Publishers+Connectable.swift",
        "Utilities/Publishers/Publishers+FailablePrefix.swift.swift",
        "Utilities/Publishers/Publishers+GuestList.swift",
        "Utilities/Queue.swift",
        "Utilities/RSSI.swift",
        "Utilities/UnimplementedError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Running build ...
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
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
Building for debugging...
[2/6] Write sources
[5/6] Write swift-version-2F0A5646E1D333AE.txt
[7/43] Emitting module iOS_BLE_Library
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:209:11: warning: check `connect` method
207 |
208 | extension CentralManager {
209 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
210 | 	/// Returns a list of the peripherals connected to the system whose
211 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:241:11: warning: Question: Should we throw an error if the scan is already running?
239 |
240 | extension CentralManager {
241 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
242 | 	/// Initiates a scan for peripherals with the specified services.
243 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Logger.swift:13:16: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | @available(iOS 14.0, macOS 11, watchOS 7.0, *)
12 | private struct Loggers {
13 |     static var loggers: [UUID : Logger] = [:]
   |                |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Publishers/Publishers+FailablePrefix.swift.swift:41:10: warning: Thread safety should be considered
 39 | }
 40 |
 41 | #warning("Thread safety should be considered")
    |          `- warning: Thread safety should be considered
 42 | extension Publishers.PrefixUntilOutputOrCompletion {
 43 | 	private final class Inner<Downstream: Subscriber>: Subscriber, Subscription
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:59:20: warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
57 | extension RSSI {
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
   |                    |- warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'outOfRange' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:60:20: warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
   |                    |- warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'practicalWorst' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:61:20: warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
   |                    |- warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'bad' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:62:20: warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
   |                    |- warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'ok' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
63 | 	public static let good = RSSI(integerLiteral: Const.good)
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:63:20: warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
   |                    |- warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'good' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
64 | }
65 |
[8/45] Compiling CoreBluetoothMock CBMPeripheralSpec.swift
[9/46] Compiling iOS_BLE_Library RSSI.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:59:20: warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
57 | extension RSSI {
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
   |                    |- warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'outOfRange' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:60:20: warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
   |                    |- warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'practicalWorst' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:61:20: warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
   |                    |- warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'bad' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:62:20: warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
   |                    |- warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'ok' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
63 | 	public static let good = RSSI(integerLiteral: Const.good)
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:63:20: warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
   |                    |- warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'good' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
64 | }
65 |
[10/46] Compiling iOS_BLE_Library UnimplementedError.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:59:20: warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
57 | extension RSSI {
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
   |                    |- warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'outOfRange' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:60:20: warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
   |                    |- warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'practicalWorst' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:61:20: warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
   |                    |- warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'bad' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:62:20: warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
   |                    |- warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'ok' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
63 | 	public static let good = RSSI(integerLiteral: Const.good)
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/RSSI.swift:63:20: warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
   |                    |- warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'good' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
64 | }
65 |
[11/46] Compiling iOS_BLE_Library CBManagerState+Ext.swift
[12/46] Compiling iOS_BLE_Library Data+Ext.swift.swift
[13/46] Compiling iOS_BLE_Library Publishers+Connectable.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Publishers/Publishers+FailablePrefix.swift.swift:41:10: warning: Thread safety should be considered
 39 | }
 40 |
 41 | #warning("Thread safety should be considered")
    |          `- warning: Thread safety should be considered
 42 | extension Publishers.PrefixUntilOutputOrCompletion {
 43 | 	private final class Inner<Downstream: Subscriber>: Subscriber, Subscription
[14/46] Compiling iOS_BLE_Library Publishers+FailablePrefix.swift.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Publishers/Publishers+FailablePrefix.swift.swift:41:10: warning: Thread safety should be considered
 39 | }
 40 |
 41 | #warning("Thread safety should be considered")
    |          `- warning: Thread safety should be considered
 42 | extension Publishers.PrefixUntilOutputOrCompletion {
 43 | 	private final class Inner<Downstream: Subscriber>: Subscriber, Subscription
[15/46] Compiling iOS_BLE_Library ContinuationSubscriber.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Publishers/ContinuationSubscriber.swift:52:16: warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
50 | 		}
51 | 		self.state = .terminated
52 | 		continuation.resume(returning: input)
   |                |- warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
   |                `- note: task-isolated 'input' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
53 |
54 | 		self.subscription?.cancel()
[16/46] Compiling iOS_BLE_Library Publishers+Bluetooth.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Publishers/ContinuationSubscriber.swift:52:16: warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
50 | 		}
51 | 		self.state = .terminated
52 | 		continuation.resume(returning: input)
   |                |- warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
   |                `- note: task-isolated 'input' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
53 |
54 | 		self.subscription?.cancel()
[17/46] Compiling CoreBluetoothMock CBMPeripheralDelegateProxy.swift
[18/46] Compiling CoreBluetoothMock CBMPeripheralPreview.swift
[19/46] Compiling iOS_BLE_Library Peripheral.swift
[20/46] Compiling iOS_BLE_Library PeripheralError.swift
[21/46] Compiling CoreBluetoothMock CBMPeripheralSpecDelegate.swift
[22/46] Compiling iOS_BLE_Library ReactivePeripheralDelegate.swift
[23/46] Compiling iOS_BLE_Library AdvertisementData.swift
[24/46] Compiling CoreBluetoothMock CBMAttributes.swift
[25/46] Compiling CoreBluetoothMock CBMCentralManager.swift
[26/46] Compiling iOS_BLE_Library ReactiveCentralManagerDelegate.swift
[27/46] Compiling iOS_BLE_Library Publishers+Async.swift
[28/46] Compiling iOS_BLE_Library Peripheral+Writer.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Peripheral/Peripheral.swift:46:23: warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 23 | }
 24 |
 25 | private class NativeObserver: Observer {
    |               `- note: class 'NativeObserver' does not conform to the 'Sendable' protocol
 26 | 	@objc private var peripheral: CoreBluetooth.CBPeripheral
 27 |
    :
 44 | 			[weak self] _, change in
 45 |             // TODO: Check threads
 46 |             guard let self else { return }
    |                       `- warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 47 |             self.publisher.send(self.peripheral.state)
 48 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Peripheral/Peripheral.swift:46:23: warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 23 | }
 24 |
 25 | private class NativeObserver: Observer {
    |               `- note: class 'NativeObserver' does not conform to the 'Sendable' protocol
 26 | 	@objc private var peripheral: CoreBluetooth.CBPeripheral
 27 |
    :
 44 | 			[weak self] _, change in
 45 |             // TODO: Check threads
 46 |             guard let self else { return }
    |                       `- warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 47 |             self.publisher.send(self.peripheral.state)
 48 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Peripheral/Peripheral.swift:46:23: warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 23 | }
 24 |
 25 | private class NativeObserver: Observer {
    |               `- note: class 'NativeObserver' does not conform to the 'Sendable' protocol
 26 | 	@objc private var peripheral: CoreBluetooth.CBPeripheral
 27 |
    :
 44 | 			[weak self] _, change in
 45 |             // TODO: Check threads
 46 |             guard let self else { return }
    |                       `- warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 47 |             self.publisher.send(self.peripheral.state)
 48 | 		}
[31/46] Compiling iOS_BLE_Library CentralManager.swift
[32/46] Compiling iOS_BLE_Library ScanResult.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:47:5: warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 45 | 			} onCancel: {
 46 | 				[inner] in
 47 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 48 | 			}
 49 | 		}
    :
 66 |
 67 | extension AsyncPublisher.Iterator {
 68 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
 69 | 		typealias Input = Upstream.Output
 70 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:180:5: warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
178 | 			} onCancel: {
179 | 				[inner] in
180 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
181 | 			}
182 | 		}
    :
200 | extension AsyncThrowingPublisher.Iterator {
201 |
202 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
203 | 		typealias Input = Upstream.Output
204 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Logger.swift:13:16: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | @available(iOS 14.0, macOS 11, watchOS 7.0, *)
12 | private struct Loggers {
13 |     static var loggers: [UUID : Logger] = [:]
   |                |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:111:17: warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
109 | 			let continuation = pending.removeFirst()
110 | 			lock.unlock()
111 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
112 | 			return .none
113 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:245:17: warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
243 | 			let continuation = pending.removeFirst()
244 | 			lock.unlock()
245 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
246 | 			return .none
247 | 		}
[36/46] Emitting module CoreBluetoothMock
[37/46] Compiling iOS_BLE_Library Logger.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:47:5: warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 45 | 			} onCancel: {
 46 | 				[inner] in
 47 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 48 | 			}
 49 | 		}
    :
 66 |
 67 | extension AsyncPublisher.Iterator {
 68 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
 69 | 		typealias Input = Upstream.Output
 70 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:180:5: warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
178 | 			} onCancel: {
179 | 				[inner] in
180 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
181 | 			}
182 | 		}
    :
200 | extension AsyncThrowingPublisher.Iterator {
201 |
202 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
203 | 		typealias Input = Upstream.Output
204 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Logger.swift:13:16: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | @available(iOS 14.0, macOS 11, watchOS 7.0, *)
12 | private struct Loggers {
13 |     static var loggers: [UUID : Logger] = [:]
   |                |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:111:17: warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
109 | 			let continuation = pending.removeFirst()
110 | 			lock.unlock()
111 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
112 | 			return .none
113 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/Utilities/Extensions/Publishers+Async.swift:245:17: warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
243 | 			let continuation = pending.removeFirst()
244 | 			lock.unlock()
245 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
246 | 			return .none
247 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:209:11: warning: check `connect` method
207 |
208 | extension CentralManager {
209 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
210 | 	/// Returns a list of the peripherals connected to the system whose
211 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:241:11: warning: Question: Should we throw an error if the scan is already running?
239 |
240 | extension CentralManager {
241 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
242 | 	/// Initiates a scan for peripherals with the specified services.
243 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:56:46: warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 40 | // MARK: - Observer
 41 |
 42 | private class Observer: NSObject {
    |               `- note: class 'Observer' does not conform to the 'Sendable' protocol
 43 | 	@objc dynamic private weak var cm: CBCentralManager?
 44 | 	private weak var publisher: CurrentValueSubject<Bool, Never>?
    :
 54 | 		observation = observe(\.cm?.isScanning, options: [.old, .new],
 55 |                                changeHandler: { _, change in
 56 |             change.newValue?.flatMap { [weak self] new in
    |                                              `- warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 57 |                 self?.publisher?.send(new)
 58 |             }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:209:11: warning: check `connect` method
207 |
208 | extension CentralManager {
209 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
210 | 	/// Returns a list of the peripherals connected to the system whose
211 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:241:11: warning: Question: Should we throw an error if the scan is already running?
239 |
240 | extension CentralManager {
241 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
242 | 	/// Initiates a scan for peripherals with the specified services.
243 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:56:46: warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 40 | // MARK: - Observer
 41 |
 42 | private class Observer: NSObject {
    |               `- note: class 'Observer' does not conform to the 'Sendable' protocol
 43 | 	@objc dynamic private weak var cm: CBCentralManager?
 44 | 	private weak var publisher: CurrentValueSubject<Bool, Never>?
    :
 54 | 		observation = observe(\.cm?.isScanning, options: [.old, .new],
 55 |                                changeHandler: { _, change in
 56 |             change.newValue?.flatMap { [weak self] new in
    |                                              `- warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 57 |                 self?.publisher?.send(new)
 58 |             }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:209:11: warning: check `connect` method
207 |
208 | extension CentralManager {
209 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
210 | 	/// Returns a list of the peripherals connected to the system whose
211 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:241:11: warning: Question: Should we throw an error if the scan is already running?
239 |
240 | extension CentralManager {
241 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
242 | 	/// Initiates a scan for peripherals with the specified services.
243 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library/CentralManager/CentralManager.swift:56:46: warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 40 | // MARK: - Observer
 41 |
 42 | private class Observer: NSObject {
    |               `- note: class 'Observer' does not conform to the 'Sendable' protocol
 43 | 	@objc dynamic private weak var cm: CBCentralManager?
 44 | 	private weak var publisher: CurrentValueSubject<Bool, Never>?
    :
 54 | 		observation = observe(\.cm?.isScanning, options: [.old, .new],
 55 |                                changeHandler: { _, change in
 56 |             change.newValue?.flatMap { [weak self] new in
    |                                              `- warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 57 |                 self?.publisher?.send(new)
 58 |             }
[45/46] Compiling iOS_BLE_Library AsyncCharacteristicData.swift
[46/46] Compiling iOS_BLE_Library CBManagerState.swift
[47/69] Emitting module iOS_BLE_Library_Mock
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:18:8: warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 16 | 	public enum Err: Error {
 17 | 		case wrongManager
 18 | 		case badState(CBManagerState)
    |        `- warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 19 | 		case unknownError
 20 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/IOS-CoreBluetooth-Mock/CoreBluetoothMock/CBMManagerTypes.swift:34:13: note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 32 |
 33 | /// The possible states of a Core Bluetooth manager.
 34 | public enum CBMManagerState: Int {
    |             `- note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 35 |     /// The manager’s state is unknown.
 36 |     case unknown
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
  7 |
  8 | import Combine
  9 | import CoreBluetoothMock
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
 10 | import Foundation
 11 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:196:11: warning: check `connect` method
194 |
195 | extension CentralManager {
196 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
197 | 	/// Returns a list of the peripherals connected to the system whose
198 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:228:11: warning: Question: Should we throw an error if the scan is already running?
226 |
227 | extension CentralManager {
228 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
229 | 	/// Initiates a scan for peripherals with the specified services.
230 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Logger.swift:13:16: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | @available(iOS 14.0, macOS 11, watchOS 7.0, *)
12 | private struct Loggers {
13 |     static var loggers: [UUID : Logger] = [:]
   |                |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Publishers/Publishers+FailablePrefix.swift.swift:41:10: warning: Thread safety should be considered
 39 | }
 40 |
 41 | #warning("Thread safety should be considered")
    |          `- warning: Thread safety should be considered
 42 | extension Publishers.PrefixUntilOutputOrCompletion {
 43 | 	private final class Inner<Downstream: Subscriber>: Subscriber, Subscription
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:59:20: warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
57 | extension RSSI {
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
   |                    |- warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'outOfRange' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:60:20: warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
   |                    |- warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'practicalWorst' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:61:20: warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
   |                    |- warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'bad' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:62:20: warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
   |                    |- warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'ok' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
63 | 	public static let good = RSSI(integerLiteral: Const.good)
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:63:20: warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
   |                    |- warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'good' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
64 | }
65 |
[48/71] Compiling iOS_BLE_Library_Mock RSSI.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:59:20: warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
57 | extension RSSI {
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
   |                    |- warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'outOfRange' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:60:20: warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
   |                    |- warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'practicalWorst' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:61:20: warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
   |                    |- warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'bad' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:62:20: warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
   |                    |- warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'ok' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
63 | 	public static let good = RSSI(integerLiteral: Const.good)
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:63:20: warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
   |                    |- warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'good' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
64 | }
65 |
[49/71] Compiling iOS_BLE_Library_Mock UnimplementedError.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:59:20: warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
57 | extension RSSI {
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
   |                    |- warning: static property 'outOfRange' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'outOfRange' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:60:20: warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
58 |
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
   |                    |- warning: static property 'practicalWorst' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'practicalWorst' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:61:20: warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
59 | 	public static let outOfRange = RSSI(integerLiteral: Const.outOfRange)
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
   |                    |- warning: static property 'bad' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'bad' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:62:20: warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
60 | 	public static let practicalWorst = RSSI(integerLiteral: Const.practicalWorst)
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
   |                    |- warning: static property 'ok' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'ok' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
63 | 	public static let good = RSSI(integerLiteral: Const.good)
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/RSSI.swift:63:20: warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
18 | }
19 |
20 | public struct RSSI: ExpressibleByIntegerLiteral, Equatable, Hashable {
   |               `- note: consider making struct 'RSSI' conform to the 'Sendable' protocol
21 |
22 | 	public enum Signal {
   :
61 | 	public static let bad = RSSI(integerLiteral: Const.bad)
62 | 	public static let ok = RSSI(integerLiteral: Const.ok)
63 | 	public static let good = RSSI(integerLiteral: Const.good)
   |                    |- warning: static property 'good' is not concurrency-safe because non-'Sendable' type 'RSSI' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'good' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
64 | }
65 |
[50/71] Compiling iOS_BLE_Library_Mock Data+Ext.swift.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:47:5: warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 45 | 			} onCancel: {
 46 | 				[inner] in
 47 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 48 | 			}
 49 | 		}
    :
 66 |
 67 | extension AsyncPublisher.Iterator {
 68 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
 69 | 		typealias Input = Upstream.Output
 70 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:180:5: warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
178 | 			} onCancel: {
179 | 				[inner] in
180 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
181 | 			}
182 | 		}
    :
200 | extension AsyncThrowingPublisher.Iterator {
201 |
202 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
203 | 		typealias Input = Upstream.Output
204 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:111:17: warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
109 | 			let continuation = pending.removeFirst()
110 | 			lock.unlock()
111 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
112 | 			return .none
113 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:245:17: warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
243 | 			let continuation = pending.removeFirst()
244 | 			lock.unlock()
245 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
246 | 			return .none
247 | 		}
[51/71] Compiling iOS_BLE_Library_Mock Publishers+Async.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:47:5: warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 45 | 			} onCancel: {
 46 | 				[inner] in
 47 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 48 | 			}
 49 | 		}
    :
 66 |
 67 | extension AsyncPublisher.Iterator {
 68 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
 69 | 		typealias Input = Upstream.Output
 70 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:180:5: warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
178 | 			} onCancel: {
179 | 				[inner] in
180 | 				inner.cancel()
    |     `- warning: capture of 'inner' with non-sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner' in a '@Sendable' closure; this is an error in the Swift 6 language mode
181 | 			}
182 | 		}
    :
200 | extension AsyncThrowingPublisher.Iterator {
201 |
202 | 	fileprivate final class Inner: Subscriber, Cancellable {
    |                          `- note: class 'Inner' does not conform to the 'Sendable' protocol
203 | 		typealias Input = Upstream.Output
204 | 		typealias Failure = Upstream.Failure
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:111:17: warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
109 | 			let continuation = pending.removeFirst()
110 | 			lock.unlock()
111 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
112 | 			return .none
113 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/Publishers+Async.swift:245:17: warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
243 | 			let continuation = pending.removeFirst()
244 | 			lock.unlock()
245 | 			continuation.resume(returning: input)
    |                 |- warning: sending value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: Passing task-isolated value of non-Sendable type 'AsyncThrowingPublisher<Upstream>.Iterator.Inner.Input' (aka 'Upstream.Output') as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
246 | 			return .none
247 | 		}
[52/71] Compiling iOS_BLE_Library_Mock Logger.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Logger.swift:13:16: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | @available(iOS 14.0, macOS 11, watchOS 7.0, *)
12 | private struct Loggers {
13 |     static var loggers: [UUID : Logger] = [:]
   |                |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Publishers/ContinuationSubscriber.swift:52:16: warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
50 | 		}
51 | 		self.state = .terminated
52 | 		continuation.resume(returning: input)
   |                |- warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
   |                `- note: task-isolated 'input' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
53 |
54 | 		self.subscription?.cancel()
[53/71] Compiling iOS_BLE_Library_Mock ContinuationSubscriber.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Logger.swift:13:16: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | @available(iOS 14.0, macOS 11, watchOS 7.0, *)
12 | private struct Loggers {
13 |     static var loggers: [UUID : Logger] = [:]
   |                |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Publishers/ContinuationSubscriber.swift:52:16: warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
50 | 		}
51 | 		self.state = .terminated
52 | 		continuation.resume(returning: input)
   |                |- warning: sending 'input' risks causing data races; this is an error in the Swift 6 language mode
   |                `- note: task-isolated 'input' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
53 |
54 | 		self.subscription?.cancel()
[54/71] Compiling iOS_BLE_Library_Mock Publishers+FailablePrefix.swift.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Publishers/Publishers+FailablePrefix.swift.swift:41:10: warning: Thread safety should be considered
 39 | }
 40 |
 41 | #warning("Thread safety should be considered")
    |          `- warning: Thread safety should be considered
 42 | extension Publishers.PrefixUntilOutputOrCompletion {
 43 | 	private final class Inner<Downstream: Subscriber>: Subscriber, Subscription
[55/71] Compiling iOS_BLE_Library_Mock Publishers+GuestList.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Publishers/Publishers+FailablePrefix.swift.swift:41:10: warning: Thread safety should be considered
 39 | }
 40 |
 41 | #warning("Thread safety should be considered")
    |          `- warning: Thread safety should be considered
 42 | extension Publishers.PrefixUntilOutputOrCompletion {
 43 | 	private final class Inner<Downstream: Subscriber>: Subscriber, Subscription
[56/71] Compiling iOS_BLE_Library_Mock Publishers+Bluetooth.swift
[57/71] Compiling iOS_BLE_Library_Mock Publishers+Connectable.swift
[58/71] Compiling iOS_BLE_Library_Mock Publishers+Peripheral.swift
[59/71] Compiling iOS_BLE_Library_Mock Queue.swift
[60/71] Compiling iOS_BLE_Library_Mock AsyncCharacteristicData.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/CBManagerState+Ext.swift:21:9: warning: default will never be executed
19 | 		case .poweredOff, .unauthorized, .unsupported:
20 | 			return false
21 |         default:
   |         `- warning: default will never be executed
22 |             return false
23 | 		}
[61/71] Compiling iOS_BLE_Library_Mock CBManagerState.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/CBManagerState+Ext.swift:21:9: warning: default will never be executed
19 | 		case .poweredOff, .unauthorized, .unsupported:
20 | 			return false
21 |         default:
   |         `- warning: default will never be executed
22 |             return false
23 | 		}
[62/71] Compiling iOS_BLE_Library_Mock CBManagerState+Ext.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Utilities/Extensions/CBManagerState+Ext.swift:21:9: warning: default will never be executed
19 | 		case .poweredOff, .unauthorized, .unsupported:
20 | 			return false
21 |         default:
   |         `- warning: default will never be executed
22 |             return false
23 | 		}
[63/71] Compiling iOS_BLE_Library_Mock PeripheralError.swift
[64/71] Compiling iOS_BLE_Library_Mock ReactivePeripheralDelegate.swift
[65/71] Compiling iOS_BLE_Library_Mock AdvertisementData.swift
[66/71] Compiling iOS_BLE_Library_Mock ReactiveCentralManagerDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:40:23: warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 17 | }
 18 |
 19 | private class NativeObserver: Observer {
    |               `- note: class 'NativeObserver' does not conform to the 'Sendable' protocol
 20 | 	@objc private var peripheral: CoreBluetooth.CBPeripheral
 21 |
    :
 38 | 			[weak self] _, change in
 39 |             // TODO: Check threads
 40 |             guard let self else { return }
    |                       `- warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 41 |             self.publisher.send(self.peripheral.state)
 42 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:60:23: warning: queue can be not only main
 58 |      override func setup() {
 59 |          observation = peripheral.observe(\.state, options: [.new]) { [weak self] _, change in
 60 |              #warning("queue can be not only main")
    |                       `- warning: queue can be not only main
 61 |              DispatchQueue.main.async {
 62 |                  guard let self else { return }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:62:28: warning: capture of 'self' with non-sendable type 'MockObserver?' in a '@Sendable' closure
 44 | }
 45 |
 46 | private class MockObserver: Observer {
    |               `- note: class 'MockObserver' does not conform to the 'Sendable' protocol
 47 |      @objc private var peripheral: CBMPeripheralMock
 48 |
    :
 60 |              #warning("queue can be not only main")
 61 |              DispatchQueue.main.async {
 62 |                  guard let self else { return }
    |                            `- warning: capture of 'self' with non-sendable type 'MockObserver?' in a '@Sendable' closure
 63 |                  self.publisher.send(self.peripheral.state)
 64 |              }
[67/71] Compiling iOS_BLE_Library_Mock Peripheral+Writer.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:40:23: warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 17 | }
 18 |
 19 | private class NativeObserver: Observer {
    |               `- note: class 'NativeObserver' does not conform to the 'Sendable' protocol
 20 | 	@objc private var peripheral: CoreBluetooth.CBPeripheral
 21 |
    :
 38 | 			[weak self] _, change in
 39 |             // TODO: Check threads
 40 |             guard let self else { return }
    |                       `- warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 41 |             self.publisher.send(self.peripheral.state)
 42 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:60:23: warning: queue can be not only main
 58 |      override func setup() {
 59 |          observation = peripheral.observe(\.state, options: [.new]) { [weak self] _, change in
 60 |              #warning("queue can be not only main")
    |                       `- warning: queue can be not only main
 61 |              DispatchQueue.main.async {
 62 |                  guard let self else { return }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:62:28: warning: capture of 'self' with non-sendable type 'MockObserver?' in a '@Sendable' closure
 44 | }
 45 |
 46 | private class MockObserver: Observer {
    |               `- note: class 'MockObserver' does not conform to the 'Sendable' protocol
 47 |      @objc private var peripheral: CBMPeripheralMock
 48 |
    :
 60 |              #warning("queue can be not only main")
 61 |              DispatchQueue.main.async {
 62 |                  guard let self else { return }
    |                            `- warning: capture of 'self' with non-sendable type 'MockObserver?' in a '@Sendable' closure
 63 |                  self.publisher.send(self.peripheral.state)
 64 |              }
[68/71] Compiling iOS_BLE_Library_Mock Peripheral.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:40:23: warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 17 | }
 18 |
 19 | private class NativeObserver: Observer {
    |               `- note: class 'NativeObserver' does not conform to the 'Sendable' protocol
 20 | 	@objc private var peripheral: CoreBluetooth.CBPeripheral
 21 |
    :
 38 | 			[weak self] _, change in
 39 |             // TODO: Check threads
 40 |             guard let self else { return }
    |                       `- warning: capture of 'self' with non-sendable type 'NativeObserver?' in a '@Sendable' closure
 41 |             self.publisher.send(self.peripheral.state)
 42 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:60:23: warning: queue can be not only main
 58 |      override func setup() {
 59 |          observation = peripheral.observe(\.state, options: [.new]) { [weak self] _, change in
 60 |              #warning("queue can be not only main")
    |                       `- warning: queue can be not only main
 61 |              DispatchQueue.main.async {
 62 |                  guard let self else { return }
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/Peripheral/Peripheral.swift:62:28: warning: capture of 'self' with non-sendable type 'MockObserver?' in a '@Sendable' closure
 44 | }
 45 |
 46 | private class MockObserver: Observer {
    |               `- note: class 'MockObserver' does not conform to the 'Sendable' protocol
 47 |      @objc private var peripheral: CBMPeripheralMock
 48 |
    :
 60 |              #warning("queue can be not only main")
 61 |              DispatchQueue.main.async {
 62 |                  guard let self else { return }
    |                            `- warning: capture of 'self' with non-sendable type 'MockObserver?' in a '@Sendable' closure
 63 |                  self.publisher.send(self.peripheral.state)
 64 |              }
[69/71] Compiling iOS_BLE_Library_Mock Alias.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:18:8: warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 16 | 	public enum Err: Error {
 17 | 		case wrongManager
 18 | 		case badState(CBManagerState)
    |        `- warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 19 | 		case unknownError
 20 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/IOS-CoreBluetooth-Mock/CoreBluetoothMock/CBMManagerTypes.swift:34:13: note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 32 |
 33 | /// The possible states of a Core Bluetooth manager.
 34 | public enum CBMManagerState: Int {
    |             `- note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 35 |     /// The manager’s state is unknown.
 36 |     case unknown
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
  7 |
  8 | import Combine
  9 | import CoreBluetoothMock
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
 10 | import Foundation
 11 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:196:11: warning: check `connect` method
194 |
195 | extension CentralManager {
196 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
197 | 	/// Returns a list of the peripherals connected to the system whose
198 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:228:11: warning: Question: Should we throw an error if the scan is already running?
226 |
227 | extension CentralManager {
228 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
229 | 	/// Initiates a scan for peripherals with the specified services.
230 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:50:46: warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 34 | // MARK: - Observer
 35 |
 36 | private class Observer: NSObject {
    |               `- note: class 'Observer' does not conform to the 'Sendable' protocol
 37 | 	@objc dynamic private weak var cm: CBCentralManager?
 38 | 	private weak var publisher: CurrentValueSubject<Bool, Never>?
    :
 48 | 		observation = observe(\.cm?.isScanning, options: [.old, .new],
 49 |                                changeHandler: { _, change in
 50 |             change.newValue?.flatMap { [weak self] new in
    |                                              `- warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 51 |                 self?.publisher?.send(new)
 52 |             }
[70/71] Compiling iOS_BLE_Library_Mock CentralManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:18:8: warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 16 | 	public enum Err: Error {
 17 | 		case wrongManager
 18 | 		case badState(CBManagerState)
    |        `- warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 19 | 		case unknownError
 20 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/IOS-CoreBluetooth-Mock/CoreBluetoothMock/CBMManagerTypes.swift:34:13: note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 32 |
 33 | /// The possible states of a Core Bluetooth manager.
 34 | public enum CBMManagerState: Int {
    |             `- note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 35 |     /// The manager’s state is unknown.
 36 |     case unknown
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
  7 |
  8 | import Combine
  9 | import CoreBluetoothMock
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
 10 | import Foundation
 11 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:196:11: warning: check `connect` method
194 |
195 | extension CentralManager {
196 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
197 | 	/// Returns a list of the peripherals connected to the system whose
198 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:228:11: warning: Question: Should we throw an error if the scan is already running?
226 |
227 | extension CentralManager {
228 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
229 | 	/// Initiates a scan for peripherals with the specified services.
230 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:50:46: warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 34 | // MARK: - Observer
 35 |
 36 | private class Observer: NSObject {
    |               `- note: class 'Observer' does not conform to the 'Sendable' protocol
 37 | 	@objc dynamic private weak var cm: CBCentralManager?
 38 | 	private weak var publisher: CurrentValueSubject<Bool, Never>?
    :
 48 | 		observation = observe(\.cm?.isScanning, options: [.old, .new],
 49 |                                changeHandler: { _, change in
 50 |             change.newValue?.flatMap { [weak self] new in
    |                                              `- warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 51 |                 self?.publisher?.send(new)
 52 |             }
[71/71] Compiling iOS_BLE_Library_Mock ScanResult.swift
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:18:8: warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 16 | 	public enum Err: Error {
 17 | 		case wrongManager
 18 | 		case badState(CBManagerState)
    |        `- warning: associated value 'badState' of 'Sendable'-conforming enum 'Err' has non-sendable type 'CBManagerState' (aka 'CBMManagerState'); this is an error in the Swift 6 language mode
 19 | 		case unknownError
 20 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/IOS-CoreBluetooth-Mock/CoreBluetoothMock/CBMManagerTypes.swift:34:13: note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 32 |
 33 | /// The possible states of a Core Bluetooth manager.
 34 | public enum CBMManagerState: Int {
    |             `- note: enum 'CBMManagerState' does not conform to the 'Sendable' protocol
 35 |     /// The manager’s state is unknown.
 36 |     case unknown
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
  7 |
  8 | import Combine
  9 | import CoreBluetoothMock
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetoothMock'
 10 | import Foundation
 11 |
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:196:11: warning: check `connect` method
194 |
195 | extension CentralManager {
196 | 	#warning("check `connect` method")
    |           `- warning: check `connect` method
197 | 	/// Returns a list of the peripherals connected to the system whose
198 | 	/// services match a given set of criteria.
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:228:11: warning: Question: Should we throw an error if the scan is already running?
226 |
227 | extension CentralManager {
228 | 	#warning("Question: Should we throw an error if the scan is already running?")
    |           `- warning: Question: Should we throw an error if the scan is already running?
229 | 	/// Initiates a scan for peripherals with the specified services.
230 | 	///
/Users/admin/builder/spi-builder-workspace/Sources/iOS-BLE-Library-Mock/CentralManager/CentralManager.swift:50:46: warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 34 | // MARK: - Observer
 35 |
 36 | private class Observer: NSObject {
    |               `- note: class 'Observer' does not conform to the 'Sendable' protocol
 37 | 	@objc dynamic private weak var cm: CBCentralManager?
 38 | 	private weak var publisher: CurrentValueSubject<Bool, Never>?
    :
 48 | 		observation = observe(\.cm?.isScanning, options: [.old, .new],
 49 |                                changeHandler: { _, change in
 50 |             change.newValue?.flatMap { [weak self] new in
    |                                              `- warning: capture of 'self' with non-sendable type 'Observer' in a '@Sendable' closure
 51 |                 self?.publisher?.send(new)
 52 |             }
Build complete! (22.49s)
Fetching https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git
Fetching https://github.com/apple/swift-docc-plugin
[1/2217] Fetching swift-docc-plugin
[223/9385] Fetching swift-docc-plugin, ios-corebluetooth-mock
Fetched https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git from cache (1.55s)
Fetched https://github.com/apple/swift-docc-plugin from cache (1.55s)
Computing version for https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git
Computed https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git at 1.0.4 (2.06s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.6 (0.60s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.85s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.56s)
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.4.6
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git
Working copy of https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git resolved at 1.0.4
Build complete.
{
  "dependencies" : [
    {
      "identity" : "ios-corebluetooth-mock",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "iOS-BLE-Library",
  "name" : "iOS-BLE-Library",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "iOS-BLE-Library",
      "targets" : [
        "iOS-BLE-Library"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "iOS-BLE-Library-Mock",
      "targets" : [
        "iOS-BLE-Library-Mock"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "iOS_BLE_Library_Mock",
      "module_type" : "SwiftTarget",
      "name" : "iOS-BLE-Library-Mock",
      "path" : "Sources/iOS-BLE-Library-Mock",
      "product_dependencies" : [
        "CoreBluetoothMock"
      ],
      "product_memberships" : [
        "iOS-BLE-Library-Mock"
      ],
      "sources" : [
        "Alias.swift",
        "CentralManager/CentralManager.swift",
        "CentralManager/Model/ScanResult.swift",
        "CentralManager/ReactiveCentralManagerDelegate.swift",
        "Peripheral/Peripheral+Writer.swift",
        "Peripheral/Peripheral.swift",
        "Peripheral/PeripheralError.swift",
        "Peripheral/ReactivePeripheralDelegate.swift",
        "Utilities/AdvertisementData.swift",
        "Utilities/AsyncCharacteristicData.swift",
        "Utilities/CBManagerState.swift",
        "Utilities/Extensions/CBManagerState+Ext.swift",
        "Utilities/Extensions/Data+Ext.swift.swift",
        "Utilities/Extensions/Publishers+Async.swift",
        "Utilities/Logger.swift",
        "Utilities/Publishers/ContinuationSubscriber.swift",
        "Utilities/Publishers/Publishers+Bluetooth.swift",
        "Utilities/Publishers/Publishers+Connectable.swift",
        "Utilities/Publishers/Publishers+FailablePrefix.swift.swift",
        "Utilities/Publishers/Publishers+GuestList.swift",
        "Utilities/Publishers/Publishers+Peripheral.swift",
        "Utilities/Queue.swift",
        "Utilities/RSSI.swift",
        "Utilities/UnimplementedError.swift"
      ],
      "target_dependencies" : [
        "iOS-BLE-Library"
      ],
      "type" : "library"
    },
    {
      "c99name" : "iOS_BLE_Library",
      "module_type" : "SwiftTarget",
      "name" : "iOS-BLE-Library",
      "path" : "Sources/iOS-BLE-Library",
      "product_memberships" : [
        "iOS-BLE-Library",
        "iOS-BLE-Library-Mock"
      ],
      "sources" : [
        "CentralManager/CentralManager.swift",
        "CentralManager/Model/ScanResult.swift",
        "CentralManager/ReactiveCentralManagerDelegate.swift",
        "Peripheral/Peripheral+Writer.swift",
        "Peripheral/Peripheral.swift",
        "Peripheral/PeripheralError.swift",
        "Peripheral/ReactivePeripheralDelegate.swift",
        "Utilities/AdvertisementData.swift",
        "Utilities/AsyncCharacteristicData.swift",
        "Utilities/CBManagerState.swift",
        "Utilities/Extensions/CBManagerState+Ext.swift",
        "Utilities/Extensions/Data+Ext.swift.swift",
        "Utilities/Extensions/Publishers+Async.swift",
        "Utilities/Logger.swift",
        "Utilities/Publishers/ContinuationSubscriber.swift",
        "Utilities/Publishers/Publishers+Bluetooth.swift",
        "Utilities/Publishers/Publishers+Connectable.swift",
        "Utilities/Publishers/Publishers+FailablePrefix.swift.swift",
        "Utilities/Publishers/Publishers+GuestList.swift",
        "Utilities/Queue.swift",
        "Utilities/RSSI.swift",
        "Utilities/UnimplementedError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Done.