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.