The Swift Package Index logo.Swift Package Index

Build Information

Successful build of VanMoofKit, reference main (d258b2), with Swift 6.3 for macOS (SPM) on 23 Apr 2026 08:31:38 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/SvenTiigi/VanMoofKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/SvenTiigi/VanMoofKit
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at d258b25 Update README.md
Cloned https://github.com/SvenTiigi/VanMoofKit.git
Revision (git rev-parse @):
d258b2575115f11ccfcfbcb8ecf6dd3c740c30fc
SUCCESS checkout https://github.com/SvenTiigi/VanMoofKit.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "traits": [
    "default"
  ],
  "dependencies": [
    {
      "identity": "vanmoofkit",
      "name": "VanMoofKit",
      "url": "https://github.com/SvenTiigi/VanMoofKit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/VanMoofKit",
      "traits": [
        "default"
      ],
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/SvenTiigi/VanMoofKit.git
[1/1141] Fetching vanmoofkit
Fetched https://github.com/SvenTiigi/VanMoofKit.git from cache (1.23s)
Creating working copy for https://github.com/SvenTiigi/VanMoofKit.git
Working copy of https://github.com/SvenTiigi/VanMoofKit.git resolved at main (d258b25)
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/SvenTiigi/VanMoofKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64
Building for debugging...
[0/7] Write sources
[2/7] Write vanmoof-entitlement.plist
[3/7] Write swift-version--6988338F2F200930.txt
[5/107] Emitting module VanMoofKit
[6/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+BLEChipFirmwareVersionCharacteristic.swift
[7/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+BatteryFirmwareVersionCharacteristic.swift
[8/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+BikeFirmwareVersionCharacteristic.swift
[9/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+ControllerFirmwareVersionCharacteristic.swift
[10/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+EShifterFirmwareVersionCharacteristic.swift
[11/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+GSMFirmwareVersionCharacteristic.swift
[12/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+ModuleBatteryLevelCharacteristic.swift
[13/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+ModuleBatteryStateCharacteristic.swift
[14/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+MotorBatteryLevelCharacteristic.swift
[15/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+MotorBatteryStateCharacteristic.swift
[16/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info+PCBAHardwareVersionCharacteristic.swift
[17/117] Compiling VanMoofKit VanMoof+AuthenticationState.swift
[18/117] Compiling VanMoofKit VanMoof+Credentials.swift
[19/117] Compiling VanMoofKit VanMoof+Token+Key.swift
[20/117] Compiling VanMoofKit VanMoof+Token+MissingError.swift
[21/117] Compiling VanMoofKit VanMoof+Token.swift
[22/117] Compiling VanMoofKit VanMoof+Bike+AlarmMode.swift
[23/117] Compiling VanMoofKit VanMoof+Bike+AlarmState.swift
[24/117] Compiling VanMoofKit VanMoof+Bike+BatteryLevel.swift
[25/117] Compiling VanMoofKit VanMoof+Bike+BatteryState.swift
[26/117] Compiling VanMoofKit VanMoof+Bike+BellSound.swift
[27/117] Compiling VanMoofKit VanMoof+Bike+ClockDate.swift
[28/117] Compiling VanMoofKit VanMoof+Bike+CommunicationError.swift
[29/117] Compiling VanMoofKit VanMoof+Bike+Connect.swift
[30/117] Compiling VanMoofKit VanMoof+Bike+ConnectionState.swift
[31/117] Compiling VanMoofKit VanMoof+Bike+Disconnect.swift
[32/117] Compiling VanMoofKit VanMoof+Bike+ErrorCode.swift
[33/117] Compiling VanMoofKit VanMoof+Bike+Execute.swift
[34/117] Compiling VanMoofKit VanMoof+Bike+FirmwareVersions.swift
[35/117] Compiling VanMoofKit VanMoof+Bike+LightMode.swift
[36/117] Compiling VanMoofKit VanMoof+Bike+LockState.swift
[37/117] Compiling VanMoofKit VanMoof+Bike+ModuleState.swift
[38/117] Compiling VanMoofKit VanMoof+Bike+PlaySound.swift
[39/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Info.swift
[40/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Light+ModeCharacteristic.swift
[41/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Light.swift
[42/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Maintenance+LogBlockCharacteristic.swift
[43/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Maintenance+LogModeCharacteristic.swift
[44/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Maintenance+LogSizeCharacteristic.swift
[45/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Maintenance.swift
[46/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+DistanceCharacteristic.swift
[47/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+EShifterGearCharacteristic.swift
[48/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+EShifterModeCharacteristic.swift
[49/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+EShiftingPointsCharacteristic.swift
[50/117] Compiling VanMoofKit VanMoofBikeBluetoothService.swift
[51/117] Compiling VanMoofKit VanMoof+Bike+Configuration.swift
[52/117] Compiling VanMoofKit VanMoof+Bike+Details+CustomerRole.swift
[53/117] Compiling VanMoofKit VanMoof+Bike+Details+Key.swift
[54/117] Compiling VanMoofKit VanMoof+Bike+Details+Links.swift
[55/117] Compiling VanMoofKit VanMoof+Bike+Details+ModelColor.swift
[56/117] Compiling VanMoofKit VanMoof+Bike+Details+ModelDetails.swift
[57/117] Compiling VanMoofKit VanMoof+Bike+Details+Permission.swift
[58/117] Compiling VanMoofKit VanMoof+Bike+Details.swift
[59/117] Compiling VanMoofKit VanMoof+Bike+Error.swift
[60/117] Compiling VanMoofKit VanMoof+Bike+Log.swift
[61/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Sound+PlaySoundCharacteristic.swift
[62/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Sound+SoundVolumeCharacteristic.swift
[63/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Sound.swift
[64/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+State+ClockCharacteristic.swift
[65/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+State+ErrorsCharacteristic.swift
[66/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+State+ModuleModeCharacteristic.swift
[67/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+State+ModuleStateCharacteristic.swift
[68/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+State+WheelSizeCharacteristic.swift
[69/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+State.swift
[70/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices.swift
[71/117] Compiling VanMoofKit VanMoofBikeBluetoothCharacteristic.swift
[72/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+PowerLevelCharacteristic.swift
[73/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+SpeedCharacteristic.swift
[74/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+SpeedLimitCharacteristic.swift
[75/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement+UnitSystemCharacteristic.swift
[76/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Movement.swift
[77/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Security+BackupCodeCharacteristic.swift
[78/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Security+BikeMessageCharacteristic.swift
[79/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Security+ChallengeCharacteristic.swift
[80/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Security+KeyIndexCharacteristic.swift
[81/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Security.swift
[82/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Sound+BellSoundCharacteristic.swift
[83/117] Compiling VanMoofKit VanMoof+Bike+PowerLevel.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[84/117] Compiling VanMoofKit VanMoof+Bike+SignalStrength.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[85/117] Compiling VanMoofKit VanMoof+Bike+SoundVolume.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[86/117] Compiling VanMoofKit VanMoof+Bike+Speed.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[87/117] Compiling VanMoofKit VanMoof+Bike+SpeedLimit.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[88/117] Compiling VanMoofKit VanMoof+Bike+TotalDistance.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[89/117] Compiling VanMoofKit VanMoof+Bike+UnitSystem.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[90/117] Compiling VanMoofKit VanMoof+Bike+BluetoothCrypto.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[91/117] Compiling VanMoofKit VanMoof+Bike+BluetoothData.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[92/117] Compiling VanMoofKit VanMoof+Bike+BluetoothManager+API.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[93/117] Compiling VanMoofKit VanMoof+Bike+BluetoothManager+CBCentralManagerDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/VanMoofKit/Bike/Bluetooth/Manager/VanMoof+Bike+BluetoothManager+API.swift:464:34: warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
462 |                         ) { [weak self] in
463 |                             // Read value
464 |                             try? self?.connectedPeripheral
    |                                  `- warning: capture of 'self' with non-Sendable type 'VanMoof.Bike.BluetoothManager?' in a '@Sendable' closure [#SendableClosureCaptures]
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
/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:466:42: warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
464 |                             try? self?.connectedPeripheral
465 |                                 .readValue(
466 |                                     for: updatedCoreBluetoothCharacterstic
    |                                          `- warning: capture of 'updatedCoreBluetoothCharacterstic' with non-Sendable type 'CBCharacteristic' in a '@Sendable' closure [#SendableClosureCaptures]
467 |                                 )
468 |                         }
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCharacteristic.h:57:28: note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 55 |  */
 56 | NS_CLASS_AVAILABLE(10_7, 5_0)
 57 | CB_EXTERN_CLASS @interface CBCharacteristic : CBAttribute
    |                            `- note: class 'CBCharacteristic' does not conform to the 'Sendable' protocol
 58 |
 59 | /*!
/Users/admin/builder/spi-builder-workspace/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 |
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[94/117] Compiling VanMoofKit VanMoof+Bike+BluetoothManager+CBPeripheralDelegate.swift
[95/117] Compiling VanMoofKit VanMoof+Bike+BluetoothManager+Event.swift
[96/117] Compiling VanMoofKit VanMoof+Bike+BluetoothManager.swift
[97/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Defence+AlarmModeCharacteristic.swift
[98/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Defence+AlarmStateCharacteristic.swift
[99/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Defence+LockStateCharacteristic.swift
[100/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Defence+UnlockRequestCharacteristic.swift
[101/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Defence.swift
[102/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Firmware+BlockCharacteristic.swift
[103/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Firmware+MetadataCharacteristic.swift
[104/117] Compiling VanMoofKit VanMoof+Bike+BluetoothServices+Firmware.swift
[105/117] Compiling VanMoofKit VanMoof+Bike.swift
[106/117] Compiling VanMoofKit InMemoryVanMoofTokenStore.swift
[107/117] Compiling VanMoofKit KeychainVanMoofTokenStore.swift
[108/117] Compiling VanMoofKit LARightVanMoofTokenStore.swift
[109/117] Compiling VanMoofKit NSUbiquitousVanMoofTokenStore.swift
[110/117] Compiling VanMoofKit ObservableObjectVanMoofTokenMediator.swift
[111/117] Compiling VanMoofKit UserDefaultsVanMoofTokenStore.swift
[112/117] Compiling VanMoofKit VanMoofTokenStore.swift
[113/117] Compiling VanMoofKit VanMoof+User.swift
[114/117] Compiling VanMoofKit VanMoof.swift
[115/119] Compiling VanMoofCLI VanMoofCLI.swift
[116/119] Emitting module VanMoofCLI
[116/119] Write Objects.LinkFileList
[117/119] Linking vanmoof
[118/119] Applying vanmoof
Build complete! (7.15s)
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.