The Swift Package Index logo.Swift Package Index

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

Build Information

Failed to build Atem, reference 1.1.1 (f2af19), with Swift 6.0 for Linux on 1 Nov 2024 07:16:39 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1

Build Log

23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:22:24: warning: static property 'off' produces an empty option set
20 | 	}
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
   |                        |- warning: static property 'off' produces an empty option set
   |                        `- note: use [] to silence this warning
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:23:20: warning: static property 'program' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
23 | 	public static let program = TallyLight(rawValue: 1)
   |                    |- warning: static property 'program' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'program' 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 | 	public static let preview = TallyLight(rawValue: 2)
25 |
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:24:20: warning: static property 'preview' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
22 | 	public static let     off = TallyLight(rawValue: 0)
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
   |                    |- warning: static property 'preview' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'preview' 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
25 |
26 | 	public var debugDescription: String {
[246/265] Compiling Atem ArrayOperations.swift
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:22:24: warning: static property 'off' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
20 | 	}
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
   |                        |- warning: static property 'off' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: annotate 'off' 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
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:22:24: warning: static property 'off' produces an empty option set
20 | 	}
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
   |                        |- warning: static property 'off' produces an empty option set
   |                        `- note: use [] to silence this warning
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:23:20: warning: static property 'program' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
23 | 	public static let program = TallyLight(rawValue: 1)
   |                    |- warning: static property 'program' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'program' 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 | 	public static let preview = TallyLight(rawValue: 2)
25 |
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:24:20: warning: static property 'preview' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
22 | 	public static let     off = TallyLight(rawValue: 0)
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
   |                    |- warning: static property 'preview' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'preview' 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
