This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of OldMoofKit with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 77

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
   |                       |- warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lockState' 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
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:51:16: warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | extension MutedSounds: CustomStringConvertible {
51 |     static var debugDescriptions: [(Self, String)] = [
   |                |- warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'debugDescriptions' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'debugDescriptions' 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
52 |         (.feedback, "feedback"),
53 |         (.timer, "timer"),
[20/40] Compiling OldMoofKit MotorAssistance.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:17:23: warning: static property 'feedback' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
15 |
16 |     /// The sound that signals feedback to configuration changes.
17 |     public static let feedback = MutedSounds(rawValue: 1 << 0)
   |                       |- warning: static property 'feedback' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'feedback' 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
18 | //    public static let unknown1 = MuteState(rawValue: 1 << 1) // long tick on unlock, long tick on lock
19 | //    public static let unknown2 = MuteState(rawValue: 1 << 2) // long tick on lock
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:21:23: warning: static property 'timer' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
19 | //    public static let unknown2 = MuteState(rawValue: 1 << 2) // long tick on lock
20 |     /// The sound that signals locking the bike.
21 |     public static let timer = MutedSounds(rawValue: 1 << 3) // no lockTimer
   |                       |- warning: static property 'timer' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'timer' 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
22 | //      public static let unknown4 = MuteState(rawValue: 1 << 4) // long tick on unlock, short tick on lock
23 | //      public static let unknown5 = MuteState(rawValue: 1 << 5) // very long tick on unlock, short tick on lock
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:28:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
26 |
27 |     /// The sound that signals the bike got locked.
28 |     public static let lock = MutedSounds(rawValue: 1 << 8)
   |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lock' 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
29 |     /// The sound that signals the bike got unlocked.
30 |     public static let unlock = MutedSounds(rawValue: 1 << 9)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:30:23: warning: static property 'unlock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
28 |     public static let lock = MutedSounds(rawValue: 1 << 8)
29 |     /// The sound that signals the bike got unlocked.
30 |     public static let unlock = MutedSounds(rawValue: 1 << 9)
   |                       |- warning: static property 'unlock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'unlock' 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
31 | //    public static let unknownA = MuteState(rawValue: 1 << 10)
32 | //    public static let unknownB = MuteState(rawValue: 1 << 11)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:34:23: warning: static property 'wakeup' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
32 | //    public static let unknownB = MuteState(rawValue: 1 << 11)
33 |     /// The sound that signals that the bike wakes up from sleep.
34 |     public static let wakeup = MutedSounds(rawValue: 1 << 12)
   |                       |- warning: static property 'wakeup' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'wakeup' 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
35 |     /// The sound that signals that the bike shuts down.
36 |     public static let sleep = MutedSounds(rawValue: 1 << 13)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:36:23: warning: static property 'sleep' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
34 |     public static let wakeup = MutedSounds(rawValue: 1 << 12)
35 |     /// The sound that signals that the bike shuts down.
36 |     public static let sleep = MutedSounds(rawValue: 1 << 13)
   |                       |- warning: static property 'sleep' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'sleep' 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
37 | //    public static let unknownE = MuteState(rawValue: 1 << 14)
38 | //    public static let unknownF = MuteState(rawValue: 1 << 15)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:41:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
39 |
40 |     /// All sounds.
41 |     public static let all = MutedSounds([.feedback, .lock, .unlock, .wakeup, .sleep, .timer])
   |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'all' 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
42 |     /// No sound at all.
43 |     public static let none = MutedSounds([])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:43:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
41 |     public static let all = MutedSounds([.feedback, .lock, .unlock, .wakeup, .sleep, .timer])
42 |     /// No sound at all.
43 |     public static let none = MutedSounds([])
   |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'none' 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
44 |     /// All sounds related to the ``ModuleState``.
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:45:23: warning: static property 'moduleState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
43 |     public static let none = MutedSounds([])
44 |     /// All sounds related to the ``ModuleState``.
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
   |                       |- warning: static property 'moduleState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'moduleState' 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
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:47:23: warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
   |                       |- warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lockState' 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
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:51:16: warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | extension MutedSounds: CustomStringConvertible {
51 |     static var debugDescriptions: [(Self, String)] = [
   |                |- warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'debugDescriptions' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'debugDescriptions' 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
52 |         (.feedback, "feedback"),
53 |         (.timer, "timer"),
[21/40] Compiling OldMoofKit MutedSounds.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:17:23: warning: static property 'feedback' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
15 |
16 |     /// The sound that signals feedback to configuration changes.
17 |     public static let feedback = MutedSounds(rawValue: 1 << 0)
   |                       |- warning: static property 'feedback' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'feedback' 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
18 | //    public static let unknown1 = MuteState(rawValue: 1 << 1) // long tick on unlock, long tick on lock
19 | //    public static let unknown2 = MuteState(rawValue: 1 << 2) // long tick on lock
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:21:23: warning: static property 'timer' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
19 | //    public static let unknown2 = MuteState(rawValue: 1 << 2) // long tick on lock
20 |     /// The sound that signals locking the bike.
21 |     public static let timer = MutedSounds(rawValue: 1 << 3) // no lockTimer
   |                       |- warning: static property 'timer' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'timer' 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
22 | //      public static let unknown4 = MuteState(rawValue: 1 << 4) // long tick on unlock, short tick on lock
23 | //      public static let unknown5 = MuteState(rawValue: 1 << 5) // very long tick on unlock, short tick on lock
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:28:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
26 |
27 |     /// The sound that signals the bike got locked.
28 |     public static let lock = MutedSounds(rawValue: 1 << 8)
   |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lock' 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
29 |     /// The sound that signals the bike got unlocked.
30 |     public static let unlock = MutedSounds(rawValue: 1 << 9)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:30:23: warning: static property 'unlock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
28 |     public static let lock = MutedSounds(rawValue: 1 << 8)
29 |     /// The sound that signals the bike got unlocked.
30 |     public static let unlock = MutedSounds(rawValue: 1 << 9)
   |                       |- warning: static property 'unlock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'unlock' 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
31 | //    public static let unknownA = MuteState(rawValue: 1 << 10)
32 | //    public static let unknownB = MuteState(rawValue: 1 << 11)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:34:23: warning: static property 'wakeup' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
32 | //    public static let unknownB = MuteState(rawValue: 1 << 11)
33 |     /// The sound that signals that the bike wakes up from sleep.
34 |     public static let wakeup = MutedSounds(rawValue: 1 << 12)
   |                       |- warning: static property 'wakeup' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'wakeup' 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
35 |     /// The sound that signals that the bike shuts down.
36 |     public static let sleep = MutedSounds(rawValue: 1 << 13)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:36:23: warning: static property 'sleep' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
34 |     public static let wakeup = MutedSounds(rawValue: 1 << 12)
35 |     /// The sound that signals that the bike shuts down.
36 |     public static let sleep = MutedSounds(rawValue: 1 << 13)
   |                       |- warning: static property 'sleep' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'sleep' 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
37 | //    public static let unknownE = MuteState(rawValue: 1 << 14)
38 | //    public static let unknownF = MuteState(rawValue: 1 << 15)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:41:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
39 |
40 |     /// All sounds.
41 |     public static let all = MutedSounds([.feedback, .lock, .unlock, .wakeup, .sleep, .timer])
   |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'all' 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
42 |     /// No sound at all.
43 |     public static let none = MutedSounds([])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:43:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
41 |     public static let all = MutedSounds([.feedback, .lock, .unlock, .wakeup, .sleep, .timer])
42 |     /// No sound at all.
43 |     public static let none = MutedSounds([])
   |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'none' 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
44 |     /// All sounds related to the ``ModuleState``.
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:45:23: warning: static property 'moduleState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
43 |     public static let none = MutedSounds([])
44 |     /// All sounds related to the ``ModuleState``.
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
   |                       |- warning: static property 'moduleState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'moduleState' 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
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:47:23: warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
   |                       |- warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lockState' 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
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:51:16: warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | extension MutedSounds: CustomStringConvertible {
51 |     static var debugDescriptions: [(Self, String)] = [
   |                |- warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'debugDescriptions' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'debugDescriptions' 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
52 |         (.feedback, "feedback"),
53 |         (.timer, "timer"),
[22/40] Compiling OldMoofKit Parameters.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:17:23: warning: static property 'feedback' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
15 |
16 |     /// The sound that signals feedback to configuration changes.
17 |     public static let feedback = MutedSounds(rawValue: 1 << 0)
   |                       |- warning: static property 'feedback' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'feedback' 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
18 | //    public static let unknown1 = MuteState(rawValue: 1 << 1) // long tick on unlock, long tick on lock
19 | //    public static let unknown2 = MuteState(rawValue: 1 << 2) // long tick on lock
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:21:23: warning: static property 'timer' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
19 | //    public static let unknown2 = MuteState(rawValue: 1 << 2) // long tick on lock
20 |     /// The sound that signals locking the bike.
21 |     public static let timer = MutedSounds(rawValue: 1 << 3) // no lockTimer
   |                       |- warning: static property 'timer' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'timer' 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
22 | //      public static let unknown4 = MuteState(rawValue: 1 << 4) // long tick on unlock, short tick on lock
23 | //      public static let unknown5 = MuteState(rawValue: 1 << 5) // very long tick on unlock, short tick on lock
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:28:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
26 |
27 |     /// The sound that signals the bike got locked.
28 |     public static let lock = MutedSounds(rawValue: 1 << 8)
   |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lock' 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
29 |     /// The sound that signals the bike got unlocked.
30 |     public static let unlock = MutedSounds(rawValue: 1 << 9)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:30:23: warning: static property 'unlock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
28 |     public static let lock = MutedSounds(rawValue: 1 << 8)
29 |     /// The sound that signals the bike got unlocked.
30 |     public static let unlock = MutedSounds(rawValue: 1 << 9)
   |                       |- warning: static property 'unlock' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'unlock' 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
31 | //    public static let unknownA = MuteState(rawValue: 1 << 10)
32 | //    public static let unknownB = MuteState(rawValue: 1 << 11)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:34:23: warning: static property 'wakeup' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
32 | //    public static let unknownB = MuteState(rawValue: 1 << 11)
33 |     /// The sound that signals that the bike wakes up from sleep.
34 |     public static let wakeup = MutedSounds(rawValue: 1 << 12)
   |                       |- warning: static property 'wakeup' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'wakeup' 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
35 |     /// The sound that signals that the bike shuts down.
36 |     public static let sleep = MutedSounds(rawValue: 1 << 13)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:36:23: warning: static property 'sleep' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
34 |     public static let wakeup = MutedSounds(rawValue: 1 << 12)
35 |     /// The sound that signals that the bike shuts down.
36 |     public static let sleep = MutedSounds(rawValue: 1 << 13)
   |                       |- warning: static property 'sleep' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'sleep' 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
37 | //    public static let unknownE = MuteState(rawValue: 1 << 14)
38 | //    public static let unknownF = MuteState(rawValue: 1 << 15)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:41:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
39 |
40 |     /// All sounds.
41 |     public static let all = MutedSounds([.feedback, .lock, .unlock, .wakeup, .sleep, .timer])
   |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'all' 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
42 |     /// No sound at all.
43 |     public static let none = MutedSounds([])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:43:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
41 |     public static let all = MutedSounds([.feedback, .lock, .unlock, .wakeup, .sleep, .timer])
42 |     /// No sound at all.
43 |     public static let none = MutedSounds([])
   |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'none' 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
44 |     /// All sounds related to the ``ModuleState``.
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:45:23: warning: static property 'moduleState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
43 |     public static let none = MutedSounds([])
44 |     /// All sounds related to the ``ModuleState``.
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
   |                       |- warning: static property 'moduleState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'moduleState' 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
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:47:23: warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | /// Defines which sounds are muted and wich sounds can be heard, provided that the bike has a speaker.
 9 | public struct MutedSounds: OptionSet {
   |               `- note: consider making struct 'MutedSounds' conform to the 'Sendable' protocol
10 |     public let rawValue: UInt16
11 |
   :
45 |     public static let moduleState = MutedSounds([.wakeup, .sleep])
46 |     /// All sounds related to the ``Lock``.
47 |     public static let lockState = MutedSounds([.lock, .unlock])
   |                       |- warning: static property 'lockState' is not concurrency-safe because non-'Sendable' type 'MutedSounds' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'lockState' 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
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Data/MutedSounds.swift:51:16: warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | extension MutedSounds: CustomStringConvertible {
51 |     static var debugDescriptions: [(Self, String)] = [
   |                |- warning: static property 'debugDescriptions' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'debugDescriptions' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'debugDescriptions' 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
52 |         (.feedback, "feedback"),
53 |         (.timer, "timer"),
[23/40] Compiling OldMoofKit Logger.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:11:24: warning: static property 'subsystem' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
   |                        |- warning: static property 'subsystem' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'subsystem' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'subsystem' 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 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
[24/40] Compiling OldMoofKit VanMoof.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:11:24: warning: static property 'subsystem' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
   |                        |- warning: static property 'subsystem' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'subsystem' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'subsystem' 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 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
[25/40] Compiling OldMoofKit VanMoofError.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:11:24: warning: static property 'subsystem' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
   |                        |- warning: static property 'subsystem' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'subsystem' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'subsystem' 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 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
[26/40] Compiling OldMoofKit BluetoothScanner.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothScanner.swift:49:21: warning: capture of 'self' with non-sendable type 'BluetoothScanner' in a `@Sendable` closure; this is an error in the Swift 6 language mode
14 | }
15 |
16 | class BluetoothScanner: NSObject, BluetoothScannerProtocol, CBCentralManagerDelegate {
   |       `- note: class 'BluetoothScanner' does not conform to the 'Sendable' protocol
17 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.scanner", qos: .background)
18 |     private var central: CBCentralManager?
   :
47 |             DispatchQueue.main.sync {
48 |                 self.timer = Timer.scheduledTimer(withTimeInterval: self.timeout, repeats: false) { _ in
49 |                     self.central?.stopScan()
   |                     `- warning: capture of 'self' with non-sendable type 'BluetoothScanner' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 |                     self.timer?.invalidate()
51 |                     self.timer = nil
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothScanner.swift:48:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
46 |             self.central?.scanForPeripherals(withServices: self.services)
47 |             DispatchQueue.main.sync {
48 |                 self.timer = Timer.scheduledTimer(withTimeInterval: self.timeout, repeats: false) { _ in
   |                 |- 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
49 |                     self.central?.stopScan()
50 |                     self.timer?.invalidate()
[27/40] Compiling OldMoofKit BluetoothState.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothScanner.swift:49:21: warning: capture of 'self' with non-sendable type 'BluetoothScanner' in a `@Sendable` closure; this is an error in the Swift 6 language mode
14 | }
15 |
16 | class BluetoothScanner: NSObject, BluetoothScannerProtocol, CBCentralManagerDelegate {
   |       `- note: class 'BluetoothScanner' does not conform to the 'Sendable' protocol
17 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.scanner", qos: .background)
18 |     private var central: CBCentralManager?
   :
47 |             DispatchQueue.main.sync {
48 |                 self.timer = Timer.scheduledTimer(withTimeInterval: self.timeout, repeats: false) { _ in
49 |                     self.central?.stopScan()
   |                     `- warning: capture of 'self' with non-sendable type 'BluetoothScanner' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 |                     self.timer?.invalidate()
51 |                     self.timer = nil
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothScanner.swift:48:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
46 |             self.central?.scanForPeripherals(withServices: self.services)
47 |             DispatchQueue.main.sync {
48 |                 self.timer = Timer.scheduledTimer(withTimeInterval: self.timeout, repeats: false) { _ in
   |                 |- 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
49 |                     self.central?.stopScan()
50 |                     self.timer?.invalidate()
[28/40] Compiling OldMoofKit Data+Crypt.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothScanner.swift:49:21: warning: capture of 'self' with non-sendable type 'BluetoothScanner' in a `@Sendable` closure; this is an error in the Swift 6 language mode
14 | }
15 |
16 | class BluetoothScanner: NSObject, BluetoothScannerProtocol, CBCentralManagerDelegate {
   |       `- note: class 'BluetoothScanner' does not conform to the 'Sendable' protocol
17 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.scanner", qos: .background)
18 |     private var central: CBCentralManager?
   :
47 |             DispatchQueue.main.sync {
48 |                 self.timer = Timer.scheduledTimer(withTimeInterval: self.timeout, repeats: false) { _ in
49 |                     self.central?.stopScan()
   |                     `- warning: capture of 'self' with non-sendable type 'BluetoothScanner' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 |                     self.timer?.invalidate()
51 |                     self.timer = nil
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothScanner.swift:48:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
46 |             self.central?.scanForPeripherals(withServices: self.services)
47 |             DispatchQueue.main.sync {
48 |                 self.timer = Timer.scheduledTimer(withTimeInterval: self.timeout, repeats: false) { _ in
   |                 |- 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
49 |                     self.central?.stopScan()
50 |                     self.timer?.invalidate()
[29/40] Compiling OldMoofKit WriteRequest.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothConnection.swift:144:17: warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 26 | }
 27 |
 28 | class BluetoothConnection: NSObject, BluetoothConnectionProtocol, CBCentralManagerDelegate, CBPeripheralDelegate {
    |       `- note: class 'BluetoothConnection' does not conform to the 'Sendable' protocol
 29 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.connection", qos: .background)
 30 |     private var central: CBCentralManager?
    :
142 |         if delay != .infinity {
143 |             self.queue.asyncAfter(deadline: .now() + delay) {
144 |                 self.central?.connect(self.peripheral)
    |                 `- warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |             }
146 |         }
[30/40] Compiling OldMoofKit BluetoothConnection.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothConnection.swift:144:17: warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 26 | }
 27 |
 28 | class BluetoothConnection: NSObject, BluetoothConnectionProtocol, CBCentralManagerDelegate, CBPeripheralDelegate {
    |       `- note: class 'BluetoothConnection' does not conform to the 'Sendable' protocol
 29 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.connection", qos: .background)
 30 |     private var central: CBCentralManager?
    :
142 |         if delay != .infinity {
143 |             self.queue.asyncAfter(deadline: .now() + delay) {
144 |                 self.central?.connect(self.peripheral)
    |                 `- warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |             }
146 |         }
[31/40] Compiling OldMoofKit BluetoothError.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothConnection.swift:144:17: warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 26 | }
 27 |
 28 | class BluetoothConnection: NSObject, BluetoothConnectionProtocol, CBCentralManagerDelegate, CBPeripheralDelegate {
    |       `- note: class 'BluetoothConnection' does not conform to the 'Sendable' protocol
 29 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.connection", qos: .background)
 30 |     private var central: CBCentralManager?
    :
142 |         if delay != .infinity {
143 |             self.queue.asyncAfter(deadline: .now() + delay) {
144 |                 self.central?.connect(self.peripheral)
    |                 `- warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |             }
146 |         }
[32/40] Compiling OldMoofKit BluetoothNotification.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:13:16: warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                `- warning: static property 'bluetooth' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
14 | }
15 |
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
   |                |- note: annotate 'bluetooth' 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
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bluetooth/BluetoothConnection.swift:144:17: warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 26 | }
 27 |
 28 | class BluetoothConnection: NSObject, BluetoothConnectionProtocol, CBCentralManagerDelegate, CBPeripheralDelegate {
    |       `- note: class 'BluetoothConnection' does not conform to the 'Sendable' protocol
 29 |     private let queue = DispatchQueue(label: "com.realvirtuality.bluetooth.connection", qos: .background)
 30 |     private var central: CBCentralManager?
    :
142 |         if delay != .infinity {
143 |             self.queue.asyncAfter(deadline: .now() + delay) {
144 |                 self.central?.connect(self.peripheral)
    |                 `- warning: capture of 'self' with non-sendable type 'BluetoothConnection' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |             }
146 |         }
[33/40] Compiling OldMoofKit BikeProfile.swift
[34/40] Compiling OldMoofKit BikeProfileName.swift
[35/40] Compiling OldMoofKit Alarm.swift
[36/40] Compiling OldMoofKit BatteryState.swift
[37/40] Compiling OldMoofKit Bike.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:633:23: warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// A connectable bike.
 13 | public final class Bike: Codable {
    |                    `- note: class 'Bike' does not conform to the 'Sendable' protocol
 14 |     enum CodingKeys: String, CodingKey {
 15 |         case identifier
    :
631 |         self.bluetoothState = self.connection.statePublisher.sink { state in
632 |             Task {
633 |                 await self.onChangedConnectionState(state)
    |                       `- warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
634 |             }
635 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeDetails.swift:10:5: warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let bleProfileToBikeProfile: [BikeProfileName: any BikeProfile] = [
   |     |- warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'bleProfileToBikeProfile' 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
11 |     .smartBike2016: SmartBike2016Profile(),
12 |     .smartBike2018: SmartBike2018Profile(),
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfileName.swift:11:13: note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
 9 |
10 | /// All valid bluetooth low energy profile names known up to date.
11 | public enum BikeProfileName: LosslessStringConvertible {
   |             `- note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
12 |     /// The ble profile of a SmartBike.
13 |     case smartBike2016
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfile.swift:3:10: note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 1 | import CoreBluetooth
 2 |
 3 | protocol BikeProfile {
   |          `- note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 4 |     var model: String { get }
 5 |     var identifier: CBUUID { get }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct SmartBike2016Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:19:23: warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
17 |
18 |     /// This bike has an electronically disengaging, physical lock.
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
   |                       |- warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'elock' 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
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:21:23: warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
   |                       |- warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'alarm' 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
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:25:23: warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
   |                       |- warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'speaker' 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
26 | }
27 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2017Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:23:23: warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
   |                       |- warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'motor' 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
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2018Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
[38/40] Compiling OldMoofKit BikeDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:633:23: warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// A connectable bike.
 13 | public final class Bike: Codable {
    |                    `- note: class 'Bike' does not conform to the 'Sendable' protocol
 14 |     enum CodingKeys: String, CodingKey {
 15 |         case identifier
    :
631 |         self.bluetoothState = self.connection.statePublisher.sink { state in
632 |             Task {
633 |                 await self.onChangedConnectionState(state)
    |                       `- warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
634 |             }
635 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeDetails.swift:10:5: warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let bleProfileToBikeProfile: [BikeProfileName: any BikeProfile] = [
   |     |- warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'bleProfileToBikeProfile' 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
11 |     .smartBike2016: SmartBike2016Profile(),
12 |     .smartBike2018: SmartBike2018Profile(),
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfileName.swift:11:13: note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
 9 |
10 | /// All valid bluetooth low energy profile names known up to date.
11 | public enum BikeProfileName: LosslessStringConvertible {
   |             `- note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
12 |     /// The ble profile of a SmartBike.
13 |     case smartBike2016
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfile.swift:3:10: note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 1 | import CoreBluetooth
 2 |
 3 | protocol BikeProfile {
   |          `- note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 4 |     var model: String { get }
 5 |     var identifier: CBUUID { get }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct SmartBike2016Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:19:23: warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
17 |
18 |     /// This bike has an electronically disengaging, physical lock.
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
   |                       |- warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'elock' 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
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:21:23: warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
   |                       |- warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'alarm' 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
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:25:23: warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
   |                       |- warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'speaker' 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
26 | }
27 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2017Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:23:23: warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
   |                       |- warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'motor' 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
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2018Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
[39/40] Compiling OldMoofKit BikeError.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:633:23: warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// A connectable bike.
 13 | public final class Bike: Codable {
    |                    `- note: class 'Bike' does not conform to the 'Sendable' protocol
 14 |     enum CodingKeys: String, CodingKey {
 15 |         case identifier
    :
631 |         self.bluetoothState = self.connection.statePublisher.sink { state in
632 |             Task {
633 |                 await self.onChangedConnectionState(state)
    |                       `- warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
634 |             }
635 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeDetails.swift:10:5: warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let bleProfileToBikeProfile: [BikeProfileName: any BikeProfile] = [
   |     |- warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'bleProfileToBikeProfile' 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
11 |     .smartBike2016: SmartBike2016Profile(),
12 |     .smartBike2018: SmartBike2018Profile(),
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfileName.swift:11:13: note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
 9 |
10 | /// All valid bluetooth low energy profile names known up to date.
11 | public enum BikeProfileName: LosslessStringConvertible {
   |             `- note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
12 |     /// The ble profile of a SmartBike.
13 |     case smartBike2016
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfile.swift:3:10: note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 1 | import CoreBluetooth
 2 |
 3 | protocol BikeProfile {
   |          `- note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 4 |     var model: String { get }
 5 |     var identifier: CBUUID { get }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct SmartBike2016Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:19:23: warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
17 |
18 |     /// This bike has an electronically disengaging, physical lock.
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
   |                       |- warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'elock' 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
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:21:23: warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
   |                       |- warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'alarm' 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
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:25:23: warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
   |                       |- warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'speaker' 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
26 | }
27 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2017Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:23:23: warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
   |                       |- warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'motor' 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
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2018Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
[40/40] Compiling OldMoofKit BikeHardware.swift
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:81:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 79 |
 80 |     /// The current lock state of the bike. Can be set with ``set(lock:)``.
 81 |     private (set) public var lock: Lock = .locked {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 82 |         didSet {
 83 |             self.lockPublisher.send(self.lock)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:90:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 88 |     ///
 89 |     /// If your bike does not support an alarm, this value will be `nil`.
 90 |     private (set) public var alarm: Alarm? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 91 |         didSet {
 92 |             if let alarm = self.alarm {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:99:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 97 |
 98 |     /// The current lighting mode of the bike. Can be set with ``set(lighting:)``.
 99 |     private (set) public var lighting: Lighting = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
100 |         didSet {
101 |             self.lightingPublisher.send(self.lighting)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:108:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
106 |     ///
107 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
108 |     private (set) public var batteryLevel: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
109 |         didSet {
110 |             self.batteryLevelPublisher.send(self.batteryLevel)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:117:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
115 |     ///
116 |     /// Refers to the motor battery in bikes that do have a motor, otherwise refers to the module battery.
117 |     private (set) public var batteryState: BatteryState = .discharging {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
118 |         didSet {
119 |             self.batteryStatePublisher.send(self.batteryState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:126:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
124 |     ///
125 |     /// If the bike is in standy, use ``wakeup()`` to wake it up.
126 |     private (set) public var moduleState: ModuleState = .off {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
127 |         didSet {
128 |             self.moduleStatePublisher.send(self.moduleState)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:133:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
131 |
132 |     /// The current error code of the bike.
133 |     private (set) public var errorCode: ErrorCode = ErrorCode() {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
134 |         didSet {
135 |             self.errorCodePublisher.send(self.errorCode)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:142:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
140 |     ///
141 |     /// If your bike does not have a motor, this value will be `nil`.
142 |     private (set) public var motorAssistance: MotorAssistance? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
143 |         didSet {
144 |             if let motorAssistance = self.motorAssistance {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:153:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
151 |     ///
152 |     /// If your bike does not have a speaker, this value will always be empty.
153 |     private (set) public var mutedSounds: MutedSounds = [] {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
154 |         didSet {
155 |             self.mutedSoundsPublisher.send(self.mutedSounds)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:160:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
158 |
159 |     /// The current speed in km/h of the bike.
160 |     private (set) public var speed: Int = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
161 |         didSet {
162 |             self.speedPublisher.send(self.speed)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:167:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
165 |
166 |     /// The currently travelled distance in hectometers of the bike.
167 |     private (set) public var distance: Double = 0 {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
168 |         didSet {
169 |             self.distancePublisher.send(self.distance)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:179:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
177 |     /// country may be illegal in some jurisdictions. Use at your own risk.
178 |     /// If your bike does not have a motor, this value will be `nil`.
179 |     private (set) public var region: Region? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
180 |         didSet {
181 |             if let region = self.region {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:190:5: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
188 |     ///
189 |     /// Defines wether speed and distance should be converted into mph.
190 |     private (set) public var unit: Unit? {
    |     `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
191 |         didSet {
192 |             if let unit = self.unit {
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:12:16: warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                `- warning: static property 'bike' is not concurrency-safe because non-'Sendable' type 'Logger' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
os.Logger:2:15: note: struct 'Logger' does not conform to the 'Sendable' protocol
 1 | @available(macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0, *)
 2 | public struct Logger {
   |               `- note: struct 'Logger' does not conform to the 'Sendable' protocol
 3 |     public init(subsystem: String, category: String)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Logger.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 6 | //
 7 |
 8 | import OSLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'os'
 9 |
10 | extension Logger {
11 |     private static var subsystem = Bundle.main.bundleIdentifier!
12 |     static let bike = Logger(subsystem: subsystem, category: "bike")
   |                |- note: annotate 'bike' 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 |     static let bluetooth = Logger(subsystem: subsystem, category: "bluetooth")
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Bike.swift:633:23: warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// A connectable bike.
 13 | public final class Bike: Codable {
    |                    `- note: class 'Bike' does not conform to the 'Sendable' protocol
 14 |     enum CodingKeys: String, CodingKey {
 15 |         case identifier
    :
631 |         self.bluetoothState = self.connection.statePublisher.sink { state in
632 |             Task {
633 |                 await self.onChangedConnectionState(state)
    |                       `- warning: capture of 'self' with non-sendable type 'Bike' in a `@Sendable` closure; this is an error in the Swift 6 language mode
634 |             }
635 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeDetails.swift:10:5: warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let bleProfileToBikeProfile: [BikeProfileName: any BikeProfile] = [
   |     |- warning: let 'bleProfileToBikeProfile' is not concurrency-safe because non-'Sendable' type '[BikeProfileName : any BikeProfile]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'bleProfileToBikeProfile' 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
11 |     .smartBike2016: SmartBike2016Profile(),
12 |     .smartBike2018: SmartBike2018Profile(),
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfileName.swift:11:13: note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
 9 |
10 | /// All valid bluetooth low energy profile names known up to date.
11 | public enum BikeProfileName: LosslessStringConvertible {
   |             `- note: consider making enum 'BikeProfileName' conform to the 'Sendable' protocol
12 |     /// The ble profile of a SmartBike.
13 |     case smartBike2016
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeProfile.swift:3:10: note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 1 | import CoreBluetooth
 2 |
 3 | protocol BikeProfile {
   |          `- note: protocol 'BikeProfile' does not conform to the 'Sendable' protocol
 4 |     var model: String { get }
 5 |     var identifier: CBUUID { get }
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/SmartBike2016Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct SmartBike2016Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:19:23: warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
17 |
18 |     /// This bike has an electronically disengaging, physical lock.
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
   |                       |- warning: static property 'elock' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'elock' 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
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:21:23: warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
19 |     public static let elock = BikeHardware(rawValue: 1 << 0)
20 |     /// This bike has an automatic anti-theft device.
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
   |                       |- warning: static property 'alarm' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'alarm' 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
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:25:23: warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
   |                       |- warning: static property 'speaker' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'speaker' 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
26 | }
27 |
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2017Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2017Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/BikeHardware.swift:23:23: warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// Represents the hardware capabilities a bike may have.
11 | public struct BikeHardware: OptionSet {
   |               `- note: consider making struct 'BikeHardware' conform to the 'Sendable' protocol
12 |     public let rawValue: Int
13 |
   :
21 |     public static let alarm = BikeHardware(rawValue: 1 << 1)
22 |     /// This bike has a motor.
23 |     public static let motor = BikeHardware(rawValue: 1 << 2)
   |                       |- warning: static property 'motor' is not concurrency-safe because non-'Sendable' type 'BikeHardware' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'motor' 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
24 |     /// This bike has a speaker.
25 |     public static let speaker = BikeHardware(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:30:24: warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        `- warning: static property 'identifier' is not concurrency-safe because non-'Sendable' type 'CBUUID' may have shared mutable state; this is an error in the Swift 6 language mode
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
CoreBluetooth.CBUUID:2:12: note: class 'CBUUID' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class CBUUID : NSObject, NSCopying {
   |            `- note: class 'CBUUID' does not conform to the 'Sendable' protocol
 3 |     open var data: Data { get }
 4 |     @available(macOS 10.10, *)
/Users/admin/builder/spi-builder-workspace/Sources/OldMoofKit/Bike/Profiles/Electrified2018Profile.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  6 | //
  7 |
  8 | import CoreBluetooth
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreBluetooth'
  9 |
 10 | struct Electified2018Profile: BikeProfile {
    :
 28 |
 29 |         struct Bike {
 30 |             static let identifier = CBUUID(string: "8e7f1a50-087a-44c9-b292-a2c628fdd9aa")
    |                        |- note: annotate 'identifier' 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
 31 |             static let challenge = CBUUID(string: "8e7f1a51-087a-44c9-b292-a2c628fdd9aa")
 32 |             // static let passcode = CBUUID(string: "8e7f1a52-087a-44c9-b292-a2c628fdd9aa")
Build complete! (22.15s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "OldMoofKit",
  "name" : "OldMoofKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "ios",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "OldMoofKit",
      "targets" : [
        "OldMoofKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "OldMoofKitTests",
      "module_type" : "SwiftTarget",
      "name" : "OldMoofKitTests",
      "path" : "Tests/OldMoofKitTests",
      "sources" : [
        "TestBike.swift",
        "TestBikeDetails.swift",
        "TestEncryption.swift",
        "TestHexString.swift",
        "TestStringValidation.swift",
        "TestWebApi.swift"
      ],
      "target_dependencies" : [
        "OldMoofKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OldMoofKit",
      "module_type" : "SwiftTarget",
      "name" : "OldMoofKit",
      "path" : "Sources/OldMoofKit",
      "product_memberships" : [
        "OldMoofKit"
      ],
      "sources" : [
        "Bike/Bike.swift",
        "Bike/BikeDetails.swift",
        "Bike/BikeError.swift",
        "Bike/BikeHardware.swift",
        "Bike/BikeProfile.swift",
        "Bike/BikeProfileName.swift",
        "Bike/Data/Alarm.swift",
        "Bike/Data/BatteryState.swift",
        "Bike/Data/BikeState.swift",
        "Bike/Data/ErrorCode.swift",
        "Bike/Data/Lighting.swift",
        "Bike/Data/Lock.swift",
        "Bike/Data/ModuleState.swift",
        "Bike/Data/MotorAssistance.swift",
        "Bike/Data/MutedSounds.swift",
        "Bike/Data/Parameters.swift",
        "Bike/Data/Region.swift",
        "Bike/Data/Sound.swift",
        "Bike/Data/Unit.swift",
        "Bike/Profiles/Electrified2017Profile.swift",
        "Bike/Profiles/Electrified2018Profile.swift",
        "Bike/Profiles/SmartBike2016Profile.swift",
        "Bike/Profiles/SmartBike2018Profile.swift",
        "Bike/ReadRequest.swift",
        "Bike/WriteRequest.swift",
        "Bluetooth/BluetoothConnection.swift",
        "Bluetooth/BluetoothError.swift",
        "Bluetooth/BluetoothNotification.swift",
        "Bluetooth/BluetoothScanner.swift",
        "Bluetooth/BluetoothState.swift",
        "Extensions/Data+Crypt.swift",
        "Extensions/Data+HexString.swift",
        "Extensions/Data+Numeric.swift",
        "Extensions/String+Validation.swift",
        "Logger.swift",
        "WebApi/VanMoof.swift",
        "WebApi/VanMoofError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.