Build Information
Successful build of CocoaMQTT, reference 2.4.1 (4c5a9a), with Swift 6.1 for macOS (SPM) on 9 Sep 2026 00:39:22 UTC.
Swift 6 data race errors: 3
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.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 InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 5.0.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/emqx/CocoaMQTT.git
Reference: 2.4.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/emqx/CocoaMQTT
* tag 2.4.1 -> FETCH_HEAD
HEAD is now at 4c5a9a6 Merge pull request #741 from hjianbo/release/2.4.1
Cloned https://github.com/emqx/CocoaMQTT.git
Revision (git rev-parse @):
4c5a9a68eac0a4eab74ba504981e5a839d7e7593
SUCCESS checkout https://github.com/emqx/CocoaMQTT.git at 2.4.1
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/emqx/CocoaMQTT.git
https://github.com/emqx/CocoaMQTT.git
{
"dependencies" : [
{
"identity" : "starscream",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.8",
"upper_bound" : "6.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/daltoniam/Starscream.git"
},
{
"identity" : "mqttcocoaasyncsocket",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.8",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/leeway1208/MqttCocoaAsyncSocket"
}
],
"manifest_display_name" : "CocoaMQTT",
"name" : "CocoaMQTT",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "CocoaMQTT",
"targets" : [
"CocoaMQTT"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CocoaMQTTWebSocket",
"targets" : [
"CocoaMQTTWebSocket"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CocoaMQTTWebSocket",
"module_type" : "SwiftTarget",
"name" : "CocoaMQTTWebSocket",
"path" : "Source/WebSocket",
"product_dependencies" : [
"Starscream"
],
"product_memberships" : [
"CocoaMQTTWebSocket"
],
"sources" : [
"CocoaMQTTWebSocket.swift"
],
"target_dependencies" : [
"CocoaMQTT"
],
"type" : "library"
},
{
"c99name" : "CocoaMQTTTests",
"module_type" : "SwiftTarget",
"name" : "CocoaMQTTTests",
"path" : "CocoaMQTTTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/CocoaMQTTTests/client-keycert.p12",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"AutoReconnectStateTests.swift",
"ClientEventLoopTests.swift",
"ClientIdentityTests.swift",
"CocoaMQTT5DisconnectReasonStateTests.swift",
"CocoaMQTT5PublishValidationTests.swift",
"CocoaMQTT5ReasonCodeFallbackTests.swift",
"CocoaMQTT5ReceiveMessageContentTypeTests.swift",
"CocoaMQTTDeliverTests.swift",
"CocoaMQTTReaderProtocolErrorTests.swift",
"CocoaMQTTStorageTests.swift",
"CocoaMQTTTests.swift",
"CocoaMQTTWebSocketAuthenticationTests.swift",
"ConcurrentAtomicTests.swift",
"FrameTests.swift",
"GracefulDisconnectTests.swift",
"KeepAliveTests.swift",
"MQTTAutoReconnectControllerTests.swift",
"PrivacyManifestTests.swift",
"PublicLoggerAPITests.swift",
"SendingMessageLifecycleTests.swift",
"TLSChallengeResolutionTests.swift",
"TLSLoopbackIntegrationTests.swift",
"TLSLoopbackTestSupport.swift",
"ThreadSafetyRegressionTests.swift",
"WebSocketMTLSIntegrationTests.swift"
],
"target_dependencies" : [
"CocoaMQTT",
"CocoaMQTTWebSocket"
],
"type" : "test"
},
{
"c99name" : "CocoaMQTT",
"module_type" : "SwiftTarget",
"name" : "CocoaMQTT",
"path" : "Source",
"product_dependencies" : [
"MqttCocoaAsyncSocket"
],
"product_memberships" : [
"CocoaMQTT",
"CocoaMQTTWebSocket"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Source/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"CocoaMQTT.swift",
"CocoaMQTT5.swift",
"CocoaMQTT5Message.swift",
"CocoaMQTTClientIdentity.swift",
"CocoaMQTTDeliver.swift",
"CocoaMQTTLogger.swift",
"CocoaMQTTMessage.swift",
"CocoaMQTTProperty.swift",
"CocoaMQTTReader.swift",
"CocoaMQTTReasonCode.swift",
"CocoaMQTTSocket.swift",
"CocoaMQTTStorage.swift",
"CocoaMQTTTimer.swift",
"CocoaMQTTTypes.swift",
"Frame.swift",
"FrameAuth.swift",
"FrameConnAck.swift",
"FrameConnect.swift",
"FrameDisconnect.swift",
"FramePingReq.swift",
"FramePingResp.swift",
"FramePubAck.swift",
"FramePubComp.swift",
"FramePubRec.swift",
"FramePubRel.swift",
"FramePublish.swift",
"FrameSubAck.swift",
"FrameSubscribe.swift",
"FrameUnsubAck.swift",
"FrameUnsubscribe.swift",
"MQTT5SessionState.swift",
"MQTTAutoReconnectController.swift",
"MQTTKeepAliveController.swift",
"MQTTPacketIdentifierAllocator.swift",
"MqttAuthProperties.swift",
"MqttConnectProperties.swift",
"MqttDecodeConnAck.swift",
"MqttDecodePubAck.swift",
"MqttDecodePubComp.swift",
"MqttDecodePubRec.swift",
"MqttDecodePubRel.swift",
"MqttDecodePublish.swift",
"MqttDecodeSubAck.swift",
"MqttDecodeUnsubAck.swift",
"MqttPublishProperties.swift",
"MqttSubscription.swift",
"ThreadSafeDictionary.swift",
"utilities/ConcurrentAtomic.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.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
Building for debugging...
[0/8] Write sources
[2/8] Copying PrivacyInfo.xcprivacy
[4/8] Write sources
[5/8] Write swift-version-2F0A5646E1D333AE.txt
[6/28] Compiling MqttCocoaAsyncSocket MGCDAsyncSocket.m
[7/28] Compiling MqttCocoaAsyncSocket MGCDAsyncUdpSocket.m
[9/74] Compiling CocoaMQTT CocoaMQTTLogger.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:41:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public nonisolated(unsafe) static var logger = CocoaMQTTLogger()
40 | #else
41 | public static var logger = CocoaMQTTLogger()
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | #endif
43 | public override init() { super.init() }
[10/74] Compiling CocoaMQTT CocoaMQTTMessage.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:41:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public nonisolated(unsafe) static var logger = CocoaMQTTLogger()
40 | #else
41 | public static var logger = CocoaMQTTLogger()
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | #endif
43 | public override init() { super.init() }
[11/74] Compiling CocoaMQTT CocoaMQTTProperty.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:41:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public nonisolated(unsafe) static var logger = CocoaMQTTLogger()
40 | #else
41 | public static var logger = CocoaMQTTLogger()
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | #endif
43 | public override init() { super.init() }
[12/74] Compiling CocoaMQTT CocoaMQTTReader.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:41:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public nonisolated(unsafe) static var logger = CocoaMQTTLogger()
40 | #else
41 | public static var logger = CocoaMQTTLogger()
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | #endif
43 | public override init() { super.init() }
[13/74] Compiling CocoaMQTT CocoaMQTTReasonCode.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:41:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public nonisolated(unsafe) static var logger = CocoaMQTTLogger()
40 | #else
41 | public static var logger = CocoaMQTTLogger()
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | #endif
43 | public override init() { super.init() }
[14/78] Compiling CocoaMQTT FramePublish.swift
[15/78] Compiling CocoaMQTT FrameSubAck.swift
[16/78] Compiling CocoaMQTT FrameSubscribe.swift
[17/78] Compiling CocoaMQTT FrameUnsubAck.swift
[18/78] Compiling CocoaMQTT FrameUnsubscribe.swift
[19/78] Compiling CocoaMQTT FramePingResp.swift
[20/78] Compiling CocoaMQTT FramePubAck.swift
[21/78] Emitting module Starscream
[24/80] Compiling CocoaMQTT FramePubComp.swift
[25/80] Compiling CocoaMQTT FramePubRec.swift
[26/80] Compiling CocoaMQTT FramePubRel.swift
[27/80] Compiling CocoaMQTT FrameAuth.swift
[28/80] Compiling CocoaMQTT FrameConnAck.swift
[29/80] Compiling CocoaMQTT FrameConnect.swift
[30/80] Compiling CocoaMQTT FrameDisconnect.swift
[31/80] Compiling CocoaMQTT FramePingReq.swift
[32/80] Emitting module CocoaMQTT
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:41:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public nonisolated(unsafe) static var logger = CocoaMQTTLogger()
40 | #else
41 | public static var logger = CocoaMQTTLogger()
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 | #endif
43 | public override init() { super.init() }
[33/80] Compiling CocoaMQTT MQTT5SessionState.swift
/Users/admin/builder/spi-builder-workspace/Source/MQTTAutoReconnectController.swift:398:34: warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
32 |
33 | /// Owns protocol-neutral reconnect state for both MQTT 3.1.1 and MQTT 5 clients.
34 | final class MQTTAutoReconnectController {
| `- note: class 'MQTTAutoReconnectController' does not conform to the 'Sendable' protocol
35 | private static let minimumFailedStartRetryInterval: UInt16 = 1
36 |
:
396 | guard let self = self else { return }
397 | self.eventLoopQueue.async { [weak self] in
398 | guard let self = self,
| `- warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
399 | self.prepareScheduledAttempt(generation: scheduledGeneration) else { return }
400 | self.delegate?.autoReconnectControllerRequestsReconnect(self)
[34/80] Compiling CocoaMQTT MQTTAutoReconnectController.swift
/Users/admin/builder/spi-builder-workspace/Source/MQTTAutoReconnectController.swift:398:34: warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
32 |
33 | /// Owns protocol-neutral reconnect state for both MQTT 3.1.1 and MQTT 5 clients.
34 | final class MQTTAutoReconnectController {
| `- note: class 'MQTTAutoReconnectController' does not conform to the 'Sendable' protocol
35 | private static let minimumFailedStartRetryInterval: UInt16 = 1
36 |
:
396 | guard let self = self else { return }
397 | self.eventLoopQueue.async { [weak self] in
398 | guard let self = self,
| `- warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
399 | self.prepareScheduledAttempt(generation: scheduledGeneration) else { return }
400 | self.delegate?.autoReconnectControllerRequestsReconnect(self)
[35/80] Compiling CocoaMQTT MQTTKeepAliveController.swift
/Users/admin/builder/spi-builder-workspace/Source/MQTTAutoReconnectController.swift:398:34: warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
32 |
33 | /// Owns protocol-neutral reconnect state for both MQTT 3.1.1 and MQTT 5 clients.
34 | final class MQTTAutoReconnectController {
| `- note: class 'MQTTAutoReconnectController' does not conform to the 'Sendable' protocol
35 | private static let minimumFailedStartRetryInterval: UInt16 = 1
36 |
:
396 | guard let self = self else { return }
397 | self.eventLoopQueue.async { [weak self] in
398 | guard let self = self,
| `- warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
399 | self.prepareScheduledAttempt(generation: scheduledGeneration) else { return }
400 | self.delegate?.autoReconnectControllerRequestsReconnect(self)
[36/80] Compiling CocoaMQTT MQTTPacketIdentifierAllocator.swift
/Users/admin/builder/spi-builder-workspace/Source/MQTTAutoReconnectController.swift:398:34: warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
32 |
33 | /// Owns protocol-neutral reconnect state for both MQTT 3.1.1 and MQTT 5 clients.
34 | final class MQTTAutoReconnectController {
| `- note: class 'MQTTAutoReconnectController' does not conform to the 'Sendable' protocol
35 | private static let minimumFailedStartRetryInterval: UInt16 = 1
36 |
:
396 | guard let self = self else { return }
397 | self.eventLoopQueue.async { [weak self] in
398 | guard let self = self,
| `- warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
399 | self.prepareScheduledAttempt(generation: scheduledGeneration) else { return }
400 | self.delegate?.autoReconnectControllerRequestsReconnect(self)
[37/80] Compiling Starscream Transport.swift
/Users/admin/builder/spi-builder-workspace/Source/MQTTAutoReconnectController.swift:398:34: warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
32 |
33 | /// Owns protocol-neutral reconnect state for both MQTT 3.1.1 and MQTT 5 clients.
34 | final class MQTTAutoReconnectController {
| `- note: class 'MQTTAutoReconnectController' does not conform to the 'Sendable' protocol
35 | private static let minimumFailedStartRetryInterval: UInt16 = 1
36 |
:
396 | guard let self = self else { return }
397 | self.eventLoopQueue.async { [weak self] in
398 | guard let self = self,
| `- warning: capture of 'self' with non-sendable type 'MQTTAutoReconnectController?' in a '@Sendable' closure
399 | self.prepareScheduledAttempt(generation: scheduledGeneration) else { return }
400 | self.delegate?.autoReconnectControllerRequestsReconnect(self)
[38/80] Compiling CocoaMQTT MqttDecodePubRel.swift
[39/80] Compiling CocoaMQTT MqttDecodePublish.swift
[40/80] Compiling CocoaMQTT MqttDecodeSubAck.swift
[41/80] Compiling CocoaMQTT MqttDecodeUnsubAck.swift
[42/80] Compiling CocoaMQTT MqttPublishProperties.swift
[43/80] Compiling CocoaMQTT MqttConnectProperties.swift
[44/80] Compiling CocoaMQTT MqttDecodeConnAck.swift
[45/80] Compiling CocoaMQTT MqttDecodePubAck.swift
[46/80] Compiling CocoaMQTT MqttDecodePubComp.swift
[47/80] Compiling CocoaMQTT MqttDecodePubRec.swift
[48/80] Compiling CocoaMQTT CocoaMQTTSocket.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:74:48: warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
72 | queue.async {
73 | if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) {
74 | SecTrustEvaluateAsyncWithError(trust, queue) { _, trusted, error in
| `- warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
75 | if let error {
76 | printError("TLS server trust evaluation failed: \(error)")
Security.SecTrust:1:14: note: class 'SecTrust' does not conform to the 'Sendable' protocol
1 | public class SecTrust : _CFObject {
| `- note: class 'SecTrust' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
7 |
8 | import Foundation
9 | import Security
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
10 | import MqttCocoaAsyncSocket
11 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:82:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
80 | } else {
81 | SecTrustEvaluateAsync(trust, queue) { _, result in
82 | completionHandler(result == .proceed || result == .unspecified)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
83 | }
84 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:46: warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| |- warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
288 | }
289 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:55: warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
270 | /// private event loop. Custom transports are not required to honor the queue
271 | /// passed to `setDelegate`; correctness is enforced at this boundary instead.
272 | final class CocoaMQTTSocketDelegateProxy: CocoaMQTTSocketDelegate {
| `- note: class 'CocoaMQTTSocketDelegateProxy' does not conform to the 'Sendable' protocol
273 | weak var delegate: CocoaMQTTSocketDelegate?
274 |
:
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
288 | }
289 | }
[49/80] Compiling CocoaMQTT CocoaMQTTStorage.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:74:48: warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
72 | queue.async {
73 | if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) {
74 | SecTrustEvaluateAsyncWithError(trust, queue) { _, trusted, error in
| `- warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
75 | if let error {
76 | printError("TLS server trust evaluation failed: \(error)")
Security.SecTrust:1:14: note: class 'SecTrust' does not conform to the 'Sendable' protocol
1 | public class SecTrust : _CFObject {
| `- note: class 'SecTrust' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
7 |
8 | import Foundation
9 | import Security
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
10 | import MqttCocoaAsyncSocket
11 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:82:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
80 | } else {
81 | SecTrustEvaluateAsync(trust, queue) { _, result in
82 | completionHandler(result == .proceed || result == .unspecified)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
83 | }
84 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:46: warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| |- warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
288 | }
289 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:55: warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
270 | /// private event loop. Custom transports are not required to honor the queue
271 | /// passed to `setDelegate`; correctness is enforced at this boundary instead.
272 | final class CocoaMQTTSocketDelegateProxy: CocoaMQTTSocketDelegate {
| `- note: class 'CocoaMQTTSocketDelegateProxy' does not conform to the 'Sendable' protocol
273 | weak var delegate: CocoaMQTTSocketDelegate?
274 |
:
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
288 | }
289 | }
[50/80] Compiling CocoaMQTT CocoaMQTTTimer.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:74:48: warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
72 | queue.async {
73 | if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) {
74 | SecTrustEvaluateAsyncWithError(trust, queue) { _, trusted, error in
| `- warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
75 | if let error {
76 | printError("TLS server trust evaluation failed: \(error)")
Security.SecTrust:1:14: note: class 'SecTrust' does not conform to the 'Sendable' protocol
1 | public class SecTrust : _CFObject {
| `- note: class 'SecTrust' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
7 |
8 | import Foundation
9 | import Security
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
10 | import MqttCocoaAsyncSocket
11 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:82:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
80 | } else {
81 | SecTrustEvaluateAsync(trust, queue) { _, result in
82 | completionHandler(result == .proceed || result == .unspecified)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
83 | }
84 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:46: warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| |- warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
288 | }
289 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:55: warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
270 | /// private event loop. Custom transports are not required to honor the queue
271 | /// passed to `setDelegate`; correctness is enforced at this boundary instead.
272 | final class CocoaMQTTSocketDelegateProxy: CocoaMQTTSocketDelegate {
| `- note: class 'CocoaMQTTSocketDelegateProxy' does not conform to the 'Sendable' protocol
273 | weak var delegate: CocoaMQTTSocketDelegate?
274 |
:
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
288 | }
289 | }
[51/80] Compiling CocoaMQTT CocoaMQTTTypes.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:74:48: warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
72 | queue.async {
73 | if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) {
74 | SecTrustEvaluateAsyncWithError(trust, queue) { _, trusted, error in
| `- warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
75 | if let error {
76 | printError("TLS server trust evaluation failed: \(error)")
Security.SecTrust:1:14: note: class 'SecTrust' does not conform to the 'Sendable' protocol
1 | public class SecTrust : _CFObject {
| `- note: class 'SecTrust' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
7 |
8 | import Foundation
9 | import Security
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
10 | import MqttCocoaAsyncSocket
11 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:82:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
80 | } else {
81 | SecTrustEvaluateAsync(trust, queue) { _, result in
82 | completionHandler(result == .proceed || result == .unspecified)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
83 | }
84 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:46: warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| |- warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
288 | }
289 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:55: warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
270 | /// private event loop. Custom transports are not required to honor the queue
271 | /// passed to `setDelegate`; correctness is enforced at this boundary instead.
272 | final class CocoaMQTTSocketDelegateProxy: CocoaMQTTSocketDelegate {
| `- note: class 'CocoaMQTTSocketDelegateProxy' does not conform to the 'Sendable' protocol
273 | weak var delegate: CocoaMQTTSocketDelegate?
274 |
:
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
288 | }
289 | }
[52/80] Compiling CocoaMQTT Frame.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:74:48: warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
72 | queue.async {
73 | if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) {
74 | SecTrustEvaluateAsyncWithError(trust, queue) { _, trusted, error in
| `- warning: capture of 'trust' with non-sendable type 'SecTrust' in a '@Sendable' closure
75 | if let error {
76 | printError("TLS server trust evaluation failed: \(error)")
Security.SecTrust:1:14: note: class 'SecTrust' does not conform to the 'Sendable' protocol
1 | public class SecTrust : _CFObject {
| `- note: class 'SecTrust' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
7 |
8 | import Foundation
9 | import Security
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Security'
10 | import MqttCocoaAsyncSocket
11 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:78:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
76 | printError("TLS server trust evaluation failed: \(error)")
77 | }
78 | completionHandler(trusted)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
79 | }
80 | } else {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:82:21: warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
80 | } else {
81 | SecTrustEvaluateAsync(trust, queue) { _, result in
82 | completionHandler(result == .proceed || result == .unspecified)
| |- warning: capture of 'completionHandler' with non-sendable type '(Bool) -> Void' in an isolated closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
83 | }
84 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:46: warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| |- warning: capture of 'callback' with non-sendable type '((any CocoaMQTTSocketDelegate)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
288 | }
289 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:287:55: warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
270 | /// private event loop. Custom transports are not required to honor the queue
271 | /// passed to `setDelegate`; correctness is enforced at this boundary instead.
272 | final class CocoaMQTTSocketDelegateProxy: CocoaMQTTSocketDelegate {
| `- note: class 'CocoaMQTTSocketDelegateProxy' does not conform to the 'Sendable' protocol
273 | weak var delegate: CocoaMQTTSocketDelegate?
274 |
:
285 | callback(delegate)
286 | } else {
287 | eventLoopQueue.async { [self] in callback(delegate) }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTSocketDelegateProxy' in a '@Sendable' closure
288 | }
289 | }
[71/80] Compiling Starscream resource_bundle_accessor.swift
[72/80] Compiling CocoaMQTT MqttSubscription.swift
[73/80] Compiling CocoaMQTT ThreadSafeDictionary.swift
[74/80] Compiling CocoaMQTT ConcurrentAtomic.swift
[75/80] Compiling CocoaMQTT resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:617:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
615 |
616 | eventLoopQueue.async { [weak self] in
617 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
618 | self.connState = .connecting
619 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:869:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
867 | let callbackQueue = delegateQueue
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
870 | onDeallocated?()
871 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:870:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
870 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
871 | return
872 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:873:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
871 | return
872 | }
873 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:874:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
872 | }
873 | fun(self)
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:876:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
877 | completionOnEventLoop(self)
878 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:877:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
877 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
878 | }
879 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:732:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
730 |
731 | eventLoopQueue.async { [weak self] in
732 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
733 | self.connState = .connecting
734 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1134 | let callbackQueue = delegateQueue
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1137 | onDeallocated?()
1138 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1137:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
1137 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1138 | return
1139 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1140:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1138 | return
1139 | }
1140 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1141:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
1139 | }
1140 | fun(self)
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1143:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1144 | completionOnEventLoop(self)
1145 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1144:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
1144 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1145 | }
1146 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:195:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
193 |
194 | deliverQueue.async { [weak self] in
195 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
196 | self.tryTransport()
197 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:223:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
221 |
222 | deliverQueue.async { [weak self] in
223 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
224 | self.tryTransport()
225 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:17: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:51: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:364:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
362 | guard let self = self else { return }
363 | self.deliverQueue.async {
364 | self.redeliver()
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
[77/80] Compiling CocoaMQTT CocoaMQTT5.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:617:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
615 |
616 | eventLoopQueue.async { [weak self] in
617 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
618 | self.connState = .connecting
619 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:869:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
867 | let callbackQueue = delegateQueue
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
870 | onDeallocated?()
871 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:870:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
870 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
871 | return
872 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:873:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
871 | return
872 | }
873 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:874:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
872 | }
873 | fun(self)
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:876:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
877 | completionOnEventLoop(self)
878 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:877:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
877 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
878 | }
879 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:732:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
730 |
731 | eventLoopQueue.async { [weak self] in
732 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
733 | self.connState = .connecting
734 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1134 | let callbackQueue = delegateQueue
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1137 | onDeallocated?()
1138 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1137:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
1137 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1138 | return
1139 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1140:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1138 | return
1139 | }
1140 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1141:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
1139 | }
1140 | fun(self)
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1143:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1144 | completionOnEventLoop(self)
1145 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1144:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
1144 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1145 | }
1146 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:195:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
193 |
194 | deliverQueue.async { [weak self] in
195 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
196 | self.tryTransport()
197 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:223:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
221 |
222 | deliverQueue.async { [weak self] in
223 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
224 | self.tryTransport()
225 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:17: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:51: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:364:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
362 | guard let self = self else { return }
363 | self.deliverQueue.async {
364 | self.redeliver()
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
[78/80] Compiling CocoaMQTT CocoaMQTT5Message.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:617:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
615 |
616 | eventLoopQueue.async { [weak self] in
617 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
618 | self.connState = .connecting
619 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:869:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
867 | let callbackQueue = delegateQueue
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
870 | onDeallocated?()
871 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:870:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
870 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
871 | return
872 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:873:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
871 | return
872 | }
873 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:874:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
872 | }
873 | fun(self)
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:876:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
877 | completionOnEventLoop(self)
878 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:877:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
877 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
878 | }
879 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:732:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
730 |
731 | eventLoopQueue.async { [weak self] in
732 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
733 | self.connState = .connecting
734 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1134 | let callbackQueue = delegateQueue
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1137 | onDeallocated?()
1138 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1137:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
1137 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1138 | return
1139 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1140:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1138 | return
1139 | }
1140 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1141:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
1139 | }
1140 | fun(self)
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1143:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1144 | completionOnEventLoop(self)
1145 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1144:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
1144 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1145 | }
1146 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:195:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
193 |
194 | deliverQueue.async { [weak self] in
195 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
196 | self.tryTransport()
197 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:223:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
221 |
222 | deliverQueue.async { [weak self] in
223 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
224 | self.tryTransport()
225 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:17: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:51: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:364:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
362 | guard let self = self else { return }
363 | self.deliverQueue.async {
364 | self.redeliver()
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
[79/80] Compiling CocoaMQTT CocoaMQTTClientIdentity.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:617:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
615 |
616 | eventLoopQueue.async { [weak self] in
617 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
618 | self.connState = .connecting
619 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:869:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
867 | let callbackQueue = delegateQueue
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
870 | onDeallocated?()
871 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:870:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
870 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
871 | return
872 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:873:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
871 | return
872 | }
873 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:874:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
872 | }
873 | fun(self)
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:876:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
877 | completionOnEventLoop(self)
878 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:877:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
877 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
878 | }
879 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:732:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
730 |
731 | eventLoopQueue.async { [weak self] in
732 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
733 | self.connState = .connecting
734 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1134 | let callbackQueue = delegateQueue
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1137 | onDeallocated?()
1138 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1137:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
1137 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1138 | return
1139 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1140:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1138 | return
1139 | }
1140 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1141:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
1139 | }
1140 | fun(self)
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1143:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1144 | completionOnEventLoop(self)
1145 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1144:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
1144 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1145 | }
1146 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:195:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
193 |
194 | deliverQueue.async { [weak self] in
195 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
196 | self.tryTransport()
197 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:223:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
221 |
222 | deliverQueue.async { [weak self] in
223 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
224 | self.tryTransport()
225 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:17: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:51: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:364:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
362 | guard let self = self else { return }
363 | self.deliverQueue.async {
364 | self.redeliver()
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
[80/80] Compiling CocoaMQTT CocoaMQTTDeliver.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:617:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
615 |
616 | eventLoopQueue.async { [weak self] in
617 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
618 | self.connState = .connecting
619 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:869:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
867 | let callbackQueue = delegateQueue
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
870 | onDeallocated?()
871 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:870:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
868 | callbackQueue.async { [weak self] in
869 | guard let self = self else {
870 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
871 | return
872 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:873:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
871 | return
872 | }
873 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:874:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
872 | }
873 | fun(self)
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:876:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
147 | ///
148 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
149 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
| `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
150 |
151 | public weak var delegate: CocoaMQTTDelegate?
:
874 | guard let completionOnEventLoop = completionOnEventLoop else { return }
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
877 | completionOnEventLoop(self)
878 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:877:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
875 | self.eventLoopQueue.async { [weak self] in
876 | guard let self = self else { return }
877 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
878 | }
879 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:732:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
730 |
731 | eventLoopQueue.async { [weak self] in
732 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
733 | self.connState = .connecting
734 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1134 | let callbackQueue = delegateQueue
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1137 | onDeallocated?()
1138 | return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1137:17: warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
1135 | callbackQueue.async { [weak self] in
1136 | guard let self = self else {
1137 | onDeallocated?()
| |- warning: capture of 'onDeallocated' with non-sendable type '(() -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1138 | return
1139 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1140:13: warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1138 | return
1139 | }
1140 | fun(self)
| |- warning: capture of 'fun' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1141:47: warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
1139 | }
1140 | fun(self)
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '((CocoaMQTT5) -> Void)?' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1143:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
156 | ///
157 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
158 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
| `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
159 |
160 | public weak var delegate: CocoaMQTT5Delegate?
:
1141 | guard let completionOnEventLoop = completionOnEventLoop else { return }
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
1144 | completionOnEventLoop(self)
1145 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:1144:17: warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
1142 | self.eventLoopQueue.async { [weak self] in
1143 | guard let self = self else { return }
1144 | completionOnEventLoop(self)
| |- warning: capture of 'completionOnEventLoop' with non-sendable type '(CocoaMQTT5) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
1145 | }
1146 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:195:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
193 |
194 | deliverQueue.async { [weak self] in
195 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
196 | self.tryTransport()
197 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:223:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
221 |
222 | deliverQueue.async { [weak self] in
223 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
224 | self.tryTransport()
225 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:17: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:333:51: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
331 | if let delegate = delegate {
332 | delegate.eventLoopQueue.async {
333 | delegate.deliver(self, didReject: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
334 | }
335 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:364:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
362 | guard let self = self else { return }
363 | self.deliverQueue.async {
364 | self.redeliver()
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
10 | import Dispatch
11 |
12 | protocol CocoaMQTTDeliverProtocol: AnyObject {
| `- note: protocol 'CocoaMQTTDeliverProtocol' does not conform to the 'Sendable' protocol
13 |
14 | var delegateQueue: DispatchQueue { get set }
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
58 |
59 | // CocoaMQTTDeliver
60 | class CocoaMQTTDeliver: NSObject {
| `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
61 |
62 | /// The dispatch queue is used by delivering frames in serially
:
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:487:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
485 |
486 | delegate.eventLoopQueue.async {
487 | delegate.deliver(self, wantToSend: frame)
| `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
488 | }
489 | }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:86:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
84 |
85 | /// MQTT Frame protocol
86 | protocol Frame {
| `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
87 |
88 | /// Each MQTT Control Packet contains a fixed header
[81/82] Emitting module CocoaMQTTWebSocket
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:418:11: warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
416 | @available(OSX 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *)
417 | public extension CocoaMQTTWebSocket {
418 | class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection, CocoaMQTTClientIdentityConfiguring {
| `- warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
419 |
420 | public weak var delegate: CocoaMQTTWebSocketConnectionDelegate?
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:420:25: warning: stored property 'delegate' of 'Sendable'-conforming class 'FoundationConnection' is mutable; this is an error in the Swift 6 language mode
418 | class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection, CocoaMQTTClientIdentityConfiguring {
419 |
420 | public weak var delegate: CocoaMQTTWebSocketConnectionDelegate?
| `- warning: stored property 'delegate' of 'Sendable'-conforming class 'FoundationConnection' is mutable; this is an error in the Swift 6 language mode
421 | public lazy var queue = DispatchQueue(label: "CocoaMQTTFoundationWebSocketConnection-\(self.hashValue)")
422 | public var clientIdentity: CocoaMQTTClientIdentity?
[82/82] Compiling CocoaMQTTWebSocket CocoaMQTTWebSocket.swift
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:418:11: warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
416 | @available(OSX 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *)
417 | public extension CocoaMQTTWebSocket {
418 | class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection, CocoaMQTTClientIdentityConfiguring {
| `- warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
419 |
420 | public weak var delegate: CocoaMQTTWebSocketConnectionDelegate?
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:420:25: warning: stored property 'delegate' of 'Sendable'-conforming class 'FoundationConnection' is mutable; this is an error in the Swift 6 language mode
418 | class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection, CocoaMQTTClientIdentityConfiguring {
419 |
420 | public weak var delegate: CocoaMQTTWebSocketConnectionDelegate?
| `- warning: stored property 'delegate' of 'Sendable'-conforming class 'FoundationConnection' is mutable; this is an error in the Swift 6 language mode
421 | public lazy var queue = DispatchQueue(label: "CocoaMQTTFoundationWebSocketConnection-\(self.hashValue)")
422 | public var clientIdentity: CocoaMQTTClientIdentity?
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:130:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
128 | public func setDelegate(_ theDelegate: CocoaMQTTSocketDelegate?, delegateQueue: DispatchQueue?) {
129 | internalQueue.async {
130 | self.delegate = theDelegate
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
131 | self.delegateQueue = delegateQueue
132 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:130:29: warning: capture of 'theDelegate' with non-sendable type '(any CocoaMQTTSocketDelegate)?' in a '@Sendable' closure
128 | public func setDelegate(_ theDelegate: CocoaMQTTSocketDelegate?, delegateQueue: DispatchQueue?) {
129 | internalQueue.async {
130 | self.delegate = theDelegate
| `- warning: capture of 'theDelegate' with non-sendable type '(any CocoaMQTTSocketDelegate)?' in a '@Sendable' closure
131 | self.delegateQueue = delegateQueue
132 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:192:17: note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
190 | // MARK: - Interfaces
191 |
192 | public protocol CocoaMQTTSocketDelegate: AnyObject {
| `- note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
193 | func socketConnected(_ socket: CocoaMQTTSocketProtocol)
194 | func socket(_ socket: CocoaMQTTSocketProtocol, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Swift.Void)
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:11:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CocoaMQTT'
9 | import Starscream
10 | #if IS_SWIFT_PACKAGE
11 | import CocoaMQTT
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CocoaMQTT'
12 | #endif
13 |
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:186:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
184 | internalQueue.async {
185 | // self.reset()
186 | self.disconnectAfterWrites = true
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
187 | self.closeConnection(withError: nil)
188 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:194:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
192 | internalQueue.async {
193 | let newRead = ReadItem(tag: tag, length: length, timeout: (timeout > 0.0) ? .now() + timeout : .distantFuture)
194 | self.scheduledReads.append(newRead)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
195 | self.checkScheduledReads()
196 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:201:20: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
199 | public func write(_ data: Data, withTimeout timeout: TimeInterval, tag: Int) {
200 | internalQueue.async {
201 | guard !self.disconnectAfterWrites else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
202 | self.enqueueWrite(data, withTimeout: timeout, tag: tag)
203 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:208:20: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
206 | public func writeAndDisconnect(_ data: Data, withTimeout timeout: TimeInterval, tag: Int) {
207 | internalQueue.async {
208 | guard !self.disconnectAfterWrites else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
209 | self.disconnectAfterWrites = true
210 | self.enqueueWrite(data, withTimeout: timeout, tag: tag)
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:291:17: warning: capture of 'theDelegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
289 | readBuffer.removeSubrange(readRange)
290 | delegateQueue.async {
291 | theDelegate.socket(self, didRead: readData, withTag: nextRead.tag)
| `- warning: capture of 'theDelegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
292 | }
293 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:192:17: note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
190 | // MARK: - Interfaces
191 |
192 | public protocol CocoaMQTTSocketDelegate: AnyObject {
| `- note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
193 | func socketConnected(_ socket: CocoaMQTTSocketProtocol)
194 | func socket(_ socket: CocoaMQTTSocketProtocol, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Swift.Void)
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:291:36: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
289 | readBuffer.removeSubrange(readRange)
290 | delegateQueue.async {
291 | theDelegate.socket(self, didRead: readData, withTag: nextRead.tag)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
292 | }
293 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:370:42: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
368 | }
369 | if let delegateQueue = delegateQueue {
370 | delegateQueue.async(execute: forwardChallenge)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
371 | } else {
372 | forwardChallenge()
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:393:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
391 | guard let delegateQueue = delegateQueue else { return }
392 | delegateQueue.async {
393 | delegate.socketConnected(self)
| `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
394 | }
395 | }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:192:17: note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
190 | // MARK: - Interfaces
191 |
192 | public protocol CocoaMQTTSocketDelegate: AnyObject {
| `- note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
193 | func socketConnected(_ socket: CocoaMQTTSocketProtocol)
194 | func socket(_ socket: CocoaMQTTSocketProtocol, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Swift.Void)
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:393:38: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
391 | guard let delegateQueue = delegateQueue else { return }
392 | delegateQueue.async {
393 | delegate.socketConnected(self)
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
394 | }
395 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:463:21: warning: capture of 'handler' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure
461 | task?.send(.data(data)) { possibleError in
462 | self.queue.async {
463 | handler(possibleError)
| |- warning: capture of 'handler' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
464 | }
465 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:463:21: warning: capture of 'handler' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure
461 | task?.send(.data(data)) { possibleError in
462 | self.queue.async {
463 | handler(possibleError)
| |- warning: capture of 'handler' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
464 | }
465 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:509:21: warning: capture of 'completionHandler' with non-sendable type '(URLSession.AuthChallengeDisposition, URLCredential?) -> Void' in a '@Sendable' closure
507 | protectionSpace.port == endpointPort,
508 | let clientIdentity = self.clientIdentity else {
509 | completionHandler(.cancelAuthenticationChallenge, nil)
| |- warning: capture of 'completionHandler' with non-sendable type '(URLSession.AuthChallengeDisposition, URLCredential?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
510 | return
511 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:643:19: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket?' in a '@Sendable' closure
54 | // MARK: - CocoaMQTTWebSocket
55 |
56 | public class CocoaMQTTWebSocket: CocoaMQTTDisconnectAfterWritingSocket,
| `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
57 | CocoaMQTTClientIdentityConfiguring,
58 | CocoaMQTTServerTrustConfiguring {
:
641 | func __delegate_queue(_ fun: @escaping () -> Void) {
642 | delegateQueue?.async { [weak self] in
643 | guard self != nil else { return }
| `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket?' in a '@Sendable' closure
644 | fun()
645 | }
/Users/admin/builder/spi-builder-workspace/Source/WebSocket/CocoaMQTTWebSocket.swift:644:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
642 | delegateQueue?.async { [weak self] in
643 | guard self != nil else { return }
644 | fun()
| |- warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
645 | }
646 | }
Build complete! (11.18s)
Fetching https://github.com/leeway1208/MqttCocoaAsyncSocket
Fetching https://github.com/daltoniam/Starscream.git
[1/5197] Fetching starscream
[2/9044] Fetching starscream, mqttcocoaasyncsocket
Fetched https://github.com/daltoniam/Starscream.git from cache (1.44s)
Fetched https://github.com/leeway1208/MqttCocoaAsyncSocket from cache (1.44s)
Computing version for https://github.com/leeway1208/MqttCocoaAsyncSocket
Computed https://github.com/leeway1208/MqttCocoaAsyncSocket at 1.0.8 (2.07s)
Computing version for https://github.com/daltoniam/Starscream.git
Computed https://github.com/daltoniam/Starscream.git at 4.0.8 (0.60s)
Creating working copy for https://github.com/daltoniam/Starscream.git
Working copy of https://github.com/daltoniam/Starscream.git resolved at 4.0.8
Creating working copy for https://github.com/leeway1208/MqttCocoaAsyncSocket
Working copy of https://github.com/leeway1208/MqttCocoaAsyncSocket resolved at 1.0.8
warning: 'starscream': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Starscream/Sources/Info.plist
Build complete.
{
"dependencies" : [
{
"identity" : "starscream",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.8",
"upper_bound" : "6.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/daltoniam/Starscream.git"
},
{
"identity" : "mqttcocoaasyncsocket",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.8",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/leeway1208/MqttCocoaAsyncSocket"
}
],
"manifest_display_name" : "CocoaMQTT",
"name" : "CocoaMQTT",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "CocoaMQTT",
"targets" : [
"CocoaMQTT"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CocoaMQTTWebSocket",
"targets" : [
"CocoaMQTTWebSocket"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CocoaMQTTWebSocket",
"module_type" : "SwiftTarget",
"name" : "CocoaMQTTWebSocket",
"path" : "Source/WebSocket",
"product_dependencies" : [
"Starscream"
],
"product_memberships" : [
"CocoaMQTTWebSocket"
],
"sources" : [
"CocoaMQTTWebSocket.swift"
],
"target_dependencies" : [
"CocoaMQTT"
],
"type" : "library"
},
{
"c99name" : "CocoaMQTTTests",
"module_type" : "SwiftTarget",
"name" : "CocoaMQTTTests",
"path" : "CocoaMQTTTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/CocoaMQTTTests/client-keycert.p12",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"AutoReconnectStateTests.swift",
"ClientEventLoopTests.swift",
"ClientIdentityTests.swift",
"CocoaMQTT5DisconnectReasonStateTests.swift",
"CocoaMQTT5PublishValidationTests.swift",
"CocoaMQTT5ReasonCodeFallbackTests.swift",
"CocoaMQTT5ReceiveMessageContentTypeTests.swift",
"CocoaMQTTDeliverTests.swift",
"CocoaMQTTReaderProtocolErrorTests.swift",
"CocoaMQTTStorageTests.swift",
"CocoaMQTTTests.swift",
"CocoaMQTTWebSocketAuthenticationTests.swift",
"ConcurrentAtomicTests.swift",
"FrameTests.swift",
"GracefulDisconnectTests.swift",
"KeepAliveTests.swift",
"MQTTAutoReconnectControllerTests.swift",
"PrivacyManifestTests.swift",
"PublicLoggerAPITests.swift",
"SendingMessageLifecycleTests.swift",
"TLSChallengeResolutionTests.swift",
"TLSLoopbackIntegrationTests.swift",
"TLSLoopbackTestSupport.swift",
"ThreadSafetyRegressionTests.swift",
"WebSocketMTLSIntegrationTests.swift"
],
"target_dependencies" : [
"CocoaMQTT",
"CocoaMQTTWebSocket"
],
"type" : "test"
},
{
"c99name" : "CocoaMQTT",
"module_type" : "SwiftTarget",
"name" : "CocoaMQTT",
"path" : "Source",
"product_dependencies" : [
"MqttCocoaAsyncSocket"
],
"product_memberships" : [
"CocoaMQTT",
"CocoaMQTTWebSocket"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Source/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"CocoaMQTT.swift",
"CocoaMQTT5.swift",
"CocoaMQTT5Message.swift",
"CocoaMQTTClientIdentity.swift",
"CocoaMQTTDeliver.swift",
"CocoaMQTTLogger.swift",
"CocoaMQTTMessage.swift",
"CocoaMQTTProperty.swift",
"CocoaMQTTReader.swift",
"CocoaMQTTReasonCode.swift",
"CocoaMQTTSocket.swift",
"CocoaMQTTStorage.swift",
"CocoaMQTTTimer.swift",
"CocoaMQTTTypes.swift",
"Frame.swift",
"FrameAuth.swift",
"FrameConnAck.swift",
"FrameConnect.swift",
"FrameDisconnect.swift",
"FramePingReq.swift",
"FramePingResp.swift",
"FramePubAck.swift",
"FramePubComp.swift",
"FramePubRec.swift",
"FramePubRel.swift",
"FramePublish.swift",
"FrameSubAck.swift",
"FrameSubscribe.swift",
"FrameUnsubAck.swift",
"FrameUnsubscribe.swift",
"MQTT5SessionState.swift",
"MQTTAutoReconnectController.swift",
"MQTTKeepAliveController.swift",
"MQTTPacketIdentifierAllocator.swift",
"MqttAuthProperties.swift",
"MqttConnectProperties.swift",
"MqttDecodeConnAck.swift",
"MqttDecodePubAck.swift",
"MqttDecodePubComp.swift",
"MqttDecodePubRec.swift",
"MqttDecodePubRel.swift",
"MqttDecodePublish.swift",
"MqttDecodeSubAck.swift",
"MqttDecodeUnsubAck.swift",
"MqttPublishProperties.swift",
"MqttSubscription.swift",
"ThreadSafeDictionary.swift",
"utilities/ConcurrentAtomic.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Done.