The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of VanMoofKit, reference 0.0.7 (d258b2), with Swift 6.0 for macOS (SPM) on 1 Dec 2024 13:32:24 UTC.

Swift 6 data race errors: 7

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -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

354 |                     // Check if an error is available
355 |                     // which is not instance of `CBATTError.unlikelyError`
CoreBluetooth.CBCharacteristic:2:12: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBCharacteristic : CBAttribute {
   |            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 3 |     weak open var service: CBService? { get }
 4 |     open var properties: CBCharacteristicProperties { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:2:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  1 | import Combine
  2 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  3 | import Foundation
  4 |
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:442:36: warning: capture of 'self' with non-sendable type 'VanMoof.Bike.BluetoothManager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
440 |         try await self.withTimeout(seconds: timeoutInterval) {
441 |             // For each bluetooth event
442 |             for try await event in self.values {
    |                                    `- warning: capture of 'self' with non-sendable type 'VanMoof.Bike.BluetoothManager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
443 |                 // Check central state
444 |                 try self.central.checkState()
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager.swift:10:17: note: class 'BluetoothManager' does not conform to the 'Sendable' protocol
  8 |
  9 |     /// A VanMoof Bike BluetoothManager.
 10 |     final class BluetoothManager: NSObject {
    |                 `- note: class 'BluetoothManager' does not conform to the 'Sendable' protocol
 11 |
 12 |         // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:451:67: warning: capture of 'coreBluetoothCharacteristic' with non-sendable type 'CBCharacteristic' in a `@Sendable` closure; this is an error in the Swift 6 language mode
449 |                     let updatedCoreBluetoothCharacterstic,
450 |                     let error
451 |                 ) where updatedCoreBluetoothCharacterstic.uuid == coreBluetoothCharacteristic.uuid:
    |                                                                   `- warning: capture of 'coreBluetoothCharacteristic' with non-sendable type 'CBCharacteristic' in a `@Sendable` closure; this is an error in the Swift 6 language mode
452 |                     // Check if an error is available
453 |                     if let error = error {
CoreBluetooth.CBCharacteristic:2:12: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBCharacteristic : CBAttribute {
   |            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 3 |     weak open var service: CBService? { get }
 4 |     open var properties: CBCharacteristicProperties { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:567:19: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
561 |     /// - Throws: Throws `VanMoof.Bike.Error` if the timeout expires before `operation` completes.
562 |     ///   If `operation` throws an error before the timeout expires, that error is propagated to the caller.
563 |     func withTimeout<R>(
    |                      `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
564 |         seconds: TimeInterval,
565 |         operation: @escaping @Sendable () async throws -> R
566 |     ) async throws -> R {
567 |         try await withThrowingTaskGroup(of: R.self) { group in
    |                   `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
568 |             // Initialize deadline
569 |             let deadline = Date(timeIntervalSinceNow: seconds)
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:571:19: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
561 |     /// - Throws: Throws `VanMoof.Bike.Error` if the timeout expires before `operation` completes.
562 |     ///   If `operation` throws an error before the timeout expires, that error is propagated to the caller.
563 |     func withTimeout<R>(
    |                      `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
564 |         seconds: TimeInterval,
565 |         operation: @escaping @Sendable () async throws -> R
    :
569 |             let deadline = Date(timeIntervalSinceNow: seconds)
570 |             // Add operation Task
571 |             group.addTask {
    |                   `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
572 |                 // Execute operation
573 |                 return try await operation()
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:576:19: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
561 |     /// - Throws: Throws `VanMoof.Bike.Error` if the timeout expires before `operation` completes.
562 |     ///   If `operation` throws an error before the timeout expires, that error is propagated to the caller.
563 |     func withTimeout<R>(
    |                      `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
564 |         seconds: TimeInterval,
565 |         operation: @escaping @Sendable () async throws -> R
    :
574 |             }
575 |             // Add timeout Task
576 |             group.addTask {
    |                   `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
577 |                 // Initialize interval
578 |                 let interval = deadline.timeIntervalSinceNow
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:592:42: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
561 |     /// - Throws: Throws `VanMoof.Bike.Error` if the timeout expires before `operation` completes.
562 |     ///   If `operation` throws an error before the timeout expires, that error is propagated to the caller.
563 |     func withTimeout<R>(
    |                      `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
564 |         seconds: TimeInterval,
565 |         operation: @escaping @Sendable () async throws -> R
    :
590 |             }
591 |             // Await first result
592 |             let result = try await group.next()
    |                                          `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
593 |             // Cancel all other tasks
594 |             group.cancelAll()
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:594:19: warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
561 |     /// - Throws: Throws `VanMoof.Bike.Error` if the timeout expires before `operation` completes.
562 |     ///   If `operation` throws an error before the timeout expires, that error is propagated to the caller.
563 |     func withTimeout<R>(
    |                      `- note: consider making generic parameter 'R' conform to the 'Sendable' protocol
564 |         seconds: TimeInterval,
565 |         operation: @escaping @Sendable () async throws -> R
    :
592 |             let result = try await group.next()
593 |             // Cancel all other tasks
594 |             group.cancelAll()
    |                   `- warning: type 'R' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
595 |             // Verify result is available
596 |             guard let result = result else {
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/API/VanMoof+Bike+SignalStrength.swift:120:22: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
118 |                     return
119 |                 }
120 |                 Task {
    |                      `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
121 |                     guard let signalStrength = try? await self.signalStrength else {
    |                                                           `- note: closure captures non-Sendable 'self'
122 |                         return
123 |                     }
124 |                     promise(.success(signalStrength))
    |                     `- note: closure captures non-Sendable 'promise'
125 |                 }
126 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
460 |                         DispatchQueue.main.asyncAfter(
461 |                             deadline: .now() + 1
462 |                         ) { [weak self] in
    |                           `- note: access can happen concurrently
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
[105/117] Compiling VanMoofKit VanMoof+Bike.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[106/117] Compiling VanMoofKit InMemoryVanMoofTokenStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[107/117] Compiling VanMoofKit KeychainVanMoofTokenStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[108/117] Compiling VanMoofKit LARightVanMoofTokenStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[109/117] Compiling VanMoofKit NSUbiquitousVanMoofTokenStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[110/117] Compiling VanMoofKit ObservableObjectVanMoofTokenMediator.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[111/117] Compiling VanMoofKit UserDefaultsVanMoofTokenStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[112/117] Compiling VanMoofKit VanMoofTokenStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[113/117] Compiling VanMoofKit VanMoof+User.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[114/117] Compiling VanMoofKit VanMoof.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Configuration/VanMoof+Bike+Configuration.swift:27:16: warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |     /// Bool value whether auto reconnecting is enabled or disabled
26 |     /// whenever the connection timed out. Default value `true`
27 |     static var isAutoReconnectEnabled = true
   |                |- warning: static property 'isAutoReconnectEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'isAutoReconnectEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'isAutoReconnectEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 |
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:11:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// An InMemory based VanMoofTokenStore
 6 | public final class InMemoryVanMoofTokenStore: ObservableObject {
   |                    `- note: class 'InMemoryVanMoofTokenStore' does not conform to the 'Sendable' protocol
 7 |
 8 |     // MARK: Static-Properties
 9 |
10 |     /// The shared `InMemoryVanMoofTokenStore` instance
11 |     public static let shared = InMemoryVanMoofTokenStore()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'InMemoryVanMoofTokenStore' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Authentication/VanMoof+Token+Key.swift:8:16: warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 |     /// The key name.
 8 |     static var key = "VanMoof.Token"
   |                |- warning: static property 'key' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'key' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'key' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:54: warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                      `- warning: type 'LAPersistedRight' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 77 |                 return authorizedRight
 78 |             }
LocalAuthentication.LAPersistedRight:2:12: note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 1 | @available(macOS 13.0, *)
 2 | open class LAPersistedRight : LARight {
   |            `- note: class 'LAPersistedRight' does not conform to the 'Sendable' protocol
 3 |     open var key: LAPrivateKey { get }
 4 |     open var secret: LASecret { get }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  1 | #if os(iOS) || os(macOS)
  2 | import Foundation
  3 | import LocalAuthentication
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LocalAuthentication'
  4 |
  5 | // MARK: - LARightVanMoofTokenStore
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:12:23: warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     /// The default `VanMoof` instance
 12 |     public static var `default` = VanMoof()
    |                       |- warning: static property 'default' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'default' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 13 |
 14 |     // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/VanMoof+Bike.swift:64:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 62 |                     }
 63 |                     // Reconnect
 64 |                     Task {
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 65 |                         try await self.connect()
    |                                   `- note: closure captures 'self' which is accessible to code in the current task
 66 |                     }
 67 |                 default:
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:38:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
36 |     public func token() async throws -> VanMoof.Token? {
37 |         await MainActor.run {
38 |             self.token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
39 |         }
40 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:46:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
44 |     public func save(token: VanMoof.Token) async throws {
45 |         await MainActor.run {
46 |             self.token = token
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/InMemoryVanMoofTokenStore.swift:53:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
51 |     public func removeToken() async throws {
52 |         await MainActor.run {
53 |             self.token = nil
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
54 |         }
55 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:183:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
181 |         await MainActor.run {
182 |             // Send object will change
183 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
184 |         }
185 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/KeychainVanMoofTokenStore.swift:203:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
201 |         await MainActor.run {
202 |             // Send object will change
203 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
204 |         }
205 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:76:66: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |     public func token() async throws -> VanMoof.Token? {
 75 |         guard let authorizedRight: LAPersistedRight = try await {
 76 |             if let authorizedRight = await MainActor.run(body: { self.authorizedRight }) {
    |                                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 return authorizedRight
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:86:40: warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
 84 |             )
 85 |             await MainActor.run {
 86 |                 self.authorizedRight = right
    |                                        |- warning: sending 'right' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: 'right' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 87 |             }
 88 |             return right
    |                    `- note: access can happen concurrently
 89 |         }() else {
 90 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:108:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
106 |         )
107 |         _ = await MainActor.run {
108 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/LARightVanMoofTokenStore.swift:118:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
116 |         )
117 |         _ = await MainActor.run {
118 |             self.authorizedRight = nil
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:76:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 74 |             )
 75 |         await MainActor.run {
 76 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/NSUbiquitousVanMoofTokenStore.swift:84:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 82 |         self.keyValueStore.removeObject(forKey: self.key)
 83 |         await MainActor.run {
 84 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 85 |         }
 86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/ObservableObjectVanMoofTokenMediator.swift:81:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
79 |         await MainActor.run {
80 |             // Send changes
81 |             self.objectWillChange.send()
   |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
82 |         }
83 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:64:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 62 |             )
 63 |         await MainActor.run {
 64 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |         }
 66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/TokenStore/UserDefaultsVanMoofTokenStore.swift:72:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 70 |         self.userDefaults.removeObject(forKey: self.key)
 71 |         await MainActor.run {
 72 |             self.objectWillChange.send()
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 73 |         }
 74 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/VanMoof.swift:85:26: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 83 |             .flatMap {
 84 |                 Future { promise in
 85 |                     Task { [weak self] in
    |                          `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 86 |                         guard let self = self else {
    |                                          `- note: closure captures non-Sendable 'self'
 87 |                             return promise(.success(nil))
    |                                    `- note: closure captures non-Sendable 'promise'
 88 |                         }
 89 |                         promise(.success(await self.authenticationState))
[115/119] Emitting module VanMoofCLI
[116/119] Compiling VanMoofCLI VanMoofCLI.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofCLI/VanMoofCLI.swift:36:22: warning: sending 'cli' risks causing data races; this is an error in the Swift 6 language mode
 34 |         }
 35 |         // Execute CLI
 36 |         try await cli()
    |                      |- warning: sending 'cli' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: sending main actor-isolated 'cli' to nonisolated instance method 'callAsFunction()' risks causing data races between nonisolated and main actor-isolated uses
 37 |     }
 38 |
[116/119] Write Objects.LinkFileList
[117/119] Linking vanmoof
[118/119] Applying vanmoof
Build complete! (14.35s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "VanMoofKit",
  "name" : "VanMoofKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "9.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "VanMoofKit",
      "targets" : [
        "VanMoofKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "vanmoof",
      "targets" : [
        "VanMoofCLI"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "VanMoofKitTests",
      "module_type" : "SwiftTarget",
      "name" : "VanMoofKitTests",
      "path" : "Tests/VanMoofKitTests",
      "sources" : [
        "VanMoofTests.swift"
      ],
      "target_dependencies" : [
        "VanMoofKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "VanMoofKit",
      "module_type" : "SwiftTarget",
      "name" : "VanMoofKit",
      "path" : "Sources/VanMoofKit",
      "product_memberships" : [
        "VanMoofKit",
        "vanmoof"
      ],
      "sources" : [
        "Authentication/VanMoof+AuthenticationState.swift",
        "Authentication/VanMoof+Credentials.swift",
        "Authentication/VanMoof+Token+Key.swift",
        "Authentication/VanMoof+Token+MissingError.swift",
        "Authentication/VanMoof+Token.swift",
        "Bike/API/VanMoof+Bike+AlarmMode.swift",
        "Bike/API/VanMoof+Bike+AlarmState.swift",
        "Bike/API/VanMoof+Bike+BatteryLevel.swift",
        "Bike/API/VanMoof+Bike+BatteryState.swift",
        "Bike/API/VanMoof+Bike+BellSound.swift",
        "Bike/API/VanMoof+Bike+ClockDate.swift",
        "Bike/API/VanMoof+Bike+CommunicationError.swift",
        "Bike/API/VanMoof+Bike+Connect.swift",
        "Bike/API/VanMoof+Bike+ConnectionState.swift",
        "Bike/API/VanMoof+Bike+Disconnect.swift",
        "Bike/API/VanMoof+Bike+ErrorCode.swift",
        "Bike/API/VanMoof+Bike+Execute.swift",
        "Bike/API/VanMoof+Bike+FirmwareVersions.swift",
        "Bike/API/VanMoof+Bike+LightMode.swift",
        "Bike/API/VanMoof+Bike+LockState.swift",
        "Bike/API/VanMoof+Bike+ModuleState.swift",
        "Bike/API/VanMoof+Bike+PlaySound.swift",
        "Bike/API/VanMoof+Bike+PowerLevel.swift",
        "Bike/API/VanMoof+Bike+SignalStrength.swift",
        "Bike/API/VanMoof+Bike+SoundVolume.swift",
        "Bike/API/VanMoof+Bike+Speed.swift",
        "Bike/API/VanMoof+Bike+SpeedLimit.swift",
        "Bike/API/VanMoof+Bike+TotalDistance.swift",
        "Bike/API/VanMoof+Bike+UnitSystem.swift",
        "Bike/Bluetooth/Crypto/VanMoof+Bike+BluetoothCrypto.swift",
        "Bike/Bluetooth/Data/VanMoof+Bike+BluetoothData.swift",
        "Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift",
        "Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+CBCentralManagerDelegate.swift",
        "Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+CBPeripheralDelegate.swift",
        "Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+Event.swift",
        "Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager.swift",
        "Bike/Bluetooth/Services/Defence/VanMoof+Bike+BluetoothServices+Defence+AlarmModeCharacteristic.swift",
        "Bike/Bluetooth/Services/Defence/VanMoof+Bike+BluetoothServices+Defence+AlarmStateCharacteristic.swift",
        "Bike/Bluetooth/Services/Defence/VanMoof+Bike+BluetoothServices+Defence+LockStateCharacteristic.swift",
        "Bike/Bluetooth/Services/Defence/VanMoof+Bike+BluetoothServices+Defence+UnlockRequestCharacteristic.swift",
        "Bike/Bluetooth/Services/Defence/VanMoof+Bike+BluetoothServices+Defence.swift",
        "Bike/Bluetooth/Services/Firmware/VanMoof+Bike+BluetoothServices+Firmware+BlockCharacteristic.swift",
        "Bike/Bluetooth/Services/Firmware/VanMoof+Bike+BluetoothServices+Firmware+MetadataCharacteristic.swift",
        "Bike/Bluetooth/Services/Firmware/VanMoof+Bike+BluetoothServices+Firmware.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+BLEChipFirmwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+BatteryFirmwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+BikeFirmwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+ControllerFirmwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+EShifterFirmwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+GSMFirmwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+ModuleBatteryLevelCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+ModuleBatteryStateCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+MotorBatteryLevelCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+MotorBatteryStateCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info+PCBAHardwareVersionCharacteristic.swift",
        "Bike/Bluetooth/Services/Info/VanMoof+Bike+BluetoothServices+Info.swift",
        "Bike/Bluetooth/Services/Light/VanMoof+Bike+BluetoothServices+Light+ModeCharacteristic.swift",
        "Bike/Bluetooth/Services/Light/VanMoof+Bike+BluetoothServices+Light.swift",
        "Bike/Bluetooth/Services/Maintenance/VanMoof+Bike+BluetoothServices+Maintenance+LogBlockCharacteristic.swift",
        "Bike/Bluetooth/Services/Maintenance/VanMoof+Bike+BluetoothServices+Maintenance+LogModeCharacteristic.swift",
        "Bike/Bluetooth/Services/Maintenance/VanMoof+Bike+BluetoothServices+Maintenance+LogSizeCharacteristic.swift",
        "Bike/Bluetooth/Services/Maintenance/VanMoof+Bike+BluetoothServices+Maintenance.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+DistanceCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+EShifterGearCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+EShifterModeCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+EShiftingPointsCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+PowerLevelCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+SpeedCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+SpeedLimitCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement+UnitSystemCharacteristic.swift",
        "Bike/Bluetooth/Services/Movement/VanMoof+Bike+BluetoothServices+Movement.swift",
        "Bike/Bluetooth/Services/Security/VanMoof+Bike+BluetoothServices+Security+BackupCodeCharacteristic.swift",
        "Bike/Bluetooth/Services/Security/VanMoof+Bike+BluetoothServices+Security+BikeMessageCharacteristic.swift",
        "Bike/Bluetooth/Services/Security/VanMoof+Bike+BluetoothServices+Security+ChallengeCharacteristic.swift",
        "Bike/Bluetooth/Services/Security/VanMoof+Bike+BluetoothServices+Security+KeyIndexCharacteristic.swift",
        "Bike/Bluetooth/Services/Security/VanMoof+Bike+BluetoothServices+Security.swift",
        "Bike/Bluetooth/Services/Sound/VanMoof+Bike+BluetoothServices+Sound+BellSoundCharacteristic.swift",
        "Bike/Bluetooth/Services/Sound/VanMoof+Bike+BluetoothServices+Sound+PlaySoundCharacteristic.swift",
        "Bike/Bluetooth/Services/Sound/VanMoof+Bike+BluetoothServices+Sound+SoundVolumeCharacteristic.swift",
        "Bike/Bluetooth/Services/Sound/VanMoof+Bike+BluetoothServices+Sound.swift",
        "Bike/Bluetooth/Services/State/VanMoof+Bike+BluetoothServices+State+ClockCharacteristic.swift",
        "Bike/Bluetooth/Services/State/VanMoof+Bike+BluetoothServices+State+ErrorsCharacteristic.swift",
        "Bike/Bluetooth/Services/State/VanMoof+Bike+BluetoothServices+State+ModuleModeCharacteristic.swift",
        "Bike/Bluetooth/Services/State/VanMoof+Bike+BluetoothServices+State+ModuleStateCharacteristic.swift",
        "Bike/Bluetooth/Services/State/VanMoof+Bike+BluetoothServices+State+WheelSizeCharacteristic.swift",
        "Bike/Bluetooth/Services/State/VanMoof+Bike+BluetoothServices+State.swift",
        "Bike/Bluetooth/Services/VanMoof+Bike+BluetoothServices.swift",
        "Bike/Bluetooth/Services/VanMoofBikeBluetoothCharacteristic.swift",
        "Bike/Bluetooth/Services/VanMoofBikeBluetoothService.swift",
        "Bike/Configuration/VanMoof+Bike+Configuration.swift",
        "Bike/Details/VanMoof+Bike+Details+CustomerRole.swift",
        "Bike/Details/VanMoof+Bike+Details+Key.swift",
        "Bike/Details/VanMoof+Bike+Details+Links.swift",
        "Bike/Details/VanMoof+Bike+Details+ModelColor.swift",
        "Bike/Details/VanMoof+Bike+Details+ModelDetails.swift",
        "Bike/Details/VanMoof+Bike+Details+Permission.swift",
        "Bike/Details/VanMoof+Bike+Details.swift",
        "Bike/Error/VanMoof+Bike+Error.swift",
        "Bike/Log/VanMoof+Bike+Log.swift",
        "Bike/VanMoof+Bike.swift",
        "TokenStore/InMemoryVanMoofTokenStore.swift",
        "TokenStore/KeychainVanMoofTokenStore.swift",
        "TokenStore/LARightVanMoofTokenStore.swift",
        "TokenStore/NSUbiquitousVanMoofTokenStore.swift",
        "TokenStore/ObservableObjectVanMoofTokenMediator.swift",
        "TokenStore/UserDefaultsVanMoofTokenStore.swift",
        "TokenStore/VanMoofTokenStore.swift",
        "User/VanMoof+User.swift",
        "VanMoof.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "VanMoofCLI",
      "module_type" : "SwiftTarget",
      "name" : "VanMoofCLI",
      "path" : "Sources/VanMoofCLI",
      "product_memberships" : [
        "vanmoof"
      ],
      "sources" : [
        "VanMoofCLI.swift"
      ],
      "target_dependencies" : [
        "VanMoofKit"
      ],
      "type" : "executable"
    }
  ],
  "tools_version" : "5.9"
}
Done.