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

The Swift Package Index logo.Swift Package Index

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

Build Information

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

Swift 6 data race errors: 18

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/uraimo/SwiftyGPIO.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/uraimo/SwiftyGPIO
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at b86215d Merge remote-tracking branch 'origin/uraimo-new-gpio-pi' into feature-pi4-gpio-fix
Cloned https://github.com/uraimo/SwiftyGPIO.git
Revision (git rev-parse @):
b86215de6ecde8e6649590978164a5532ef7a975
SUCCESS checkout https://github.com/uraimo/SwiftyGPIO.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/uraimo/SwiftyGPIO.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-6F35C1178C84523A.txt
[3/12] Compiling SwiftyGPIO SwiftyGPIO.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:218:52: warning: capture of 'self' with non-sendable type 'GPIO' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
216 |         let thread = Thread {
217 |
218 |             let gpath = GPIOBASEPATH+"gpio"+String(self.id)+"/value"
    |                                                    `- warning: capture of 'self' with non-sendable type 'GPIO' in a `@Sendable` closure; this is an error in the Swift 6 language mode
219 |             self.direction = .IN
220 |             self.edge = .BOTH
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:30:16: warning: static property 'GPIORPIRev1' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |     // RaspberryPi A and B Revision 1 (Before September 2012) - 26 pin header boards
 29 |     // 0, 1, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 21, 22, 23, 24, 25
 30 |     static let GPIORPIRev1: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIRev1' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIRev1' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 31 |         .P0: RaspberryGPIO(name:"GPIO0", id:0, baseAddr:0x20000000),
 32 |         .P1: RaspberryGPIO(name:"GPIO1", id:1, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:53:16: warning: static property 'GPIORPIRev2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 51 |     //TODO: Additional GPIO from 28-31 ignored for now
 52 |     // 2, 3, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 22, 23, 24, 25, 27
 53 |     static let GPIORPIRev2: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIRev2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIRev2' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 54 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x20000000),
 55 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:75:16: warning: static property 'GPIORPIPlusZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 73 |     // RaspberryPi A+ and B+, Raspberry Zero - 40 pin header boards
 74 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
 75 |     static let GPIORPIPlusZERO: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIPlusZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIPlusZERO' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x20000000),
 77 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:106:16: warning: static property 'GPIORPI2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
104 |     // RaspberryPi 2
105 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
106 |     static let GPIORPI2: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI2' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
107 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x3F000000),
108 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x3F000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:137:16: warning: static property 'GPIORPI4' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
135 |     // RaspberryPi 4, with classic numbering scheme, see https://github.com/raspberrypi/linux/issues/6037
136 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
137 |     static let GPIORPI4: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI4' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI4' with '@MainActor' 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 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x7E000000),
139 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x7E000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:168:16: warning: static property 'GPIORPI4New' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
166 |     // RaspberryPi 4 with new GPIOs numbering scheme, see https://github.com/raspberrypi/linux/issues/6037
167 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
168 |     static let GPIORPI4New: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI4New' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI4New' with '@MainActor' 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 |         .P2: RaspberryGPIO(name:"GPIO2", id:514, baseAddr:0x7E000000),
170 |         .P3: RaspberryGPIO(name:"GPIO3", id:515, baseAddr:0x7E000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:204:16: warning: static property 'GPIOCHIP' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
202 |     //
203 |     // See: https://docs.getchip.com/chip.html#kernel-4-3-vs-4-4-gpio-how-to-tell-the-difference
204 |     static let GPIOCHIP: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOCHIP' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOCHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
205 |         .P0: GPIO(name:"XIO-P0", id:1013),
206 |         .P1: GPIO(name:"XIO-P1", id:1014),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:253:16: warning: static property 'GPIOBEAGLEBONE' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
251 |     //Clearly this does not support mode change.
252 |     //
253 |     static let GPIOBEAGLEBONE: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOBEAGLEBONE' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOBEAGLEBONE' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
254 |         .P0: GPIO(name:"P8_PIN03_GPIO1_6", id:38),  //P8
255 |         .P1: GPIO(name:"P8_PIN04_GPIO1_7", id:39),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:292:16: warning: static property 'GPIOORANGEPI' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
290 |     // OrangePi
291 |     // The pins are ordered by name: A0-A21(P0-P16), C0-C7(P17-P22), D14(P23), G6-G9(P24-P27)
292 |     static let GPIOORANGEPI: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOORANGEPI' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOORANGEPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 |         .P0: GPIO(sunXi:SunXiGPIO(letter: .A, pin:0)),
294 |         .P1: GPIO(sunXi:SunXiGPIO(letter:.A, pin:1)),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:324:16: warning: static property 'GPIOORANGEPIZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
322 |
323 |     // OrangePiZero
324 |     static let GPIOORANGEPIZERO: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOORANGEPIZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOORANGEPIZERO' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
325 |         .P2: GPIO(sunXi:SunXiGPIO(letter:.A, pin:12)),
326 |         .P3: GPIO(sunXi:SunXiGPIO(letter:.A, pin:11)),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
[4/13] Compiling SwiftyGPIO SPI.swift
/Users/admin/builder/spi-builder-workspace/Sources/SPI.swift:54:16: warning: static property 'SPIRPI' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 52 | extension SwiftyGPIO {
 53 |     // RaspberryPis SPIs
 54 |     static let SPIRPI: [Int:SPIInterface] = [
    |                |- warning: static property 'SPIRPI' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'SPIRPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 55 |         0: SysFSSPI(spiId:"0.0"),
 56 |         1: SysFSSPI(spiId:"0.1")
    :
 68 | // MARK: SPI
 69 |
 70 | public protocol SPIInterface {
    |                 `- note: protocol 'SPIInterface' does not conform to the 'Sendable' protocol
 71 |     // Send data at the requested frequency (from 500Khz to 20 Mhz)
 72 |     func sendData(_ values: [UInt8], frequencyHz: UInt)
/Users/admin/builder/spi-builder-workspace/Sources/SPI.swift:63:16: warning: static property 'SPICHIP' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 61 |     // See: https://bbs.nextthing.co/t/can-interface-spi-and-can-utils/18042/3
 62 |     //      https://bbs.nextthing.co/t/can-bus-mcp2515-via-spi-anyone/11388/2
 63 |     static let SPICHIP: [Int:SPIInterface] = [
    |                |- warning: static property 'SPICHIP' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'SPICHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |         0: SysFSSPI(spiId:"2.0")
 65 |     ]
    :
 68 | // MARK: SPI
 69 |
 70 | public protocol SPIInterface {
    |                 `- note: protocol 'SPIInterface' does not conform to the 'Sendable' protocol
 71 |     // Send data at the requested frequency (from 500Khz to 20 Mhz)
 72 |     func sendData(_ values: [UInt8], frequencyHz: UInt)
[5/13] Compiling SwiftyGPIO SunXi.swift
[6/13] Compiling SwiftyGPIO Presets.swift
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:30:16: warning: static property 'GPIORPIRev1' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |     // RaspberryPi A and B Revision 1 (Before September 2012) - 26 pin header boards
 29 |     // 0, 1, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 21, 22, 23, 24, 25
 30 |     static let GPIORPIRev1: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIRev1' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIRev1' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 31 |         .P0: RaspberryGPIO(name:"GPIO0", id:0, baseAddr:0x20000000),
 32 |         .P1: RaspberryGPIO(name:"GPIO1", id:1, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:53:16: warning: static property 'GPIORPIRev2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 51 |     //TODO: Additional GPIO from 28-31 ignored for now
 52 |     // 2, 3, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 22, 23, 24, 25, 27
 53 |     static let GPIORPIRev2: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIRev2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIRev2' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 54 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x20000000),
 55 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:75:16: warning: static property 'GPIORPIPlusZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 73 |     // RaspberryPi A+ and B+, Raspberry Zero - 40 pin header boards
 74 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
 75 |     static let GPIORPIPlusZERO: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIPlusZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIPlusZERO' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x20000000),
 77 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:106:16: warning: static property 'GPIORPI2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
104 |     // RaspberryPi 2
105 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
106 |     static let GPIORPI2: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI2' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
107 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x3F000000),
108 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x3F000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:137:16: warning: static property 'GPIORPI4' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
135 |     // RaspberryPi 4, with classic numbering scheme, see https://github.com/raspberrypi/linux/issues/6037
136 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
137 |     static let GPIORPI4: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI4' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI4' with '@MainActor' 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 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x7E000000),
139 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x7E000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:168:16: warning: static property 'GPIORPI4New' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
166 |     // RaspberryPi 4 with new GPIOs numbering scheme, see https://github.com/raspberrypi/linux/issues/6037
167 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
168 |     static let GPIORPI4New: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI4New' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI4New' with '@MainActor' 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 |         .P2: RaspberryGPIO(name:"GPIO2", id:514, baseAddr:0x7E000000),
170 |         .P3: RaspberryGPIO(name:"GPIO3", id:515, baseAddr:0x7E000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:204:16: warning: static property 'GPIOCHIP' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
202 |     //
203 |     // See: https://docs.getchip.com/chip.html#kernel-4-3-vs-4-4-gpio-how-to-tell-the-difference
204 |     static let GPIOCHIP: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOCHIP' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOCHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
205 |         .P0: GPIO(name:"XIO-P0", id:1013),
206 |         .P1: GPIO(name:"XIO-P1", id:1014),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:253:16: warning: static property 'GPIOBEAGLEBONE' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
251 |     //Clearly this does not support mode change.
252 |     //
253 |     static let GPIOBEAGLEBONE: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOBEAGLEBONE' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOBEAGLEBONE' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
254 |         .P0: GPIO(name:"P8_PIN03_GPIO1_6", id:38),  //P8
255 |         .P1: GPIO(name:"P8_PIN04_GPIO1_7", id:39),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:292:16: warning: static property 'GPIOORANGEPI' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
290 |     // OrangePi
291 |     // The pins are ordered by name: A0-A21(P0-P16), C0-C7(P17-P22), D14(P23), G6-G9(P24-P27)
292 |     static let GPIOORANGEPI: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOORANGEPI' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOORANGEPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 |         .P0: GPIO(sunXi:SunXiGPIO(letter: .A, pin:0)),
294 |         .P1: GPIO(sunXi:SunXiGPIO(letter:.A, pin:1)),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:324:16: warning: static property 'GPIOORANGEPIZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
322 |
323 |     // OrangePiZero
324 |     static let GPIOORANGEPIZERO: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOORANGEPIZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOORANGEPIZERO' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
325 |         .P2: GPIO(sunXi:SunXiGPIO(letter:.A, pin:12)),
326 |         .P3: GPIO(sunXi:SunXiGPIO(letter:.A, pin:11)),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
[7/13] Compiling SwiftyGPIO Mailbox.swift
[8/13] Compiling SwiftyGPIO PWM.swift
/Users/admin/builder/spi-builder-workspace/Sources/PWM.swift:52:16: warning: static property 'PWMRPI1' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
 50 |
 51 |     // RaspberryPis ARMv6 (all 1, Zero, Zero W) PWMs, only accessible ones, divided in channels (can use only one for each channel)
 52 |     static let PWMRPI1: [Int:[GPIOName:PWMOutput]] = [
    |                |- warning: static property 'PWMRPI1' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'PWMRPI1' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |         0: [.P12: RaspberryPWM(gpioId: 12, alt: 0, channel:0, baseAddr: 0x20000000), .P18: RaspberryPWM(gpioId: 18, alt: 5, channel:0, baseAddr: 0x20000000)],
 54 |         1: [.P13: RaspberryPWM(gpioId: 13, alt: 0, channel:1, baseAddr: 0x20000000), .P19: RaspberryPWM(gpioId: 19, alt: 5, channel:1, baseAddr: 0x20000000)]
    :
 69 | // MARK: PWM
 70 |
 71 | public protocol PWMOutput {
    |                 `- note: protocol 'PWMOutput' does not conform to the 'Sendable' protocol
 72 |     func initPWM()
 73 |     func startPWM(period ns: Int, duty percent: Float)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/PWM.swift:58:16: warning: static property 'PWMRPI23' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
 56 |
 57 |     // RaspberryPis ARMv7 (2-3) PWMs, only accessible ones, divided in channels (can use only one for each channel)
 58 |     static let PWMRPI23: [Int:[GPIOName:PWMOutput]] = [
    |                |- warning: static property 'PWMRPI23' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'PWMRPI23' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 59 |         0: [.P12: RaspberryPWM(gpioId: 12, alt: 0, channel:0, baseAddr: 0x3F000000), .P18: RaspberryPWM(gpioId: 18, alt: 5, channel:0, baseAddr: 0x3F000000)],
 60 |         1: [.P13: RaspberryPWM(gpioId: 13, alt: 0, channel:1, baseAddr: 0x3F000000), .P19: RaspberryPWM(gpioId: 19, alt: 5, channel:1, baseAddr: 0x3F000000)]
    :
 69 | // MARK: PWM
 70 |
 71 | public protocol PWMOutput {
    |                 `- note: protocol 'PWMOutput' does not conform to the 'Sendable' protocol
 72 |     func initPWM()
 73 |     func startPWM(period ns: Int, duty percent: Float)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/PWM.swift:63:16: warning: static property 'PWMRPI4' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
 61 |     ]
 62 |     // RaspberryPi 4 PWMs, only accessible ones, divided in channels (can use only one for each channel)
 63 |     static let PWMRPI4: [Int:[GPIOName:PWMOutput]] = [
    |                |- warning: static property 'PWMRPI4' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'PWMRPI4' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |         0: [.P12: RaspberryPWM(gpioId: 12, alt: 0, channel:0, baseAddr: 0xFE000000), .P18: RaspberryPWM(gpioId: 18, alt: 5, channel:0, baseAddr: 0xFE000000)],
 65 |         1: [.P13: RaspberryPWM(gpioId: 13, alt: 0, channel:1, baseAddr: 0xFE000000), .P19: RaspberryPWM(gpioId: 19, alt: 5, channel:1, baseAddr: 0xFE000000)]
    :
 69 | // MARK: PWM
 70 |
 71 | public protocol PWMOutput {
    |                 `- note: protocol 'PWMOutput' does not conform to the 'Sendable' protocol
 72 |     func initPWM()
 73 |     func startPWM(period ns: Int, duty percent: Float)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
[9/13] Compiling SwiftyGPIO I2C.swift
/Users/admin/builder/spi-builder-workspace/Sources/I2C.swift:54:16: warning: static property 'I2CRPI' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 52 | extension SwiftyGPIO {
 53 |     // RaspberryPis I2Cs
 54 |     static let I2CRPI: [Int:I2CInterface] = [
    |                |- warning: static property 'I2CRPI' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'I2CRPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 55 |         0: SysFSI2C(i2cId: 0),
 56 |         1: SysFSI2C(i2cId: 1)
    :
 69 | // MARK: I2C
 70 |
 71 | public protocol I2CInterface {
    |                 `- note: protocol 'I2CInterface' does not conform to the 'Sendable' protocol
 72 |     func isReachable(_ address: Int) -> Bool
 73 |     func setPEC(_ address: Int, enabled: Bool)
/Users/admin/builder/spi-builder-workspace/Sources/I2C.swift:63:16: warning: static property 'I2CCHIP' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 61 |     // i2c.1: after 4.4.13-ntc-mlc connected to the U13 header I2C interface
 62 |     // i2c.2: connected to the U14 header I2C interface, XIO gpios are connected on this bus
 63 |     static let I2CCHIP: [Int:I2CInterface] = [
    |                |- warning: static property 'I2CCHIP' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'I2CCHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |         1: SysFSI2C(i2cId: 1),
 65 |         2: SysFSI2C(i2cId: 2),
    :
 69 | // MARK: I2C
 70 |
 71 | public protocol I2CInterface {
    |                 `- note: protocol 'I2CInterface' does not conform to the 'Sendable' protocol
 72 |     func isReachable(_ address: Int) -> Bool
 73 |     func setPEC(_ address: Int, enabled: Bool)
[10/13] Compiling SwiftyGPIO ADC.swift
/Users/admin/builder/spi-builder-workspace/Sources/ADC.swift:54:16: warning: static property 'ADCBBB' is not concurrency-safe because non-'Sendable' type '[Int : any ADCInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 52 | extension SwiftyGPIO {
 53 |     // Beaglebone Black ADCs
 54 |     static let ADCBBB: [Int: ADCInterface] = [
    |                |- warning: static property 'ADCBBB' is not concurrency-safe because non-'Sendable' type '[Int : any ADCInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'ADCBBB' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 55 |         0: SysFSADC(adcPath: "/sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-adc/iio:device1/in_voltage0_raw", id: 0),
 56 |         1: SysFSADC(adcPath: "/sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-adc/iio:device1/in_voltage1_raw", id: 1),
    :
 61 |
 62 | // MARK: ADC
 63 | public protocol ADCInterface {
    |                 `- note: protocol 'ADCInterface' does not conform to the 'Sendable' protocol
 64 |     var id: Int { get }
 65 |     func getSample() throws -> Int
[11/13] Emitting module SwiftyGPIO
/Users/admin/builder/spi-builder-workspace/Sources/ADC.swift:54:16: warning: static property 'ADCBBB' is not concurrency-safe because non-'Sendable' type '[Int : any ADCInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 52 | extension SwiftyGPIO {
 53 |     // Beaglebone Black ADCs
 54 |     static let ADCBBB: [Int: ADCInterface] = [
    |                |- warning: static property 'ADCBBB' is not concurrency-safe because non-'Sendable' type '[Int : any ADCInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'ADCBBB' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 55 |         0: SysFSADC(adcPath: "/sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-adc/iio:device1/in_voltage0_raw", id: 0),
 56 |         1: SysFSADC(adcPath: "/sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-adc/iio:device1/in_voltage1_raw", id: 1),
    :
 61 |
 62 | // MARK: ADC
 63 | public protocol ADCInterface {
    |                 `- note: protocol 'ADCInterface' does not conform to the 'Sendable' protocol
 64 |     var id: Int { get }
 65 |     func getSample() throws -> Int
/Users/admin/builder/spi-builder-workspace/Sources/I2C.swift:54:16: warning: static property 'I2CRPI' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 52 | extension SwiftyGPIO {
 53 |     // RaspberryPis I2Cs
 54 |     static let I2CRPI: [Int:I2CInterface] = [
    |                |- warning: static property 'I2CRPI' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'I2CRPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 55 |         0: SysFSI2C(i2cId: 0),
 56 |         1: SysFSI2C(i2cId: 1)
    :
 69 | // MARK: I2C
 70 |
 71 | public protocol I2CInterface {
    |                 `- note: protocol 'I2CInterface' does not conform to the 'Sendable' protocol
 72 |     func isReachable(_ address: Int) -> Bool
 73 |     func setPEC(_ address: Int, enabled: Bool)
/Users/admin/builder/spi-builder-workspace/Sources/I2C.swift:63:16: warning: static property 'I2CCHIP' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 61 |     // i2c.1: after 4.4.13-ntc-mlc connected to the U13 header I2C interface
 62 |     // i2c.2: connected to the U14 header I2C interface, XIO gpios are connected on this bus
 63 |     static let I2CCHIP: [Int:I2CInterface] = [
    |                |- warning: static property 'I2CCHIP' is not concurrency-safe because non-'Sendable' type '[Int : any I2CInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'I2CCHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |         1: SysFSI2C(i2cId: 1),
 65 |         2: SysFSI2C(i2cId: 2),
    :
 69 | // MARK: I2C
 70 |
 71 | public protocol I2CInterface {
    |                 `- note: protocol 'I2CInterface' does not conform to the 'Sendable' protocol
 72 |     func isReachable(_ address: Int) -> Bool
 73 |     func setPEC(_ address: Int, enabled: Bool)
/Users/admin/builder/spi-builder-workspace/Sources/PWM.swift:52:16: warning: static property 'PWMRPI1' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
 50 |
 51 |     // RaspberryPis ARMv6 (all 1, Zero, Zero W) PWMs, only accessible ones, divided in channels (can use only one for each channel)
 52 |     static let PWMRPI1: [Int:[GPIOName:PWMOutput]] = [
    |                |- warning: static property 'PWMRPI1' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'PWMRPI1' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |         0: [.P12: RaspberryPWM(gpioId: 12, alt: 0, channel:0, baseAddr: 0x20000000), .P18: RaspberryPWM(gpioId: 18, alt: 5, channel:0, baseAddr: 0x20000000)],
 54 |         1: [.P13: RaspberryPWM(gpioId: 13, alt: 0, channel:1, baseAddr: 0x20000000), .P19: RaspberryPWM(gpioId: 19, alt: 5, channel:1, baseAddr: 0x20000000)]
    :
 69 | // MARK: PWM
 70 |
 71 | public protocol PWMOutput {
    |                 `- note: protocol 'PWMOutput' does not conform to the 'Sendable' protocol
 72 |     func initPWM()
 73 |     func startPWM(period ns: Int, duty percent: Float)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/PWM.swift:58:16: warning: static property 'PWMRPI23' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
 56 |
 57 |     // RaspberryPis ARMv7 (2-3) PWMs, only accessible ones, divided in channels (can use only one for each channel)
 58 |     static let PWMRPI23: [Int:[GPIOName:PWMOutput]] = [
    |                |- warning: static property 'PWMRPI23' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'PWMRPI23' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 59 |         0: [.P12: RaspberryPWM(gpioId: 12, alt: 0, channel:0, baseAddr: 0x3F000000), .P18: RaspberryPWM(gpioId: 18, alt: 5, channel:0, baseAddr: 0x3F000000)],
 60 |         1: [.P13: RaspberryPWM(gpioId: 13, alt: 0, channel:1, baseAddr: 0x3F000000), .P19: RaspberryPWM(gpioId: 19, alt: 5, channel:1, baseAddr: 0x3F000000)]
    :
 69 | // MARK: PWM
 70 |
 71 | public protocol PWMOutput {
    |                 `- note: protocol 'PWMOutput' does not conform to the 'Sendable' protocol
 72 |     func initPWM()
 73 |     func startPWM(period ns: Int, duty percent: Float)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/PWM.swift:63:16: warning: static property 'PWMRPI4' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
 61 |     ]
 62 |     // RaspberryPi 4 PWMs, only accessible ones, divided in channels (can use only one for each channel)
 63 |     static let PWMRPI4: [Int:[GPIOName:PWMOutput]] = [
    |                |- warning: static property 'PWMRPI4' is not concurrency-safe because non-'Sendable' type '[Int : [GPIOName : any PWMOutput]]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'PWMRPI4' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |         0: [.P12: RaspberryPWM(gpioId: 12, alt: 0, channel:0, baseAddr: 0xFE000000), .P18: RaspberryPWM(gpioId: 18, alt: 5, channel:0, baseAddr: 0xFE000000)],
 65 |         1: [.P13: RaspberryPWM(gpioId: 13, alt: 0, channel:1, baseAddr: 0xFE000000), .P19: RaspberryPWM(gpioId: 19, alt: 5, channel:1, baseAddr: 0xFE000000)]
    :
 69 | // MARK: PWM
 70 |
 71 | public protocol PWMOutput {
    |                 `- note: protocol 'PWMOutput' does not conform to the 'Sendable' protocol
 72 |     func initPWM()
 73 |     func startPWM(period ns: Int, duty percent: Float)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:30:16: warning: static property 'GPIORPIRev1' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 28 |     // RaspberryPi A and B Revision 1 (Before September 2012) - 26 pin header boards
 29 |     // 0, 1, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 21, 22, 23, 24, 25
 30 |     static let GPIORPIRev1: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIRev1' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIRev1' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 31 |         .P0: RaspberryGPIO(name:"GPIO0", id:0, baseAddr:0x20000000),
 32 |         .P1: RaspberryGPIO(name:"GPIO1", id:1, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:53:16: warning: static property 'GPIORPIRev2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 51 |     //TODO: Additional GPIO from 28-31 ignored for now
 52 |     // 2, 3, 4, 7, 8, 9, 10, 11, 14, 15, 17, 18, 22, 23, 24, 25, 27
 53 |     static let GPIORPIRev2: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIRev2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIRev2' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 54 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x20000000),
 55 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:75:16: warning: static property 'GPIORPIPlusZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
 73 |     // RaspberryPi A+ and B+, Raspberry Zero - 40 pin header boards
 74 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
 75 |     static let GPIORPIPlusZERO: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPIPlusZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPIPlusZERO' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x20000000),
 77 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x20000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:106:16: warning: static property 'GPIORPI2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
104 |     // RaspberryPi 2
105 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
106 |     static let GPIORPI2: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI2' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI2' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
107 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x3F000000),
108 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x3F000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:137:16: warning: static property 'GPIORPI4' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
135 |     // RaspberryPi 4, with classic numbering scheme, see https://github.com/raspberrypi/linux/issues/6037
136 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
137 |     static let GPIORPI4: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI4' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI4' with '@MainActor' 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 |         .P2: RaspberryGPIO(name:"GPIO2", id:2, baseAddr:0x7E000000),
139 |         .P3: RaspberryGPIO(name:"GPIO3", id:3, baseAddr:0x7E000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:168:16: warning: static property 'GPIORPI4New' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
166 |     // RaspberryPi 4 with new GPIOs numbering scheme, see https://github.com/raspberrypi/linux/issues/6037
167 |     // 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
168 |     static let GPIORPI4New: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIORPI4New' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIORPI4New' with '@MainActor' 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 |         .P2: RaspberryGPIO(name:"GPIO2", id:514, baseAddr:0x7E000000),
170 |         .P3: RaspberryGPIO(name:"GPIO3", id:515, baseAddr:0x7E000000),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:204:16: warning: static property 'GPIOCHIP' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
202 |     //
203 |     // See: https://docs.getchip.com/chip.html#kernel-4-3-vs-4-4-gpio-how-to-tell-the-difference
204 |     static let GPIOCHIP: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOCHIP' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOCHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
205 |         .P0: GPIO(name:"XIO-P0", id:1013),
206 |         .P1: GPIO(name:"XIO-P1", id:1014),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:253:16: warning: static property 'GPIOBEAGLEBONE' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
251 |     //Clearly this does not support mode change.
252 |     //
253 |     static let GPIOBEAGLEBONE: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOBEAGLEBONE' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOBEAGLEBONE' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
254 |         .P0: GPIO(name:"P8_PIN03_GPIO1_6", id:38),  //P8
255 |         .P1: GPIO(name:"P8_PIN04_GPIO1_7", id:39),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:292:16: warning: static property 'GPIOORANGEPI' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
290 |     // OrangePi
291 |     // The pins are ordered by name: A0-A21(P0-P16), C0-C7(P17-P22), D14(P23), G6-G9(P24-P27)
292 |     static let GPIOORANGEPI: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOORANGEPI' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOORANGEPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 |         .P0: GPIO(sunXi:SunXiGPIO(letter: .A, pin:0)),
294 |         .P1: GPIO(sunXi:SunXiGPIO(letter:.A, pin:1)),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/Presets.swift:324:16: warning: static property 'GPIOORANGEPIZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
322 |
323 |     // OrangePiZero
324 |     static let GPIOORANGEPIZERO: [GPIOName:GPIO] = [
    |                |- warning: static property 'GPIOORANGEPIZERO' is not concurrency-safe because non-'Sendable' type '[GPIOName : GPIO]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'GPIOORANGEPIZERO' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
325 |         .P2: GPIO(sunXi:SunXiGPIO(letter:.A, pin:12)),
326 |         .P3: GPIO(sunXi:SunXiGPIO(letter:.A, pin:11)),
/Users/admin/builder/spi-builder-workspace/Sources/SwiftyGPIO.swift:457:13: note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
 35 | // MARK: GPIO
 36 |
 37 | public class GPIO {
    |              `- note: class 'GPIO' does not conform to the 'Sendable' protocol
 38 |     public var bounceTime: TimeInterval?
 39 |
    :
455 | }
456 |
457 | public enum GPIOName: String {
    |             `- note: consider making enum 'GPIOName' conform to the 'Sendable' protocol
458 |     case P0
459 |     case P1
/Users/admin/builder/spi-builder-workspace/Sources/SPI.swift:54:16: warning: static property 'SPIRPI' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 52 | extension SwiftyGPIO {
 53 |     // RaspberryPis SPIs
 54 |     static let SPIRPI: [Int:SPIInterface] = [
    |                |- warning: static property 'SPIRPI' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'SPIRPI' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 55 |         0: SysFSSPI(spiId:"0.0"),
 56 |         1: SysFSSPI(spiId:"0.1")
    :
 68 | // MARK: SPI
 69 |
 70 | public protocol SPIInterface {
    |                 `- note: protocol 'SPIInterface' does not conform to the 'Sendable' protocol
 71 |     // Send data at the requested frequency (from 500Khz to 20 Mhz)
 72 |     func sendData(_ values: [UInt8], frequencyHz: UInt)
/Users/admin/builder/spi-builder-workspace/Sources/SPI.swift:63:16: warning: static property 'SPICHIP' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
 61 |     // See: https://bbs.nextthing.co/t/can-interface-spi-and-can-utils/18042/3
 62 |     //      https://bbs.nextthing.co/t/can-bus-mcp2515-via-spi-anyone/11388/2
 63 |     static let SPICHIP: [Int:SPIInterface] = [
    |                |- warning: static property 'SPICHIP' is not concurrency-safe because non-'Sendable' type '[Int : any SPIInterface]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'SPICHIP' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 64 |         0: SysFSSPI(spiId:"2.0")
 65 |     ]
    :
 68 | // MARK: SPI
 69 |
 70 | public protocol SPIInterface {
    |                 `- note: protocol 'SPIInterface' does not conform to the 'Sendable' protocol
 71 |     // Send data at the requested frequency (from 500Khz to 20 Mhz)
 72 |     func sendData(_ values: [UInt8], frequencyHz: UInt)
[12/13] Compiling SwiftyGPIO 1Wire.swift
[13/13] Compiling SwiftyGPIO UART.swift
Build complete! (20.74s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftyGPIO",
  "name" : "SwiftyGPIO",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftyGPIO",
      "targets" : [
        "SwiftyGPIO"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftyGPIO",
      "module_type" : "SwiftTarget",
      "name" : "SwiftyGPIO",
      "path" : "Sources",
      "product_memberships" : [
        "SwiftyGPIO"
      ],
      "sources" : [
        "1Wire.swift",
        "ADC.swift",
        "I2C.swift",
        "Mailbox.swift",
        "PWM.swift",
        "Presets.swift",
        "SPI.swift",
        "SunXi.swift",
        "SwiftyGPIO.swift",
        "UART.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.