25 |
26 | 	public var debugDescription: String {
[247/265] Compiling Atem Connection.swift
/host/spi-builder-workspace/Sources/Atem/Controller.swift:105:49: warning: capture of 'tempHandler' with non-sendable type 'ControllerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  9 | import NIO
 10 |
 11 | class ControllerHandler: HandlerWithTimer {
    |       `- note: class 'ControllerHandler' does not conform to the 'Sendable' protocol
 12 |
 13 | 	var connectionState: ConnectionState?
    :
103 | 		channel = DatagramBootstrap(group: eventLoop)
104 | 			.channelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
105 | 			.channelInitializer { $0.pipeline.addHandler(tempHandler) }
    |                                                 `- warning: capture of 'tempHandler' with non-sendable type 'ControllerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 | 			.bind(to: try! SocketAddress(ipAddress: "0.0.0.0", port: 0))
107 | 	}
/host/spi-builder-workspace/Sources/Atem/Controller.swift:115:4: warning: capture of 'self' with non-sendable type 'Controller' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 80 | ///
 81 | /// To make an anology with real world devices: this class can be compared to a BlackMagicDesign Control Panel. It is used to control a production switcher.
 82 | public class Controller {
    |              `- note: class 'Controller' does not conform to the 'Sendable' protocol
 83 | 	/// The underlying [NIO](https://github.com/apple/swift-nio) [Datagram](https://apple.github.io/swift-nio/docs/current/NIO/Classes/DatagramBootstrap.html) [Channel](https://apple.github.io/swift-nio/docs/current/NIO/Protocols/Channel.html)
 84 | 	public let channel: EventLoopFuture<Channel>
    :
113 | 	public func send(message: Serializable) {
114 | 		channel.eventLoop.execute {
115 | 			self.handler.connectionState?.send(message: message.serialize())
    |    `- warning: capture of 'self' with non-sendable type 'Controller' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 | 		}
117 | 	}
/host/spi-builder-workspace/Sources/Atem/Controller.swift:115:48: warning: capture of 'message' with non-sendable type 'any Serializable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
113 | 	public func send(message: Serializable) {
114 | 		channel.eventLoop.execute {
115 | 			self.handler.connectionState?.send(message: message.serialize())
    |                                                `- warning: capture of 'message' with non-sendable type 'any Serializable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 | 		}
117 | 	}
/host/spi-builder-workspace/Sources/Atem/Message.swift:50:17: note: protocol 'Serializable' does not conform to the 'Sendable' protocol
48 | /// A `Message` that is serializable. In other words: that can be transformed into a binary format, ready to be sent to another device.
49 | /// Serializable messages use the `Message.title` and `Serializable.dataBytes` properties to compute the serialized message.
50 | public protocol Serializable: Message {
   |                 `- note: protocol 'Serializable' does not conform to the 'Sendable' protocol
51 | 	/// The part of the serialized message starting after the 4 `Message.title` bytes.
52 | 	/// This property is used by the `Serializable.serialize()` method
[248/265] Compiling Atem Controller.swift
/host/spi-builder-workspace/Sources/Atem/Controller.swift:105:49: warning: capture of 'tempHandler' with non-sendable type 'ControllerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  9 | import NIO
 10 |
 11 | class ControllerHandler: HandlerWithTimer {
    |       `- note: class 'ControllerHandler' does not conform to the 'Sendable' protocol
 12 |
 13 | 	var connectionState: ConnectionState?
    :
103 | 		channel = DatagramBootstrap(group: eventLoop)
104 | 			.channelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
105 | 			.channelInitializer { $0.pipeline.addHandler(tempHandler) }
    |                                                 `- warning: capture of 'tempHandler' with non-sendable type 'ControllerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 | 			.bind(to: try! SocketAddress(ipAddress: "0.0.0.0", port: 0))
107 | 	}
/host/spi-builder-workspace/Sources/Atem/Controller.swift:115:4: warning: capture of 'self' with non-sendable type 'Controller' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 80 | ///
 81 | /// To make an anology with real world devices: this class can be compared to a BlackMagicDesign Control Panel. It is used to control a production switcher.
 82 | public class Controller {
    |              `- note: class 'Controller' does not conform to the 'Sendable' protocol
 83 | 	/// The underlying [NIO](https://github.com/apple/swift-nio) [Datagram](https://apple.github.io/swift-nio/docs/current/NIO/Classes/DatagramBootstrap.html) [Channel](https://apple.github.io/swift-nio/docs/current/NIO/Protocols/Channel.html)
 84 | 	public let channel: EventLoopFuture<Channel>
    :
113 | 	public func send(message: Serializable) {
114 | 		channel.eventLoop.execute {
115 | 			self.handler.connectionState?.send(message: message.serialize())
    |    `- warning: capture of 'self' with non-sendable type 'Controller' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 | 		}
117 | 	}
/host/spi-builder-workspace/Sources/Atem/Controller.swift:115:48: warning: capture of 'message' with non-sendable type 'any Serializable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
113 | 	public func send(message: Serializable) {
114 | 		channel.eventLoop.execute {
115 | 			self.handler.connectionState?.send(message: message.serialize())
    |                                                `- warning: capture of 'message' with non-sendable type 'any Serializable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 | 		}
117 | 	}
/host/spi-builder-workspace/Sources/Atem/Message.swift:50:17: note: protocol 'Serializable' does not conform to the 'Sendable' protocol
48 | /// A `Message` that is serializable. In other words: that can be transformed into a binary format, ready to be sent to another device.
49 | /// Serializable messages use the `Message.title` and `Serializable.dataBytes` properties to compute the serialized message.
50 | public protocol Serializable: Message {
   |                 `- note: protocol 'Serializable' does not conform to the 'Sendable' protocol
51 | 	/// The part of the serialized message starting after the 4 `Message.title` bytes.
52 | 	/// This property is used by the `Serializable.serialize()` method
[249/265] Compiling Atem Message.swift
/host/spi-builder-workspace/Sources/Atem/Controller.swift:105:49: warning: capture of 'tempHandler' with non-sendable type 'ControllerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  9 | import NIO
 10 |
 11 | class ControllerHandler: HandlerWithTimer {
    |       `- note: class 'ControllerHandler' does not conform to the 'Sendable' protocol
 12 |
 13 | 	var connectionState: ConnectionState?
    :
103 | 		channel = DatagramBootstrap(group: eventLoop)
104 | 			.channelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
105 | 			.channelInitializer { $0.pipeline.addHandler(tempHandler) }
    |                                                 `- warning: capture of 'tempHandler' with non-sendable type 'ControllerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 | 			.bind(to: try! SocketAddress(ipAddress: "0.0.0.0", port: 0))
107 | 	}
/host/spi-builder-workspace/Sources/Atem/Controller.swift:115:4: warning: capture of 'self' with non-sendable type 'Controller' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 80 | ///
 81 | /// To make an anology with real world devices: this class can be compared to a BlackMagicDesign Control Panel. It is used to control a production switcher.
 82 | public class Controller {
    |              `- note: class 'Controller' does not conform to the 'Sendable' protocol
 83 | 	/// The underlying [NIO](https://github.com/apple/swift-nio) [Datagram](https://apple.github.io/swift-nio/docs/current/NIO/Classes/DatagramBootstrap.html) [Channel](https://apple.github.io/swift-nio/docs/current/NIO/Protocols/Channel.html)
 84 | 	public let channel: EventLoopFuture<Channel>
    :
113 | 	public func send(message: Serializable) {
114 | 		channel.eventLoop.execute {
115 | 			self.handler.connectionState?.send(message: message.serialize())
    |    `- warning: capture of 'self' with non-sendable type 'Controller' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 | 		}
117 | 	}
/host/spi-builder-workspace/Sources/Atem/Controller.swift:115:48: warning: capture of 'message' with non-sendable type 'any Serializable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
113 | 	public func send(message: Serializable) {
114 | 		channel.eventLoop.execute {
115 | 			self.handler.connectionState?.send(message: message.serialize())
    |                                                `- warning: capture of 'message' with non-sendable type 'any Serializable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 | 		}
117 | 	}
/host/spi-builder-workspace/Sources/Atem/Message.swift:50:17: note: protocol 'Serializable' does not conform to the 'Sendable' protocol
48 | /// A `Message` that is serializable. In other words: that can be transformed into a binary format, ready to be sent to another device.
49 | /// Serializable messages use the `Message.title` and `Serializable.dataBytes` properties to compute the serialized message.
50 | public protocol Serializable: Message {
   |                 `- note: protocol 'Serializable' does not conform to the 'Sendable' protocol
51 | 	/// The part of the serialized message starting after the 4 `Message.title` bytes.
52 | 	/// This property is used by the `Serializable.serialize()` method
[250/265] Compiling Atem MessageHandler.swift
/host/spi-builder-workspace/Sources/Atem/MessageHandler.swift:7:13: warning: var 'messageTypeRegister' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 5 | //  Created by Damiaan on 26/05/18.
 6 | //
 7 | private var messageTypeRegister = [UInt32: Message.Type]()
   |             |- warning: var 'messageTypeRegister' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |             |- note: convert 'messageTypeRegister' to a 'let' constant to make 'Sendable' shared state immutable
   |             |- note: annotate 'messageTypeRegister' 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
 8 |
 9 | /// A utility to interprete incoming messages and call the registered handlers and to send back the responses provided by the handlers. For more information on how to register handlers see `MessageHandlerBase.when(...)`. This class is similar to `MessageHandler`. The difference here is that the registered handlers should return zero or more (`Serializable`) responses for each incoming `Message`.
[251/265] Compiling Atem MessageTitle.swift
/host/spi-builder-workspace/Sources/Atem/MessageHandler.swift:7:13: warning: var 'messageTypeRegister' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 5 | //  Created by Damiaan on 26/05/18.
 6 | //
 7 | private var messageTypeRegister = [UInt32: Message.Type]()
   |             |- warning: var 'messageTypeRegister' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |             |- note: convert 'messageTypeRegister' to a 'let' constant to make 'Sendable' shared state immutable
   |             |- note: annotate 'messageTypeRegister' 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
 8 |
 9 | /// A utility to interprete incoming messages and call the registered handlers and to send back the responses provided by the handlers. For more information on how to register handlers see `MessageHandlerBase.when(...)`. This class is similar to `MessageHandler`. The difference here is that the registered handlers should return zero or more (`Serializable`) responses for each incoming `Message`.
[252/265] Compiling Atem MessageTypes.swift
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:14:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 12 | /// There are two version numbers in ATEM world: One for the ATEM Software Control application (for instance version 6.0) which is what people usually refers to and one for the firmware which is often updated with the PC/Mac application versions (for instance 2.15). The latter version number is what "_ver" gives you and a number you can not find anywhere in the application to our knowledge.
 13 | public struct ProtocolVersion: Serializable {
 14 | 	public static let title = MessageTitle(string: "_ver")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
 15 | 	static let majorPosition = 0..<2
 16 | 	static let minorPosition = 2..<4
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:36:13: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 34 | /// The type of atem
 35 | struct AtemType: Serializable {
 36 | 	static let title = MessageTitle(string: "_pin")
    |             |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'title' 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 | 	let string: String
 38 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:70:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 68 | /// The resources of an atem
 69 | public struct Topology: Serializable {
 70 | 	public static let title = MessageTitle(string: "_top")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
 71 |
 72 | 	public let mixEffectBanks: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:137:13: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
135 | /// The message that should be sent at the end of the connection initiation. The connection initiation is the sequence of packets that is sent at the very beginning of a connection and they contain messages that represent the state of the device at the moment of conection.
136 | struct ConnectionInitiationEnd: Serializable {
137 | 	static let title = MessageTitle(string: "InCm")
    |             |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'title' 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
138 | 	static let `default` = ConnectionInitiationEnd(with: [])
139 | 	let dataBytes = [UInt8(1), 0, 0, 0]
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:148:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
146 | /// Performs a cut on the atem
147 | public struct DoCut: Serializable {
148 | 	public static let title = MessageTitle(string: "DCut")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
149 | 	public let debugDescription = "cut"
150 | 	public let atemSize: AtemSize
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:167:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
165 | /// Informs a switcher that the preview bus should be changed
166 | public struct ChangePreviewBus: Serializable {
167 | 	public static let title = MessageTitle(string: "CPvI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
168 |
169 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:192:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
190 | /// Informs a switcher that the program bus shoud be changed
191 | public struct ChangeProgramBus: Serializable {
192 | 	public static let title = MessageTitle(string: "CPgI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
193 |
194 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:217:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
215 | /// Informs a switcher that a source should be assigned to the specified auxiliary output
216 | public struct ChangeAuxiliaryOutput: Serializable {
217 | 	public static let title = MessageTitle(string: "CAuS")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
218 |
219 | 	/// The source that should be assigned to the auxiliary output
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:248:23: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
246 | /// Informs a controller that a source has been routed to an auxiliary output
247 | public struct AuxiliaryOutputChanged: Serializable {
248 |     public static let title = MessageTitle(string: "AuxS")
    |                       |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'title' 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
249 |
250 | 	/// The source that has been routed to the auxiliary output
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:279:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
277 | /// Informs a controller that the preview bus has changed
278 | public struct PreviewBusChanged: Serializable {
279 | 	public static let title = MessageTitle(string: "PrvI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
280 |
281 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:303:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
301 | /// Informs a controller that the program bus has changed
302 | public struct ProgramBusChanged: Serializable {
303 | 	public static let title = MessageTitle(string: "PrgI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
304 |
305 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:329:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
327 | public struct NewTimecode: Message {
328 | 	public typealias Timecode = (hour: UInt8, minute: UInt8, second: UInt8, frame: UInt8)
329 | 	public static let title = MessageTitle(string: "Time")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
330 | 	public let timecode: Timecode
331 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:346:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
344 | /// Informs the switcher that it should update its transition position
345 | public struct ChangeTransitionPosition: Serializable {
346 | 	public static let title = MessageTitle(string: "CTPs")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
347 | 	public let mixEffect: UInt8
348 | 	public let position: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:369:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
367 | /// Informs the controller that the transition position has changed
368 | public struct TransitionPositionChanged: Serializable {
369 | 	public static let title = MessageTitle(string: "TrPs")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
370 | 	public let mixEffect: UInt8
371 | 	public let position: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:401:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
399 |
400 | public struct LockRequest: Serializable {
401 | 	public static let title = MessageTitle(string: "LOCK")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
402 | 	public let store: UInt16
403 | 	public let state: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:418:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
416 |
417 | public struct LockPositionRequest: Message {
418 | 	public static let title = MessageTitle(string: "PLCK")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
419 | 	public let store: UInt16
420 | 	public let index: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:434:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | public struct LockChange: Serializable {
434 | 	public static let title = MessageTitle(string: "LKST")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
435 | 	public let store: UInt16
436 | 	public let isLocked: Bool
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:456:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
454 |
455 | public struct LockObtained: Serializable {
456 | 	public static let title = MessageTitle(string: "LKOB")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
457 | 	let store: UInt16
458 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:477:21: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
475 | 	/// The properties (like name and port types) of a video source
476 | 	public struct PropertiesChanged: Serializable {
477 | 		public static let title: MessageTitle = MessageTitle(string: "InPr")
    |                     |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'title' 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
478 | 		public static let shortNameLength = 4
479 | 		public static let longNameLength = 20
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:553:20: warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
551 | /// Informs a controller that a connection is succesfully established.
552 | public struct InitiationComplete: Message {
553 | 	public static var title = MessageTitle(string: "InCm")
    |                    |- warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'title' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'title' 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
554 |
555 | 	public init(with bytes: ArraySlice<UInt8>) throws {
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:565:20: warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
563 | /// Informs a controller that the some tally lights might have changed.
564 | public struct SourceTallies: Serializable {
565 | 	public static var title = MessageTitle(string: "TlSr")
    |                    |- warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'title' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'title' 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
566 |
567 | 	/// The state of the tally lights for each source of the Atem switcher
[253/265] Compiling Atem Packet.swift
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:14:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 12 | /// There are two version numbers in ATEM world: One for the ATEM Software Control application (for instance version 6.0) which is what people usually refers to and one for the firmware which is often updated with the PC/Mac application versions (for instance 2.15). The latter version number is what "_ver" gives you and a number you can not find anywhere in the application to our knowledge.
 13 | public struct ProtocolVersion: Serializable {
 14 | 	public static let title = MessageTitle(string: "_ver")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
 15 | 	static let majorPosition = 0..<2
 16 | 	static let minorPosition = 2..<4
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:36:13: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 34 | /// The type of atem
 35 | struct AtemType: Serializable {
 36 | 	static let title = MessageTitle(string: "_pin")
    |             |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'title' 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 | 	let string: String
 38 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:70:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 68 | /// The resources of an atem
 69 | public struct Topology: Serializable {
 70 | 	public static let title = MessageTitle(string: "_top")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
 71 |
 72 | 	public let mixEffectBanks: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:137:13: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
135 | /// The message that should be sent at the end of the connection initiation. The connection initiation is the sequence of packets that is sent at the very beginning of a connection and they contain messages that represent the state of the device at the moment of conection.
136 | struct ConnectionInitiationEnd: Serializable {
137 | 	static let title = MessageTitle(string: "InCm")
    |             |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'title' 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
138 | 	static let `default` = ConnectionInitiationEnd(with: [])
139 | 	let dataBytes = [UInt8(1), 0, 0, 0]
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:148:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
146 | /// Performs a cut on the atem
147 | public struct DoCut: Serializable {
148 | 	public static let title = MessageTitle(string: "DCut")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
149 | 	public let debugDescription = "cut"
150 | 	public let atemSize: AtemSize
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:167:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
165 | /// Informs a switcher that the preview bus should be changed
166 | public struct ChangePreviewBus: Serializable {
167 | 	public static let title = MessageTitle(string: "CPvI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
168 |
169 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:192:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
190 | /// Informs a switcher that the program bus shoud be changed
191 | public struct ChangeProgramBus: Serializable {
192 | 	public static let title = MessageTitle(string: "CPgI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
193 |
194 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:217:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
215 | /// Informs a switcher that a source should be assigned to the specified auxiliary output
216 | public struct ChangeAuxiliaryOutput: Serializable {
217 | 	public static let title = MessageTitle(string: "CAuS")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
218 |
219 | 	/// The source that should be assigned to the auxiliary output
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:248:23: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
246 | /// Informs a controller that a source has been routed to an auxiliary output
247 | public struct AuxiliaryOutputChanged: Serializable {
248 |     public static let title = MessageTitle(string: "AuxS")
    |                       |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'title' 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
249 |
250 | 	/// The source that has been routed to the auxiliary output
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:279:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
277 | /// Informs a controller that the preview bus has changed
278 | public struct PreviewBusChanged: Serializable {
279 | 	public static let title = MessageTitle(string: "PrvI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
280 |
281 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:303:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
301 | /// Informs a controller that the program bus has changed
302 | public struct ProgramBusChanged: Serializable {
303 | 	public static let title = MessageTitle(string: "PrgI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
304 |
305 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:329:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
327 | public struct NewTimecode: Message {
328 | 	public typealias Timecode = (hour: UInt8, minute: UInt8, second: UInt8, frame: UInt8)
329 | 	public static let title = MessageTitle(string: "Time")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
330 | 	public let timecode: Timecode
331 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:346:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
344 | /// Informs the switcher that it should update its transition position
345 | public struct ChangeTransitionPosition: Serializable {
346 | 	public static let title = MessageTitle(string: "CTPs")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
347 | 	public let mixEffect: UInt8
348 | 	public let position: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:369:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
367 | /// Informs the controller that the transition position has changed
368 | public struct TransitionPositionChanged: Serializable {
369 | 	public static let title = MessageTitle(string: "TrPs")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
370 | 	public let mixEffect: UInt8
371 | 	public let position: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:401:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
399 |
400 | public struct LockRequest: Serializable {
401 | 	public static let title = MessageTitle(string: "LOCK")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
402 | 	public let store: UInt16
403 | 	public let state: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:418:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
416 |
417 | public struct LockPositionRequest: Message {
418 | 	public static let title = MessageTitle(string: "PLCK")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
419 | 	public let store: UInt16
420 | 	public let index: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:434:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | public struct LockChange: Serializable {
434 | 	public static let title = MessageTitle(string: "LKST")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
435 | 	public let store: UInt16
436 | 	public let isLocked: Bool
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:456:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
454 |
455 | public struct LockObtained: Serializable {
456 | 	public static let title = MessageTitle(string: "LKOB")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
457 | 	let store: UInt16
458 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:477:21: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
475 | 	/// The properties (like name and port types) of a video source
476 | 	public struct PropertiesChanged: Serializable {
477 | 		public static let title: MessageTitle = MessageTitle(string: "InPr")
    |                     |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'title' 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
478 | 		public static let shortNameLength = 4
479 | 		public static let longNameLength = 20
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:553:20: warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
551 | /// Informs a controller that a connection is succesfully established.
552 | public struct InitiationComplete: Message {
553 | 	public static var title = MessageTitle(string: "InCm")
    |                    |- warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'title' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'title' 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
554 |
555 | 	public init(with bytes: ArraySlice<UInt8>) throws {
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:565:20: warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
563 | /// Informs a controller that the some tally lights might have changed.
564 | public struct SourceTallies: Serializable {
565 | 	public static var title = MessageTitle(string: "TlSr")
    |                    |- warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'title' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'title' 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
566 |
567 | 	/// The state of the tally lights for each source of the Atem switcher
[254/265] Compiling Atem RawRepresentable+decode.swift
/host/spi-builder-workspace/Sources/Atem/Utilities/RawRepresentable+decode.swift:14:6: warning: stored property 'value' of 'Sendable'-conforming generic struct 'UnsupportedRawValue' has non-sendable type 'R.RawValue'; this is an error in the Swift 6 language mode
12 | struct UnsupportedRawValue<R: RawRepresentable>: LocalizedError {
13 | 	/// The value that is not supported by the `RawRepresentable`
14 | 	let value: R.RawValue
   |      `- warning: stored property 'value' of 'Sendable'-conforming generic struct 'UnsupportedRawValue' has non-sendable type 'R.RawValue'; this is an error in the Swift 6 language mode
15 |
16 | 	/// A textual description of the error
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:141:21: warning: static property 'sdi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
139 | 		}
140 |
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
    |                     |- warning: static property 'sdi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'sdi' 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
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:142:21: warning: static property 'hdmi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
140 |
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
    |                     |- warning: static property 'hdmi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'hdmi' 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
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:143:21: warning: static property 'composite' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
    |                     |- warning: static property 'composite' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'composite' 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
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:144:21: warning: static property 'component' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
    |                     |- warning: static property 'component' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'component' 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
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:145:21: warning: static property 'sVideo' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
    |                     |- warning: static property 'sVideo' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'sVideo' 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
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:147:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' 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
148 |
149 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:147:21: warning: static property 'none' produces an empty option set
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
    |                     |- warning: static property 'none' produces an empty option set
    |                     `- note: use [] to silence this warning
148 |
149 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:167:21: warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
165 | 		}
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
    |                     |- warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'auxiliary' 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
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:168:21: warning: static property 'multiviewer' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
    |                     |- warning: static property 'multiviewer' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'multiviewer' 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
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:169:21: warning: static property 'superSourceArt' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
    |                     |- warning: static property 'superSourceArt' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'superSourceArt' 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
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:170:21: warning: static property 'superSourceBox' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
    |                     |- warning: static property 'superSourceBox' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'superSourceBox' 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
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
172 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:171:21: warning: static property 'keySources' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
    |                     |- warning: static property 'keySources' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'keySources' 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
172 |
173 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:191:21: warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
189 | 		}
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
    |                     |- warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me1AndFillSources' 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
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:192:21: warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
    |                     |- warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me2AndFillSources' 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
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:194:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' 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
195 |
196 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:194:21: warning: static property 'none' produces an empty option set
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
    |                     |- warning: static property 'none' produces an empty option set
    |                     `- note: use [] to silence this warning
195 |
196 | 		public func describe() -> String? {
[255/265] Compiling Atem VideoSource.swift
/host/spi-builder-workspace/Sources/Atem/Utilities/RawRepresentable+decode.swift:14:6: warning: stored property 'value' of 'Sendable'-conforming generic struct 'UnsupportedRawValue' has non-sendable type 'R.RawValue'; this is an error in the Swift 6 language mode
12 | struct UnsupportedRawValue<R: RawRepresentable>: LocalizedError {
13 | 	/// The value that is not supported by the `RawRepresentable`
14 | 	let value: R.RawValue
   |      `- warning: stored property 'value' of 'Sendable'-conforming generic struct 'UnsupportedRawValue' has non-sendable type 'R.RawValue'; this is an error in the Swift 6 language mode
15 |
16 | 	/// A textual description of the error
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:141:21: warning: static property 'sdi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
139 | 		}
140 |
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
    |                     |- warning: static property 'sdi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'sdi' 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
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:142:21: warning: static property 'hdmi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
140 |
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
    |                     |- warning: static property 'hdmi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'hdmi' 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
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:143:21: warning: static property 'composite' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
    |                     |- warning: static property 'composite' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'composite' 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
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:144:21: warning: static property 'component' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
    |                     |- warning: static property 'component' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'component' 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
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:145:21: warning: static property 'sVideo' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
    |                     |- warning: static property 'sVideo' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'sVideo' 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
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:147:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' 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
148 |
149 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:147:21: warning: static property 'none' produces an empty option set
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
    |                     |- warning: static property 'none' produces an empty option set
    |                     `- note: use [] to silence this warning
148 |
149 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:167:21: warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
165 | 		}
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
    |                     |- warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'auxiliary' 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
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:168:21: warning: static property 'multiviewer' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
    |                     |- warning: static property 'multiviewer' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'multiviewer' 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
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:169:21: warning: static property 'superSourceArt' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
    |                     |- warning: static property 'superSourceArt' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'superSourceArt' 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
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:170:21: warning: static property 'superSourceBox' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
    |                     |- warning: static property 'superSourceBox' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'superSourceBox' 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
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
172 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:171:21: warning: static property 'keySources' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
    |                     |- warning: static property 'keySources' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'keySources' 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
172 |
173 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:191:21: warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
189 | 		}
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
    |                     |- warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me1AndFillSources' 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
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:192:21: warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
    |                     |- warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me2AndFillSources' 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
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:194:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' 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
195 |
196 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:194:21: warning: static property 'none' produces an empty option set
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
    |                     |- warning: static property 'none' produces an empty option set
    |                     `- note: use [] to silence this warning
195 |
196 | 		public func describe() -> String? {
[256/265] Emitting module Atem
/host/spi-builder-workspace/Sources/Atem/MessageHandler.swift:7:13: warning: var 'messageTypeRegister' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 5 | //  Created by Damiaan on 26/05/18.
 6 | //
 7 | private var messageTypeRegister = [UInt32: Message.Type]()
   |             |- warning: var 'messageTypeRegister' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |             |- note: convert 'messageTypeRegister' to a 'let' constant to make 'Sendable' shared state immutable
   |             |- note: annotate 'messageTypeRegister' 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
 8 |
 9 | /// A utility to interprete incoming messages and call the registered handlers and to send back the responses provided by the handlers. For more information on how to register handlers see `MessageHandlerBase.when(...)`. This class is similar to `MessageHandler`. The difference here is that the registered handlers should return zero or more (`Serializable`) responses for each incoming `Message`.
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:14:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 12 | /// There are two version numbers in ATEM world: One for the ATEM Software Control application (for instance version 6.0) which is what people usually refers to and one for the firmware which is often updated with the PC/Mac application versions (for instance 2.15). The latter version number is what "_ver" gives you and a number you can not find anywhere in the application to our knowledge.
 13 | public struct ProtocolVersion: Serializable {
 14 | 	public static let title = MessageTitle(string: "_ver")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
 15 | 	static let majorPosition = 0..<2
 16 | 	static let minorPosition = 2..<4
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:36:13: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 34 | /// The type of atem
 35 | struct AtemType: Serializable {
 36 | 	static let title = MessageTitle(string: "_pin")
    |             |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'title' 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 | 	let string: String
 38 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:70:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
 68 | /// The resources of an atem
 69 | public struct Topology: Serializable {
 70 | 	public static let title = MessageTitle(string: "_top")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
 71 |
 72 | 	public let mixEffectBanks: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:137:13: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
135 | /// The message that should be sent at the end of the connection initiation. The connection initiation is the sequence of packets that is sent at the very beginning of a connection and they contain messages that represent the state of the device at the moment of conection.
136 | struct ConnectionInitiationEnd: Serializable {
137 | 	static let title = MessageTitle(string: "InCm")
    |             |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: annotate 'title' 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
138 | 	static let `default` = ConnectionInitiationEnd(with: [])
139 | 	let dataBytes = [UInt8(1), 0, 0, 0]
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:148:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
146 | /// Performs a cut on the atem
147 | public struct DoCut: Serializable {
148 | 	public static let title = MessageTitle(string: "DCut")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
149 | 	public let debugDescription = "cut"
150 | 	public let atemSize: AtemSize
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:167:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
165 | /// Informs a switcher that the preview bus should be changed
166 | public struct ChangePreviewBus: Serializable {
167 | 	public static let title = MessageTitle(string: "CPvI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
168 |
169 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:192:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
190 | /// Informs a switcher that the program bus shoud be changed
191 | public struct ChangeProgramBus: Serializable {
192 | 	public static let title = MessageTitle(string: "CPgI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
193 |
194 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:217:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
215 | /// Informs a switcher that a source should be assigned to the specified auxiliary output
216 | public struct ChangeAuxiliaryOutput: Serializable {
217 | 	public static let title = MessageTitle(string: "CAuS")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
218 |
219 | 	/// The source that should be assigned to the auxiliary output
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:248:23: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
246 | /// Informs a controller that a source has been routed to an auxiliary output
247 | public struct AuxiliaryOutputChanged: Serializable {
248 |     public static let title = MessageTitle(string: "AuxS")
    |                       |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'title' 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
249 |
250 | 	/// The source that has been routed to the auxiliary output
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:279:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
277 | /// Informs a controller that the preview bus has changed
278 | public struct PreviewBusChanged: Serializable {
279 | 	public static let title = MessageTitle(string: "PrvI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
280 |
281 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:303:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
301 | /// Informs a controller that the program bus has changed
302 | public struct ProgramBusChanged: Serializable {
303 | 	public static let title = MessageTitle(string: "PrgI")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
304 |
305 | 	public let mixEffect: UInt8
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:329:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
327 | public struct NewTimecode: Message {
328 | 	public typealias Timecode = (hour: UInt8, minute: UInt8, second: UInt8, frame: UInt8)
329 | 	public static let title = MessageTitle(string: "Time")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
330 | 	public let timecode: Timecode
331 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:346:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
344 | /// Informs the switcher that it should update its transition position
345 | public struct ChangeTransitionPosition: Serializable {
346 | 	public static let title = MessageTitle(string: "CTPs")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
347 | 	public let mixEffect: UInt8
348 | 	public let position: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:369:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
367 | /// Informs the controller that the transition position has changed
368 | public struct TransitionPositionChanged: Serializable {
369 | 	public static let title = MessageTitle(string: "TrPs")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
370 | 	public let mixEffect: UInt8
371 | 	public let position: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:401:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
399 |
400 | public struct LockRequest: Serializable {
401 | 	public static let title = MessageTitle(string: "LOCK")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
402 | 	public let store: UInt16
403 | 	public let state: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:418:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
416 |
417 | public struct LockPositionRequest: Message {
418 | 	public static let title = MessageTitle(string: "PLCK")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
419 | 	public let store: UInt16
420 | 	public let index: UInt16
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:434:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | public struct LockChange: Serializable {
434 | 	public static let title = MessageTitle(string: "LKST")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
435 | 	public let store: UInt16
436 | 	public let isLocked: Bool
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:456:20: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
454 |
455 | public struct LockObtained: Serializable {
456 | 	public static let title = MessageTitle(string: "LKOB")
    |                    |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'title' 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
457 | 	let store: UInt16
458 |
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:477:21: warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
475 | 	/// The properties (like name and port types) of a video source
476 | 	public struct PropertiesChanged: Serializable {
477 | 		public static let title: MessageTitle = MessageTitle(string: "InPr")
    |                     |- warning: static property 'title' is not concurrency-safe because non-'Sendable' type 'MessageTitle' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'title' 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
478 | 		public static let shortNameLength = 4
479 | 		public static let longNameLength = 20
/host/spi-builder-workspace/Sources/Atem/MessageTitle.swift:11:15: note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
 9 |
10 | /// An ASCII String of exactly 4 characters. A list of available titles can be found in [Skarhoj's protocol description](http://skaarhoj.com/fileadmin/BMDPROTOCOL.html) under the column "CMD".
11 | public struct MessageTitle: CustomStringConvertible {
   |               `- note: consider making struct 'MessageTitle' conform to the 'Sendable' protocol
12 | 	/// The position of the title in a message. (Ignoring the first four bytes of a message)
13 | 	/// Slice `0 ..< 4`
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:553:20: warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
551 | /// Informs a controller that a connection is succesfully established.
552 | public struct InitiationComplete: Message {
553 | 	public static var title = MessageTitle(string: "InCm")
    |                    |- warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'title' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'title' 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
554 |
555 | 	public init(with bytes: ArraySlice<UInt8>) throws {
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:565:20: warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
563 | /// Informs a controller that the some tally lights might have changed.
564 | public struct SourceTallies: Serializable {
565 | 	public static var title = MessageTitle(string: "TlSr")
    |                    |- warning: static property 'title' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'title' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'title' 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
566 |
567 | 	/// The state of the tally lights for each source of the Atem switcher
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:22:24: warning: static property 'off' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
20 | 	}
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
   |                        |- warning: static property 'off' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: annotate 'off' 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
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:22:24: warning: static property 'off' produces an empty option set
20 | 	}
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
   |                        |- warning: static property 'off' produces an empty option set
   |                        `- note: use [] to silence this warning
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:23:20: warning: static property 'program' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
21 |
22 | 	public static let     off = TallyLight(rawValue: 0)
23 | 	public static let program = TallyLight(rawValue: 1)
   |                    |- warning: static property 'program' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'program' 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 | 	public static let preview = TallyLight(rawValue: 2)
25 |
/host/spi-builder-workspace/Sources/Atem/TallyLight.swift:24:20: warning: static property 'preview' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
13 | ///  - `.preview`
14 | ///  - both `.program` & `.preview`
15 | public struct TallyLight: OptionSet, CustomDebugStringConvertible {
   |               `- note: consider making struct 'TallyLight' conform to the 'Sendable' protocol
16 | 	public let rawValue: UInt8
17 |
   :
22 | 	public static let     off = TallyLight(rawValue: 0)
23 | 	public static let program = TallyLight(rawValue: 1)
24 | 	public static let preview = TallyLight(rawValue: 2)
   |                    |- warning: static property 'preview' is not concurrency-safe because non-'Sendable' type 'TallyLight' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'preview' 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
25 |
26 | 	public var debugDescription: String {
/host/spi-builder-workspace/Sources/Atem/Utilities/InitialSwitcherStateMessages.swift:10:5: warning: let 'inputProperties' is not concurrency-safe because non-'Sendable' type '[VideoSource.PropertiesChanged]' may have shared mutable state; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | let inputProperties = try! [
    |     |- warning: let 'inputProperties' is not concurrency-safe because non-'Sendable' type '[VideoSource.PropertiesChanged]' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'inputProperties' 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 | 	VideoSource.PropertiesChanged(
 12 | 		source: .black,
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:476:16: note: consider making struct 'PropertiesChanged' conform to the 'Sendable' protocol
474 | extension VideoSource {
475 | 	/// The properties (like name and port types) of a video source
476 | 	public struct PropertiesChanged: Serializable {
    |                `- note: consider making struct 'PropertiesChanged' conform to the 'Sendable' protocol
477 | 		public static let title: MessageTitle = MessageTitle(string: "InPr")
478 | 		public static let shortNameLength = 4
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:167:21: warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
165 | 		}
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
    |                     |- warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'auxiliary' 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
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:192:21: warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
    |                     |- warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me2AndFillSources' 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
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:191:21: warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
189 | 		}
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
    |                     |- warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me1AndFillSources' 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
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
/host/spi-builder-workspace/Sources/Atem/Utilities/RawRepresentable+decode.swift:14:6: warning: stored property 'value' of 'Sendable'-conforming generic struct 'UnsupportedRawValue' has non-sendable type 'R.RawValue'; this is an error in the Swift 6 language mode
12 | struct UnsupportedRawValue<R: RawRepresentable>: LocalizedError {
13 | 	/// The value that is not supported by the `RawRepresentable`
14 | 	let value: R.RawValue
   |      `- warning: stored property 'value' of 'Sendable'-conforming generic struct 'UnsupportedRawValue' has non-sendable type 'R.RawValue'; this is an error in the Swift 6 language mode
15 |
16 | 	/// A textual description of the error
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:141:21: warning: static property 'sdi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
139 | 		}
140 |
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
    |                     |- warning: static property 'sdi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'sdi' 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
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:142:21: warning: static property 'hdmi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
140 |
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
    |                     |- warning: static property 'hdmi' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'hdmi' 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
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:143:21: warning: static property 'composite' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
141 | 		public static let sdi =       ExternalInterfaces(rawValue: 1 << 0)
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
    |                     |- warning: static property 'composite' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'composite' 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
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:144:21: warning: static property 'component' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
142 | 		public static let hdmi =      ExternalInterfaces(rawValue: 1 << 1)
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
    |                     |- warning: static property 'component' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'component' 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
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:145:21: warning: static property 'sVideo' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
143 | 		public static let composite = ExternalInterfaces(rawValue: 1 << 2)
144 | 		public static let component = ExternalInterfaces(rawValue: 1 << 3)
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
    |                     |- warning: static property 'sVideo' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'sVideo' 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
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:147:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' may have shared mutable state; this is an error in the Swift 6 language mode
133 | 	}
134 |
135 | 	public struct ExternalInterfaces: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'ExternalInterfaces' conform to the 'Sendable' protocol
136 | 		public let rawValue: UInt8
137 | 		public init(rawValue: UInt8) {
    :
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.ExternalInterfaces' 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
148 |
149 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:147:21: warning: static property 'none' produces an empty option set
145 | 		public static let sVideo =    ExternalInterfaces(rawValue: 1 << 4)
146 |
147 | 		public static let none = ExternalInterfaces(rawValue: 0)
    |                     |- warning: static property 'none' produces an empty option set
    |                     `- note: use [] to silence this warning
148 |
149 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:168:21: warning: static property 'multiviewer' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
    |                     |- warning: static property 'multiviewer' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'multiviewer' 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
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:169:21: warning: static property 'superSourceArt' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
    |                     |- warning: static property 'superSourceArt' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'superSourceArt' 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
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:170:21: warning: static property 'superSourceBox' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
    |                     |- warning: static property 'superSourceBox' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'superSourceBox' 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
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
172 |
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:171:21: warning: static property 'keySources' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
170 | 		public static let superSourceBox = Availability(rawValue: 1 << 3)
171 | 		public static let keySources =     Availability(rawValue: 1 << 4)
    |                     |- warning: static property 'keySources' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'keySources' 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
172 |
173 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:194:21: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
    |                     |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' 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
195 |
196 | 		public func describe() -> String? {
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:194:21: warning: static property 'none' produces an empty option set
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
    |                     |- warning: static property 'none' produces an empty option set
    |                     `- note: use [] to silence this warning
195 |
196 | 		public func describe() -> String? {
[257/265] Compiling Atem HandlerWithTimer.swift
/host/spi-builder-workspace/Sources/Atem/Utilities/HandlerWithTimer.swift:30:4: warning: capture of 'self' with non-sendable type 'HandlerWithTimer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
10 | let sendInterval = TimeAmount.milliseconds(20)
11 |
12 | class HandlerWithTimer: ChannelInboundHandler {
   |       `- note: class 'HandlerWithTimer' does not conform to the 'Sendable' protocol
13 | 	typealias InboundIn = AddressedEnvelope<ByteBuffer>
14 | 	typealias OutboundOut = AddressedEnvelope<ByteBuffer>
   :
28 | 	final func startLoop(in context: ChannelHandlerContext) {
29 | 		nextKeepAliveTask = context.eventLoop.scheduleTask(in: sendInterval) {
30 | 			self.executeTimerTask(context: context)
   |    `- warning: capture of 'self' with non-sendable type 'HandlerWithTimer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | 			self.startLoop(in: context)
32 | 		}
/host/spi-builder-workspace/Sources/Atem/Utilities/HandlerWithTimer.swift:30:35: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 | 	final func startLoop(in context: ChannelHandlerContext) {
29 | 		nextKeepAliveTask = context.eventLoop.scheduleTask(in: sendInterval) {
30 | 			self.executeTimerTask(context: context)
   |                                   `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | 			self.startLoop(in: context)
32 | 		}
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1507:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1505 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1506 | /// `ChannelHandler`.
1507 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1508 |     // visible for ChannelPipeline to modify
1509 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/Atem/Utilities/InitialSwitcherStateMessages.swift:10:5: warning: let 'inputProperties' is not concurrency-safe because non-'Sendable' type '[VideoSource.PropertiesChanged]' may have shared mutable state; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | let inputProperties = try! [
    |     |- warning: let 'inputProperties' is not concurrency-safe because non-'Sendable' type '[VideoSource.PropertiesChanged]' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'inputProperties' 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 | 	VideoSource.PropertiesChanged(
 12 | 		source: .black,
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:476:16: note: consider making struct 'PropertiesChanged' conform to the 'Sendable' protocol
474 | extension VideoSource {
475 | 	/// The properties (like name and port types) of a video source
476 | 	public struct PropertiesChanged: Serializable {
    |                `- note: consider making struct 'PropertiesChanged' conform to the 'Sendable' protocol
477 | 		public static let title: MessageTitle = MessageTitle(string: "InPr")
478 | 		public static let shortNameLength = 4
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:167:21: warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
165 | 		}
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
    |                     |- warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'auxiliary' 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
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:192:21: warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
    |                     |- warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me2AndFillSources' 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
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:191:21: warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
189 | 		}
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
    |                     |- warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me1AndFillSources' 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
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
[258/265] Compiling Atem InitialSwitcherStateMessages.swift
/host/spi-builder-workspace/Sources/Atem/Utilities/HandlerWithTimer.swift:30:4: warning: capture of 'self' with non-sendable type 'HandlerWithTimer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
10 | let sendInterval = TimeAmount.milliseconds(20)
11 |
12 | class HandlerWithTimer: ChannelInboundHandler {
   |       `- note: class 'HandlerWithTimer' does not conform to the 'Sendable' protocol
13 | 	typealias InboundIn = AddressedEnvelope<ByteBuffer>
14 | 	typealias OutboundOut = AddressedEnvelope<ByteBuffer>
   :
28 | 	final func startLoop(in context: ChannelHandlerContext) {
29 | 		nextKeepAliveTask = context.eventLoop.scheduleTask(in: sendInterval) {
30 | 			self.executeTimerTask(context: context)
   |    `- warning: capture of 'self' with non-sendable type 'HandlerWithTimer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | 			self.startLoop(in: context)
32 | 		}
/host/spi-builder-workspace/Sources/Atem/Utilities/HandlerWithTimer.swift:30:35: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 | 	final func startLoop(in context: ChannelHandlerContext) {
29 | 		nextKeepAliveTask = context.eventLoop.scheduleTask(in: sendInterval) {
30 | 			self.executeTimerTask(context: context)
   |                                   `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | 			self.startLoop(in: context)
32 | 		}
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1507:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1505 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1506 | /// `ChannelHandler`.
1507 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1508 |     // visible for ChannelPipeline to modify
1509 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/Atem/Utilities/InitialSwitcherStateMessages.swift:10:5: warning: let 'inputProperties' is not concurrency-safe because non-'Sendable' type '[VideoSource.PropertiesChanged]' may have shared mutable state; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | let inputProperties = try! [
    |     |- warning: let 'inputProperties' is not concurrency-safe because non-'Sendable' type '[VideoSource.PropertiesChanged]' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: annotate 'inputProperties' 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 | 	VideoSource.PropertiesChanged(
 12 | 		source: .black,
/host/spi-builder-workspace/Sources/Atem/MessageTypes.swift:476:16: note: consider making struct 'PropertiesChanged' conform to the 'Sendable' protocol
474 | extension VideoSource {
475 | 	/// The properties (like name and port types) of a video source
476 | 	public struct PropertiesChanged: Serializable {
    |                `- note: consider making struct 'PropertiesChanged' conform to the 'Sendable' protocol
477 | 		public static let title: MessageTitle = MessageTitle(string: "InPr")
478 | 		public static let shortNameLength = 4
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:167:21: warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
159 | 	}
160 |
161 | 	public struct Availability: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'Availability' conform to the 'Sendable' protocol
162 | 		public let rawValue: UInt8
163 | 		public init(rawValue: UInt8) {
    :
165 | 		}
166 |
167 | 		public static let auxiliary =      Availability(rawValue: 1 << 0)
    |                     |- warning: static property 'auxiliary' is not concurrency-safe because non-'Sendable' type 'VideoSource.Availability' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'auxiliary' 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
168 | 		public static let multiviewer =    Availability(rawValue: 1 << 1)
169 | 		public static let superSourceArt = Availability(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:192:21: warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
    |                     |- warning: static property 'me2AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me2AndFillSources' 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
193 |
194 | 		public static let none = MixEffects(rawValue: 0)
/host/spi-builder-workspace/Sources/Atem/VideoSource.swift:191:21: warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
183 | 	}
184 |
185 | 	public struct MixEffects: OptionSet, SingleValueDescribable {
    |                `- note: consider making struct 'MixEffects' conform to the 'Sendable' protocol
186 | 		public let rawValue: UInt8
187 | 		public init(rawValue: UInt8) {
    :
189 | 		}
190 |
191 | 		public static let me1AndFillSources = MixEffects(rawValue: 1 << 0)
    |                     |- warning: static property 'me1AndFillSources' is not concurrency-safe because non-'Sendable' type 'VideoSource.MixEffects' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'me1AndFillSources' 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
192 | 		public static let me2AndFillSources = MixEffects(rawValue: 1 << 1)
193 |
[259/266] Wrapping AST for Atem for debugging
error: emit-module command failed with exit code 1 (use -v to see invocation)
[261/270] Emitting module Version_dump
/host/spi-builder-workspace/Sources/Version dump/main.swift:28:4: error: cannot find 'exit' in scope
26 | 		print("Initiation complete")
27 | 		DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
28 | 			exit(EXIT_SUCCESS)
   |    `- error: cannot find 'exit' in scope
29 | 		}
30 | 	}
/host/spi-builder-workspace/Sources/Version dump/main.swift:28:9: error: cannot find 'EXIT_SUCCESS' in scope
26 | 		print("Initiation complete")
27 | 		DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
28 | 			exit(EXIT_SUCCESS)
   |         `- error: cannot find 'EXIT_SUCCESS' in scope
29 | 		}
30 | 	}
[262/270] Compiling Version_dump main.swift
/host/spi-builder-workspace/Sources/Version dump/main.swift:28:4: error: cannot find 'exit' in scope
26 | 		print("Initiation complete")
27 | 		DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
28 | 			exit(EXIT_SUCCESS)
   |    `- error: cannot find 'exit' in scope
29 | 		}
30 | 	}
/host/spi-builder-workspace/Sources/Version dump/main.swift:28:9: error: cannot find 'EXIT_SUCCESS' in scope
26 | 		print("Initiation complete")
27 | 		DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
28 | 			exit(EXIT_SUCCESS)
   |         `- error: cannot find 'EXIT_SUCCESS' in scope
29 | 		}
30 | 	}
[263/270] Emitting module Simulator
/host/spi-builder-workspace/Sources/Simulator/main.swift:34:7: warning: will never be executed
31 |
32 | print(switcher)
33 | dispatchMain()
   | `- note: a call to a never-returning function
34 | print(switcher)
   |       `- warning: will never be executed
35 |
BUILD FAILURE 6.0 linux