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 OTPKit, reference main (159b1f), with Swift 6.0 for macOS (SPM) on 29 Nov 2024 18:17:02 UTC.

Swift 6 data race errors: 11

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:302: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                              `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:316: warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:34:15: note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | public struct OTPModuleIdentifier: Comparable, Hashable {
    |               `- note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 35 |
 36 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1673:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1671 |
1672 |                         // notify the debug delegate
1673 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received name advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1674 |
1675 |                     case .system:
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:316: warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:34:15: note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | public struct OTPModuleIdentifier: Comparable, Hashable {
    |               `- note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 35 |
 36 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1743:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1741 |
1742 |                         // notify the debug delegate
1743 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received system advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1744 |
1745 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1772:52: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1770 |
1771 |                         // notify the delegate
1772 |                         self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(consumerStatus) }
     |                                                    `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1773 |
1774 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1772:97: warning: capture of 'consumerStatus' with non-sendable type 'OTPConsumerStatus' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1770 |
1771 |                         // notify the delegate
1772 |                         self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(consumerStatus) }
     |                                                                                                 `- warning: capture of 'consumerStatus' with non-sendable type 'OTPConsumerStatus' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1773 |
1774 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:143:15: note: consider making struct 'OTPConsumerStatus' conform to the 'Sendable' protocol
141 | */
142 |
143 | public struct OTPConsumerStatus: OTPComponentStatus {
    |               `- note: consider making struct 'OTPConsumerStatus' conform to the 'Sendable' protocol
144 |
145 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1779:43: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1777 |
1778 |                     // there was an error in the otp layer
1779 |                     delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1780 |
1781 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1786:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1784 |
1785 |                 // there was an error in the advertisement layer
1786 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1787 |
1788 |             } catch let error as ModuleAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1791:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1789 |
1790 |                 // there was an error in the module advertisement layer
1791 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1792 |
1793 |             } catch let error as SystemAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1796:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1794 |
1795 |                 // there was an error in the system advertisement layer
1796 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1797 |
1798 |             } catch let error as NameAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1801:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1799 |
1800 |                 // there was an error in the name advertisement layer
1801 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1802 |
1803 |             } catch let error as TransformLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1806:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1804 |
1805 |                 // there was an error in the transform layer
1806 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1807 |
1808 |             } catch let error {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1811:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1809 |
1810 |                 // there was an unknown error
1811 |                 delegateQueue.async { self.protocolErrorDelegate?.unknownError(error.localizedDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1812 |
1813 |             }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:40: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:109: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:151: warning: capture of 'newIpMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                                                                       `- warning: capture of 'newIpMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1889:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1887 |             if self._isConnected != false {
1888 |                 self._isConnected = false
1889 |                 delegateQueue.async { self.producerDelegate?.disconnected(self, with: error) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1890 |             }
1891 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1902:31: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1900 |     */
1901 |     func debugSocketLog(_ logMessage: String) {
1902 |         delegateQueue.async { self.debugDelegate?.debugSocketLog(logMessage) }
     |                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1903 |     }
1904 |
[37/38] Compiling OTPKit ProducerConsumer.swift
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:112:16: warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
110 |
111 |     /// The multicast address used by OTP for advertisement messages.
112 |     static var advertisementMessageHostname: Hostname = "239.159.2.1"
    |                |- warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'advertisementMessageHostname' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'advertisementMessageHostname' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
113 |
114 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:142:16: warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
140 |
141 |     /// The multicast address used by OTP for advertisement messages.
142 |     static var advertisementMessageHostname: Hostname = "ff18::9f:00:02:01"
    |                |- warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'advertisementMessageHostname' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'advertisementMessageHostname' with '@MainActor' 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 |
144 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:793:40: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
 791 |             }
 792 |
 793 |             self.delegateQueue.async { self.debugDelegate?.debugLog("Reset \(systemNumbers?.count ?? Int(SystemNumber.maxSystemNumber)) transform message folio numbers to \(FolioNumber.min)") }
     |                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 794 |         }
 795 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:811:49: warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
 809 |
 810 |                     // notify the debug delegate
 811 |                     self?.delegateQueue.async { self?.debugDelegate?.debugLog("Completed initial wait for module advertisement messages") }
     |                                                 `- warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 812 |
 813 |                     // start the transform heartbeat
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:811:49: warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 809 |
 810 |                     // notify the debug delegate
 811 |                     self?.delegateQueue.async { self?.debugDelegate?.debugLog("Completed initial wait for module advertisement messages") }
     |                                                 `- warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 812 |
 813 |                     // start the transform heartbeat
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:858:53: warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
 856 |
 857 |                         // notify the debug delegate
 858 |                         self?.delegateQueue.async { self?.debugDelegate?.debugLog("Check for stale modules. Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                     `- warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 859 |
 860 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:858:129: warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 856 |
 857 |                         // notify the debug delegate
 858 |                         self?.delegateQueue.async { self?.debugDelegate?.debugLog("Check for stale modules. Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                                                                                                 `- warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 859 |
 860 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:85:8: note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 83 | */
 84 |
 85 | struct ModuleIdentifierNotification: Comparable, Hashable {
    |        `- note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 86 |
 87 |     /// Identifies the module.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:858:53: warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 856 |
 857 |                         // notify the debug delegate
 858 |                         self?.delegateQueue.async { self?.debugDelegate?.debugLog("Check for stale modules. Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                     `- warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 859 |
 860 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1072:35: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1070 |
1071 |         for consumer in lostConsumers {
1072 |             delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: consumer.ipMode, ipAddresses: consumer.ipAddresses, sequenceErrors: consumer.sequenceErrors, state: .offline, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                   `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1073 |         }
1074 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1072:104: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1070 |
1071 |         for consumer in lostConsumers {
1072 |             delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: consumer.ipMode, ipAddresses: consumer.ipAddresses, sequenceErrors: consumer.sequenceErrors, state: .offline, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                        `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1073 |         }
1074 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1095:59: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1093 |         DispatchQueue.global().async {
1094 |
1095 |             let previousSystemNumbers = Self.queue.sync { self.systemNumbers }
     |                                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1096 |
1097 |             // get the new system numbers for all points which have modules which have been requested
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1095:59: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1093 |         DispatchQueue.global().async {
1094 |
1095 |             let previousSystemNumbers = Self.queue.sync { self.systemNumbers }
     |                                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1096 |
1097 |             // get the new system numbers for all points which have modules which have been requested
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1098:51: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1096 |
1097 |             // get the new system numbers for all points which have modules which have been requested
1098 |             let systemNumbers = Self.queue.sync { self.points.filter { !$0.modules.isEmpty && $0.hasRequestedModules }.map { $0.address.systemNumber } }
     |                                                   `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1099 |             let newSystemNumbers = Array(Set(systemNumbers)).sorted()
1100 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1105:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1103 |
1104 |                 Self.queue.sync(flags: .barrier) {
1105 |                     self.systemNumbers = newSystemNumbers
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1106 |                 }
1107 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1111:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1109 |
1110 |                 Self.queue.sync(flags: .barrier) {
1111 |                     self.systemAdvertisementMessage = systemAdvertisementMessage
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1112 |                 }
1113 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1127:70: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1125 |         DispatchQueue.global().async {
1126 |
1127 |             let previousAddressPointDescriptions = Self.queue.sync { self.nameAddressPointDescriptions }
     |                                                                      `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1128 |
1129 |             // get the new address point descriptions (must not be empty), and the point should have modules
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1127:70: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1125 |         DispatchQueue.global().async {
1126 |
1127 |             let previousAddressPointDescriptions = Self.queue.sync { self.nameAddressPointDescriptions }
     |                                                                      `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1128 |
1129 |             // get the new address point descriptions (must not be empty), and the point should have modules
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1131:62: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1129 |             // get the new address point descriptions (must not be empty), and the point should have modules
1130 |
1131 |             let addressPointDescriptions = Self.queue.sync { self.points.filter { !$0.modules.isEmpty && !$0.name.isEmpty }.map { AddressPointDescription(address: $0.address, pointName: $0.name) } }
     |                                                              `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1132 |             let newAddressPointDescriptions = Array(Set(addressPointDescriptions)).sorted()
1133 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1161:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1159 |
1160 |                 Self.queue.sync(flags: .barrier) {
1161 |                     self.nameAddressPointDescriptions = newAddressPointDescriptions
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1162 |                 }
1163 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1167:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1165 |
1166 |                 Self.queue.sync(flags: .barrier) {
1167 |                     self.nameAdvertisementMessages = nameAdvertisementMessages
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1168 |                 }
1169 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1496:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1494 |
1495 |                         // notify the debug delegate
1496 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received module advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1497 |
1498 |                         // try to extract a module advertisement layer
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1502:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1500 |
1501 |                         // notify the debug delegate
1502 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received module identifiers \(moduleAdvertisementLayer.moduleIdentifiers.map { $0.logDescription }.joined(separator: ", ")) from \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1503 |
1504 |                         let now = Date()
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1502:107: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1500 |
1501 |                         // notify the debug delegate
1502 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received module identifiers \(moduleAdvertisementLayer.moduleIdentifiers.map { $0.logDescription }.joined(separator: ", ")) from \(otpLayer.cid)") }
     |                                                                                                           `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1503 |
1504 |                         let now = Date()
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1527:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1525 |
1526 |                         // notify the debug delegate
1527 |                         delegateQueue.async { self.debugDelegate?.debugLog("Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1528 |
1529 |                         // only rebuild if the identifiers are different
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1527:97: warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1525 |
1526 |                         // notify the debug delegate
1527 |                         delegateQueue.async { self.debugDelegate?.debugLog("Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                                                                 `- warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1528 |
1529 |                         // only rebuild if the identifiers are different
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:85:8: note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 83 | */
 84 |
 85 | struct ModuleIdentifierNotification: Comparable, Hashable {
    |        `- note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 86 |
 87 |     /// Identifies the module.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:316: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:302: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                              `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:316: warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:34:15: note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | public struct OTPModuleIdentifier: Comparable, Hashable {
    |               `- note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 35 |
 36 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1673:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1671 |
1672 |                         // notify the debug delegate
1673 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received name advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1674 |
1675 |                     case .system:
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:316: warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:34:15: note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | public struct OTPModuleIdentifier: Comparable, Hashable {
    |               `- note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 35 |
 36 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1743:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1741 |
1742 |                         // notify the debug delegate
1743 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received system advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1744 |
1745 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1772:52: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1770 |
1771 |                         // notify the delegate
1772 |                         self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(consumerStatus) }
     |                                                    `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1773 |
1774 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1772:97: warning: capture of 'consumerStatus' with non-sendable type 'OTPConsumerStatus' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1770 |
1771 |                         // notify the delegate
1772 |                         self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(consumerStatus) }
     |                                                                                                 `- warning: capture of 'consumerStatus' with non-sendable type 'OTPConsumerStatus' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1773 |
1774 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:143:15: note: consider making struct 'OTPConsumerStatus' conform to the 'Sendable' protocol
141 | */
142 |
143 | public struct OTPConsumerStatus: OTPComponentStatus {
    |               `- note: consider making struct 'OTPConsumerStatus' conform to the 'Sendable' protocol
144 |
145 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1779:43: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1777 |
1778 |                     // there was an error in the otp layer
1779 |                     delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1780 |
1781 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1786:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1784 |
1785 |                 // there was an error in the advertisement layer
1786 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1787 |
1788 |             } catch let error as ModuleAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1791:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1789 |
1790 |                 // there was an error in the module advertisement layer
1791 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1792 |
1793 |             } catch let error as SystemAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1796:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1794 |
1795 |                 // there was an error in the system advertisement layer
1796 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1797 |
1798 |             } catch let error as NameAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1801:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1799 |
1800 |                 // there was an error in the name advertisement layer
1801 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1802 |
1803 |             } catch let error as TransformLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1806:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1804 |
1805 |                 // there was an error in the transform layer
1806 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1807 |
1808 |             } catch let error {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1811:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1809 |
1810 |                 // there was an unknown error
1811 |                 delegateQueue.async { self.protocolErrorDelegate?.unknownError(error.localizedDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1812 |
1813 |             }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:40: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:109: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:151: warning: capture of 'newIpMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                                                                       `- warning: capture of 'newIpMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1889:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1887 |             if self._isConnected != false {
1888 |                 self._isConnected = false
1889 |                 delegateQueue.async { self.producerDelegate?.disconnected(self, with: error) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1890 |             }
1891 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1902:31: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1900 |     */
1901 |     func debugSocketLog(_ logMessage: String) {
1902 |         delegateQueue.async { self.debugDelegate?.debugSocketLog(logMessage) }
     |                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1903 |     }
1904 |
[38/38] Compiling OTPKit AdvertismentLayer.swift
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:112:16: warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
110 |
111 |     /// The multicast address used by OTP for advertisement messages.
112 |     static var advertisementMessageHostname: Hostname = "239.159.2.1"
    |                |- warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'advertisementMessageHostname' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'advertisementMessageHostname' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
113 |
114 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:142:16: warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
140 |
141 |     /// The multicast address used by OTP for advertisement messages.
142 |     static var advertisementMessageHostname: Hostname = "ff18::9f:00:02:01"
    |                |- warning: static property 'advertisementMessageHostname' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'advertisementMessageHostname' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'advertisementMessageHostname' with '@MainActor' 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 |
144 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:793:40: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
 791 |             }
 792 |
 793 |             self.delegateQueue.async { self.debugDelegate?.debugLog("Reset \(systemNumbers?.count ?? Int(SystemNumber.maxSystemNumber)) transform message folio numbers to \(FolioNumber.min)") }
     |                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 794 |         }
 795 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:811:49: warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
 809 |
 810 |                     // notify the debug delegate
 811 |                     self?.delegateQueue.async { self?.debugDelegate?.debugLog("Completed initial wait for module advertisement messages") }
     |                                                 `- warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 812 |
 813 |                     // start the transform heartbeat
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:811:49: warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 809 |
 810 |                     // notify the debug delegate
 811 |                     self?.delegateQueue.async { self?.debugDelegate?.debugLog("Completed initial wait for module advertisement messages") }
     |                                                 `- warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 812 |
 813 |                     // start the transform heartbeat
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:858:53: warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
 856 |
 857 |                         // notify the debug delegate
 858 |                         self?.delegateQueue.async { self?.debugDelegate?.debugLog("Check for stale modules. Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                     `- warning: capture of 'self' with non-sendable type 'OTPProducer?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 859 |
 860 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:858:129: warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 856 |
 857 |                         // notify the debug delegate
 858 |                         self?.delegateQueue.async { self?.debugDelegate?.debugLog("Check for stale modules. Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                                                                                                 `- warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 859 |
 860 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:85:8: note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 83 | */
 84 |
 85 | struct ModuleIdentifierNotification: Comparable, Hashable {
    |        `- note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 86 |
 87 |     /// Identifies the module.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:858:53: warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 856 |
 857 |                         // notify the debug delegate
 858 |                         self?.delegateQueue.async { self?.debugDelegate?.debugLog("Check for stale modules. Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                     `- warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 859 |
 860 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1072:35: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1070 |
1071 |         for consumer in lostConsumers {
1072 |             delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: consumer.ipMode, ipAddresses: consumer.ipAddresses, sequenceErrors: consumer.sequenceErrors, state: .offline, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                   `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1073 |         }
1074 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1072:104: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1070 |
1071 |         for consumer in lostConsumers {
1072 |             delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: consumer.ipMode, ipAddresses: consumer.ipAddresses, sequenceErrors: consumer.sequenceErrors, state: .offline, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                        `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1073 |         }
1074 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1095:59: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1093 |         DispatchQueue.global().async {
1094 |
1095 |             let previousSystemNumbers = Self.queue.sync { self.systemNumbers }
     |                                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1096 |
1097 |             // get the new system numbers for all points which have modules which have been requested
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1095:59: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1093 |         DispatchQueue.global().async {
1094 |
1095 |             let previousSystemNumbers = Self.queue.sync { self.systemNumbers }
     |                                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1096 |
1097 |             // get the new system numbers for all points which have modules which have been requested
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1098:51: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1096 |
1097 |             // get the new system numbers for all points which have modules which have been requested
1098 |             let systemNumbers = Self.queue.sync { self.points.filter { !$0.modules.isEmpty && $0.hasRequestedModules }.map { $0.address.systemNumber } }
     |                                                   `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1099 |             let newSystemNumbers = Array(Set(systemNumbers)).sorted()
1100 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1105:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1103 |
1104 |                 Self.queue.sync(flags: .barrier) {
1105 |                     self.systemNumbers = newSystemNumbers
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1106 |                 }
1107 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1111:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1109 |
1110 |                 Self.queue.sync(flags: .barrier) {
1111 |                     self.systemAdvertisementMessage = systemAdvertisementMessage
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1112 |                 }
1113 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1127:70: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1125 |         DispatchQueue.global().async {
1126 |
1127 |             let previousAddressPointDescriptions = Self.queue.sync { self.nameAddressPointDescriptions }
     |                                                                      `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1128 |
1129 |             // get the new address point descriptions (must not be empty), and the point should have modules
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1127:70: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1125 |         DispatchQueue.global().async {
1126 |
1127 |             let previousAddressPointDescriptions = Self.queue.sync { self.nameAddressPointDescriptions }
     |                                                                      `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1128 |
1129 |             // get the new address point descriptions (must not be empty), and the point should have modules
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1131:62: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1129 |             // get the new address point descriptions (must not be empty), and the point should have modules
1130 |
1131 |             let addressPointDescriptions = Self.queue.sync { self.points.filter { !$0.modules.isEmpty && !$0.name.isEmpty }.map { AddressPointDescription(address: $0.address, pointName: $0.name) } }
     |                                                              `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1132 |             let newAddressPointDescriptions = Array(Set(addressPointDescriptions)).sorted()
1133 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1161:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1159 |
1160 |                 Self.queue.sync(flags: .barrier) {
1161 |                     self.nameAddressPointDescriptions = newAddressPointDescriptions
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1162 |                 }
1163 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1167:21: warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1165 |
1166 |                 Self.queue.sync(flags: .barrier) {
1167 |                     self.nameAdvertisementMessages = nameAdvertisementMessages
     |                     `- warning: capture of 'self' with non-sendable type 'OTPProducer' in an isolated closure; this is an error in the Swift 6 language mode
1168 |                 }
1169 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1496:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1494 |
1495 |                         // notify the debug delegate
1496 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received module advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1497 |
1498 |                         // try to extract a module advertisement layer
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1502:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1500 |
1501 |                         // notify the debug delegate
1502 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received module identifiers \(moduleAdvertisementLayer.moduleIdentifiers.map { $0.logDescription }.joined(separator: ", ")) from \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1503 |
1504 |                         let now = Date()
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1502:107: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1500 |
1501 |                         // notify the debug delegate
1502 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received module identifiers \(moduleAdvertisementLayer.moduleIdentifiers.map { $0.logDescription }.joined(separator: ", ")) from \(otpLayer.cid)") }
     |                                                                                                           `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1503 |
1504 |                         let now = Date()
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1527:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1525 |
1526 |                         // notify the debug delegate
1527 |                         delegateQueue.async { self.debugDelegate?.debugLog("Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1528 |
1529 |                         // only rebuild if the identifiers are different
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1527:97: warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1525 |
1526 |                         // notify the debug delegate
1527 |                         delegateQueue.async { self.debugDelegate?.debugLog("Resulting modules \(newModuleIdentifiers.map { $0.moduleIdentifier.logDescription }.joined(separator: ", "))") }
     |                                                                                                 `- warning: capture of 'newModuleIdentifiers' with non-sendable type '[ModuleIdentifierNotification]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1528 |
1529 |                         // only rebuild if the identifiers are different
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:85:8: note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 83 | */
 84 |
 85 | struct ModuleIdentifierNotification: Comparable, Hashable {
    |        `- note: consider making struct 'ModuleIdentifierNotification' conform to the 'Sendable' protocol
 86 |
 87 |     /// Identifies the module.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1582:316: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1580 |
1581 |                                 // notify the delegate of the consumer status
1582 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1583 |
1584 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1600:302: warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1598 |
1599 |                             // notify the delegate of the consumer status
1600 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: moduleAdvertisementLayer.moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                              `- warning: capture of 'moduleAdvertisementLayer' with non-sendable type 'ModuleAdvertismentLayer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1601 |
1602 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Layers/ModuleAdvertisementLayer.swift:34:8: note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | struct ModuleAdvertismentLayer {
    |        `- note: consider making struct 'ModuleAdvertismentLayer' conform to the 'Sendable' protocol
 35 |
 36 |     /// The offset from which length counting begins.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1650:316: warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1648 |
1649 |                                 // notify the delegate of the consumer status
1650 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1651 |
1652 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:34:15: note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | public struct OTPModuleIdentifier: Comparable, Hashable {
    |               `- note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 35 |
 36 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1667:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1665 |
1666 |                             // notify the delegate of the consumer status
1667 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1668 |
1669 |
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1673:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1671 |
1672 |                         // notify the debug delegate
1673 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received name advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1674 |
1675 |                     case .system:
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:60: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                            `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:158: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                              `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:180: warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                    `- warning: capture of 'existingComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:282: warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                          `- warning: capture of 'notifiedState' with non-sendable type 'OTPComponentState' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:35:13: note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 33 |
 34 | */
 35 | public enum OTPComponentState: String {
    |             `- note: consider making enum 'OTPComponentState' conform to the 'Sendable' protocol
 36 |
 37 |     /// This component is offline.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1721:316: warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1719 |
1720 |                                 // notify the delegate of the consumer status
1721 |                                 self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: consumer.cid, ipMode: existingComponentIPMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: notifiedState, moduleIdentifiers: moduleIdentifiers)) }
     |                                                                                                                                                                                                                                                                                                                            `- warning: capture of 'moduleIdentifiers' with non-sendable type '[OTPModuleIdentifier]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1722 |
1723 |                                 // update both name and ip when this happens
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Types/ModuleIdentifier.swift:34:15: note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 32 | */
 33 |
 34 | public struct OTPModuleIdentifier: Comparable, Hashable {
    |               `- note: consider making struct 'OTPModuleIdentifier' conform to the 'Sendable' protocol
 35 |
 36 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:56: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:176: warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                `- warning: capture of 'newComponentIPMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1738:237: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1736 |
1737 |                             // notify the delegate of the consumer status
1738 |                             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: otpLayer.componentName, cid: otpLayer.cid, ipMode: newComponentIPMode, ipAddresses: [hostname], sequenceErrors: consumer.sequenceErrors, state: .advertising, moduleIdentifiers: [])) }
     |                                                                                                                                                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1739 |
1740 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1743:47: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1741 |
1742 |                         // notify the debug delegate
1743 |                         delegateQueue.async { self.debugDelegate?.debugLog("Received system advertisement message from \(otpLayer.componentName) \(otpLayer.cid)") }
     |                                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1744 |
1745 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1772:52: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1770 |
1771 |                         // notify the delegate
1772 |                         self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(consumerStatus) }
     |                                                    `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1773 |
1774 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1772:97: warning: capture of 'consumerStatus' with non-sendable type 'OTPConsumerStatus' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1770 |
1771 |                         // notify the delegate
1772 |                         self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(consumerStatus) }
     |                                                                                                 `- warning: capture of 'consumerStatus' with non-sendable type 'OTPConsumerStatus' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1773 |
1774 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ComponentStatus.swift:143:15: note: consider making struct 'OTPConsumerStatus' conform to the 'Sendable' protocol
141 | */
142 |
143 | public struct OTPConsumerStatus: OTPComponentStatus {
    |               `- note: consider making struct 'OTPConsumerStatus' conform to the 'Sendable' protocol
144 |
145 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1779:43: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1777 |
1778 |                     // there was an error in the otp layer
1779 |                     delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                           `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1780 |
1781 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1786:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1784 |
1785 |                 // there was an error in the advertisement layer
1786 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1787 |
1788 |             } catch let error as ModuleAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1791:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1789 |
1790 |                 // there was an error in the module advertisement layer
1791 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1792 |
1793 |             } catch let error as SystemAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1796:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1794 |
1795 |                 // there was an error in the system advertisement layer
1796 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1797 |
1798 |             } catch let error as NameAdvertisementLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1801:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1799 |
1800 |                 // there was an error in the name advertisement layer
1801 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1802 |
1803 |             } catch let error as TransformLayerValidationError {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1806:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1804 |
1805 |                 // there was an error in the transform layer
1806 |                 delegateQueue.async { self.protocolErrorDelegate?.layerError(error.logDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1807 |
1808 |             } catch let error {
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1811:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1809 |
1810 |                 // there was an unknown error
1811 |                 delegateQueue.async { self.protocolErrorDelegate?.unknownError(error.localizedDescription) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1812 |
1813 |             }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:40: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                        `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:109: warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                             `- warning: capture of 'consumer' with non-sendable type 'ProducerConsumer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/ProducerConsumer.swift:36:8: note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 34 | */
 35 |
 36 | struct ProducerConsumer: Equatable {
    |        `- note: consider making struct 'ProducerConsumer' conform to the 'Sendable' protocol
 37 |
 38 |     /// A globally unique identifier (UUID) representing the consumer, compliant with RFC 4122.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1842:151: warning: capture of 'newIpMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1840 |
1841 |             // notify the delegate of the consumer status
1842 |             self.delegateQueue.async { self.producerDelegate?.consumerStatusChanged(OTPConsumerStatus(name: consumer.name, cid: consumer.cid, ipMode: newIpMode, ipAddresses: newIpAddresses, sequenceErrors: consumer.sequenceErrors, state: consumer.notifiedState, moduleIdentifiers: consumer.moduleIdentifiers)) }
     |                                                                                                                                                       `- warning: capture of 'newIpMode' with non-sendable type 'OTPIPMode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1843 |
1844 |             self.consumers[index].ipAddresses = newIpAddresses
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Network/NetworkDefinitions.swift:60:13: note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 58 |
 59 | */
 60 | public enum OTPIPMode: String, CaseIterable {
    |             `- note: consider making enum 'OTPIPMode' conform to the 'Sendable' protocol
 61 |
 62 |     /// The `Component` should only use IPv4.
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1889:39: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1887 |             if self._isConnected != false {
1888 |                 self._isConnected = false
1889 |                 delegateQueue.async { self.producerDelegate?.disconnected(self, with: error) }
     |                                       `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1890 |             }
1891 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OTPKit/Components/Producer.swift:1902:31: warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  83 | */
  84 |
  85 | final public class OTPProducer: Component {
     |                    `- note: class 'OTPProducer' does not conform to the 'Sendable' protocol
  86 |
  87 |     /// The interval between checking for data loss.
     :
1900 |     */
1901 |     func debugSocketLog(_ logMessage: String) {
1902 |         delegateQueue.async { self.debugDelegate?.debugSocketLog(logMessage) }
     |                               `- warning: capture of 'self' with non-sendable type 'OTPProducer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1903 |     }
1904 |
Build complete! (20.22s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "cocoaasyncsocket",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "7.6.5",
            "upper_bound" : "8.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/robbiehanson/CocoaAsyncSocket"
    }
  ],
  "manifest_display_name" : "OTPKit",
  "name" : "OTPKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "macos",
      "version" : "10.14"
    }
  ],
  "products" : [
    {
      "name" : "OTPKit",
      "targets" : [
        "OTPKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "OTPKitTests",
      "module_type" : "SwiftTarget",
      "name" : "OTPKitTests",
      "path" : "Tests/OTPKitTests",
      "sources" : [
        "AddressPointDescriptionTests.swift",
        "AddressTests.swift",
        "AdvertisementLayerTests.swift",
        "ConsumerTests.swift",
        "Data+ExtensionTests.swift",
        "ModuleAdvertisementLayerTests.swift",
        "ModuleIdentifierTests.swift",
        "ModuleLayerTests.swift",
        "ModuleTests.swift",
        "NameAdvertisementLayerTests.swift",
        "OTPLayerTests.swift",
        "PointLayerTests.swift",
        "PointTests.swift",
        "ProducerTests.swift",
        "SystemAdvertisementLayerTests.swift",
        "TransformLayerTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "OTPKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OTPKit",
      "module_type" : "SwiftTarget",
      "name" : "OTPKit",
      "path" : "Sources/OTPKit",
      "product_dependencies" : [
        "CocoaAsyncSocket"
      ],
      "product_memberships" : [
        "OTPKit"
      ],
      "sources" : [
        "Components/Component.swift",
        "Components/ComponentSocket.swift",
        "Components/ComponentStatus.swift",
        "Components/Consumer.swift",
        "Components/ConsumerProducer.swift",
        "Components/Producer.swift",
        "Components/ProducerConsumer.swift",
        "Layers/AdvertismentLayer.swift",
        "Layers/ModuleAdvertisementLayer.swift",
        "Layers/ModuleLayer.swift",
        "Layers/NameAdvertisementLayer.swift",
        "Layers/OTPLayer.swift",
        "Layers/PointLayer.swift",
        "Layers/SystemAdvertismentLayer.swift",
        "Layers/TransformLayer.swift",
        "Network/NetworkDefinitions.swift",
        "Types/Address.swift",
        "Types/AddressPointDescription.swift",
        "Types/Data+Extension.swift",
        "Types/Date+Extension.swift",
        "Types/Folio.swift",
        "Types/GeneralDefinitions.swift",
        "Types/Math.swift",
        "Types/Module.swift",
        "Types/ModuleIdentifier.swift",
        "Types/Modules/ModulePosition.swift",
        "Types/Modules/ModulePositionVelAccel.swift",
        "Types/Modules/ModuleReferenceFrame.swift",
        "Types/Modules/ModuleRotation.swift",
        "Types/Modules/ModuleRotationVelAccel.swift",
        "Types/Modules/ModuleScale.swift",
        "Types/Point.swift",
        "Vendor/CwlDispatch.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.