The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build CocoaMQTT, reference master (f183e8), with Swift 6.1 for macOS (SPM) on 12 May 2025 13:27:17 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.61.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/emqx/CocoaMQTT.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/emqx/CocoaMQTT
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at f183e8d Update README to include Swift Package Manager installation instructions
Cloned https://github.com/emqx/CocoaMQTT.git
Revision (git rev-parse @):
f183e8d03eb4f8c050d6b698417fa815012b8746
SUCCESS checkout https://github.com/emqx/CocoaMQTT.git at master
Fetching https://github.com/leeway1208/MqttCocoaAsyncSocket
Fetching https://github.com/daltoniam/Starscream.git
[1/3847] Fetching mqttcocoaasyncsocket
[194/8880] Fetching mqttcocoaasyncsocket, starscream
Fetched https://github.com/daltoniam/Starscream.git from cache (1.12s)
Fetched https://github.com/leeway1208/MqttCocoaAsyncSocket from cache (1.12s)
Computing version for https://github.com/leeway1208/MqttCocoaAsyncSocket
Computed https://github.com/leeway1208/MqttCocoaAsyncSocket at 1.0.8 (1.73s)
Computing version for https://github.com/daltoniam/Starscream.git
Computed https://github.com/daltoniam/Starscream.git at 4.0.8 (0.61s)
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
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "cocoamqtt",
      "name": "CocoaMQTT",
      "url": "https://github.com/emqx/CocoaMQTT.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CocoaMQTT",
      "dependencies": [
        {
          "identity": "starscream",
          "name": "Starscream",
          "url": "https://github.com/daltoniam/Starscream.git",
          "version": "4.0.8",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Starscream",
          "dependencies": [
          ]
        },
        {
          "identity": "mqttcocoaasyncsocket",
          "name": "MqttCocoaAsyncSocket",
          "url": "https://github.com/leeway1208/MqttCocoaAsyncSocket",
          "version": "1.0.8",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/MqttCocoaAsyncSocket",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/emqx/CocoaMQTT.git
[1/4490] Fetching cocoamqtt
Fetched https://github.com/emqx/CocoaMQTT.git from cache (1.10s)
Fetching https://github.com/daltoniam/Starscream.git from cache
Fetching https://github.com/leeway1208/MqttCocoaAsyncSocket from cache
Fetched https://github.com/leeway1208/MqttCocoaAsyncSocket from cache (0.58s)
Fetched https://github.com/daltoniam/Starscream.git from cache (0.58s)
Computing version for https://github.com/leeway1208/MqttCocoaAsyncSocket
Computed https://github.com/leeway1208/MqttCocoaAsyncSocket at 1.0.8 (0.63s)
Computing version for https://github.com/daltoniam/Starscream.git
Computed https://github.com/daltoniam/Starscream.git at 4.0.8 (0.03s)
Creating working copy for https://github.com/leeway1208/MqttCocoaAsyncSocket
Working copy of https://github.com/leeway1208/MqttCocoaAsyncSocket resolved at 1.0.8
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/emqx/CocoaMQTT.git
Working copy of https://github.com/emqx/CocoaMQTT.git resolved at master (f183e8d)
warning: '.resolve-product-dependencies': dependency 'cocoamqtt' is not used by any target
Found 2 product dependencies
  - Starscream
  - MqttCocoaAsyncSocket
========================================
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" : {
        "exact" : [
          "4.0.8"
        ]
      },
      "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" : "10.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",
      "product_dependencies" : [
        "Starscream"
      ],
      "product_memberships" : [
        "CocoaMQTTWebSocket"
      ],
      "sources" : [
        "CocoaMQTTWebSocket.swift"
      ],
      "target_dependencies" : [
        "CocoaMQTT"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CocoaMQTTTests",
      "module_type" : "SwiftTarget",
      "name" : "CocoaMQTTTests",
      "path" : "CocoaMQTTTests",
      "sources" : [
        "CocoaMQTTDeliverTests.swift",
        "CocoaMQTTStorageTests.swift",
        "CocoaMQTTTests.swift",
        "FrameTests.swift"
      ],
      "target_dependencies" : [
        "CocoaMQTT",
        "CocoaMQTTWebSocket"
      ],
      "type" : "test"
    },
    {
      "c99name" : "CocoaMQTT",
      "module_type" : "SwiftTarget",
      "name" : "CocoaMQTT",
      "path" : "Source",
      "product_dependencies" : [
        "MqttCocoaAsyncSocket"
      ],
      "product_memberships" : [
        "CocoaMQTT",
        "CocoaMQTTWebSocket"
      ],
      "sources" : [
        "CocoaMQTT.swift",
        "CocoaMQTT5.swift",
        "CocoaMQTT5Message.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",
        "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"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
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/7] Write sources
[0/7] Copying PrivacyInfo.xcprivacy
[0/7] Write sources
[4/7] Write swift-version-2F0A5646E1D333AE.txt
[5/27] Compiling MqttCocoaAsyncSocket MGCDAsyncUdpSocket.m
[6/27] Compiling MqttCocoaAsyncSocket MGCDAsyncSocket.m
[8/66] Compiling CocoaMQTT FramePubRec.swift
[9/66] Compiling CocoaMQTT FramePubRel.swift
[10/66] Compiling CocoaMQTT FramePublish.swift
[11/66] Compiling CocoaMQTT FrameSubAck.swift
[12/70] Compiling CocoaMQTT CocoaMQTTStorage.swift
[13/70] Compiling CocoaMQTT CocoaMQTTTimer.swift
[14/70] Compiling CocoaMQTT CocoaMQTTTypes.swift
[15/70] Compiling CocoaMQTT Frame.swift
[16/70] Compiling CocoaMQTT FrameAuth.swift
[17/70] Compiling CocoaMQTT FrameConnAck.swift
[18/70] Compiling CocoaMQTT FrameConnect.swift
[19/70] Compiling CocoaMQTT FrameDisconnect.swift
[20/70] Compiling CocoaMQTT MqttDecodePubRec.swift
[21/70] Compiling CocoaMQTT MqttDecodePubRel.swift
[22/70] Compiling CocoaMQTT MqttDecodePublish.swift
[23/70] Compiling CocoaMQTT MqttDecodeSubAck.swift
[24/70] Emitting module Starscream
[29/72] Compiling CocoaMQTT MqttConnectProperties.swift
[30/72] Compiling CocoaMQTT FramePingResp.swift
[31/72] Compiling CocoaMQTT FramePubAck.swift
[32/72] Compiling CocoaMQTT MqttDecodeConnAck.swift
[33/72] Compiling CocoaMQTT MqttDecodePubAck.swift
[34/72] Compiling Starscream resource_bundle_accessor.swift
[35/72] Compiling CocoaMQTT CocoaMQTTProperty.swift
[36/72] Compiling CocoaMQTT CocoaMQTTReader.swift
[37/72] Compiling CocoaMQTT CocoaMQTTReasonCode.swift
[38/72] Compiling CocoaMQTT CocoaMQTTSocket.swift
[39/72] Compiling CocoaMQTT CocoaMQTT.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:388:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
386 |
387 |             delegateQueue.async { [weak self] in
388 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
389 |                 self.connState = .connecting
390 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:43: warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTMessage.swift:12:14: note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
10 |
11 | /// MQTT Message
12 | public class CocoaMQTTMessage: NSObject {
   |              `- note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
13 |
14 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:471:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
469 |         guard deliver.add(frame) else {
470 |             delegateQueue.async {
471 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
472 |             }
473 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:553:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
551 |     func __delegate_queue(_ fun: @escaping () -> Void) {
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
554 |             fun()
555 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:554:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
554 |             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'
555 |         }
556 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:661:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
659 |                 guard let self = self else { return }
660 |                 self.delegateQueue.async {
661 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
662 |                         self.aliveTimer = nil
663 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:398:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
396 |
397 |             delegateQueue.async { [weak self] in
398 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
399 |                 self.connState = .connecting
400 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:43: warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5Message.swift:13:14: note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 11 |
 12 | /// MQTT Message
 13 | public class CocoaMQTT5Message: NSObject {
    |              `- note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 14 |
 15 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:502:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
500 |         guard deliver.add(frame) else {
501 |             delegateQueue.async {
502 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
503 |             }
504 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:609:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
607 |     func __delegate_queue(_ fun: @escaping () -> Void) {
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
610 |             fun()
611 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:610:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
610 |             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'
611 |         }
612 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:728:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
726 |                 guard let self = self else { return }
727 |                 self.delegateQueue.async {
728 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
729 |                         self.aliveTimer = nil
730 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:97:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
 95 |
 96 |             deliverQueue.async { [weak self] in
 97 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 98 |                 self.tryTransport()
 99 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:119:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
117 |
118 |         deliverQueue.async { [weak self] in
119 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
120 |             self.tryTransport()
121 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
134 |
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
138 |             if acked.count == 0 {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:71: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                                       `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:58: warning: reference to captured var 'msgid' in concurrently-executing code
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                          `- warning: reference to captured var 'msgid' in concurrently-executing code
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:143:48: warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
141 |                 // TODO: ACK DONT DELETE PUBREL
142 |                 for f in acked {
143 |                     if frame is FramePubAck || frame is FramePubComp {
    |                                                `- warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
144 |                         self.storage?.remove(f)
145 |                     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:147:52: warning: reference to captured var 'msgid' in concurrently-executing code
145 |                     }
146 |                 }
147 |                 printDebug("Acknowledge frame id \(msgid) success, acked: \(acked)")
    |                                                    `- warning: reference to captured var 'msgid' in concurrently-executing code
148 |                 self.tryTransport()
149 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:198:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
196 |                     guard let self = self else { return }
197 |                     self.deliverQueue.async {
198 |                         self.redeliver()
    |                         `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
199 |                     }
200 |                 }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280: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 }
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |             `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                                                `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:38: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
36 |
37 |     // Singleton
38 |     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
39 |     public override init() { super.init() }
40 |
[40/72] Compiling CocoaMQTT CocoaMQTT5.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:388:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
386 |
387 |             delegateQueue.async { [weak self] in
388 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
389 |                 self.connState = .connecting
390 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:43: warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTMessage.swift:12:14: note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
10 |
11 | /// MQTT Message
12 | public class CocoaMQTTMessage: NSObject {
   |              `- note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
13 |
14 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:471:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
469 |         guard deliver.add(frame) else {
470 |             delegateQueue.async {
471 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
472 |             }
473 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:553:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
551 |     func __delegate_queue(_ fun: @escaping () -> Void) {
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
554 |             fun()
555 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:554:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
554 |             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'
555 |         }
556 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:661:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
659 |                 guard let self = self else { return }
660 |                 self.delegateQueue.async {
661 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
662 |                         self.aliveTimer = nil
663 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:398:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
396 |
397 |             delegateQueue.async { [weak self] in
398 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
399 |                 self.connState = .connecting
400 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:43: warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5Message.swift:13:14: note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 11 |
 12 | /// MQTT Message
 13 | public class CocoaMQTT5Message: NSObject {
    |              `- note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 14 |
 15 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:502:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
500 |         guard deliver.add(frame) else {
501 |             delegateQueue.async {
502 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
503 |             }
504 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:609:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
607 |     func __delegate_queue(_ fun: @escaping () -> Void) {
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
610 |             fun()
611 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:610:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
610 |             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'
611 |         }
612 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:728:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
726 |                 guard let self = self else { return }
727 |                 self.delegateQueue.async {
728 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
729 |                         self.aliveTimer = nil
730 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:97:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
 95 |
 96 |             deliverQueue.async { [weak self] in
 97 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 98 |                 self.tryTransport()
 99 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:119:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
117 |
118 |         deliverQueue.async { [weak self] in
119 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
120 |             self.tryTransport()
121 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
134 |
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
138 |             if acked.count == 0 {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:71: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                                       `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:58: warning: reference to captured var 'msgid' in concurrently-executing code
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                          `- warning: reference to captured var 'msgid' in concurrently-executing code
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:143:48: warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
141 |                 // TODO: ACK DONT DELETE PUBREL
142 |                 for f in acked {
143 |                     if frame is FramePubAck || frame is FramePubComp {
    |                                                `- warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
144 |                         self.storage?.remove(f)
145 |                     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:147:52: warning: reference to captured var 'msgid' in concurrently-executing code
145 |                     }
146 |                 }
147 |                 printDebug("Acknowledge frame id \(msgid) success, acked: \(acked)")
    |                                                    `- warning: reference to captured var 'msgid' in concurrently-executing code
148 |                 self.tryTransport()
149 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:198:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
196 |                     guard let self = self else { return }
197 |                     self.deliverQueue.async {
198 |                         self.redeliver()
    |                         `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
199 |                     }
200 |                 }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280: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 }
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |             `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                                                `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:38: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
36 |
37 |     // Singleton
38 |     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
39 |     public override init() { super.init() }
40 |
[41/72] Compiling CocoaMQTT CocoaMQTT5Message.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:388:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
386 |
387 |             delegateQueue.async { [weak self] in
388 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
389 |                 self.connState = .connecting
390 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:43: warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTMessage.swift:12:14: note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
10 |
11 | /// MQTT Message
12 | public class CocoaMQTTMessage: NSObject {
   |              `- note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
13 |
14 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:471:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
469 |         guard deliver.add(frame) else {
470 |             delegateQueue.async {
471 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
472 |             }
473 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:553:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
551 |     func __delegate_queue(_ fun: @escaping () -> Void) {
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
554 |             fun()
555 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:554:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
554 |             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'
555 |         }
556 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:661:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
659 |                 guard let self = self else { return }
660 |                 self.delegateQueue.async {
661 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
662 |                         self.aliveTimer = nil
663 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:398:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
396 |
397 |             delegateQueue.async { [weak self] in
398 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
399 |                 self.connState = .connecting
400 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:43: warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5Message.swift:13:14: note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 11 |
 12 | /// MQTT Message
 13 | public class CocoaMQTT5Message: NSObject {
    |              `- note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 14 |
 15 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:502:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
500 |         guard deliver.add(frame) else {
501 |             delegateQueue.async {
502 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
503 |             }
504 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:609:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
607 |     func __delegate_queue(_ fun: @escaping () -> Void) {
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
610 |             fun()
611 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:610:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
610 |             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'
611 |         }
612 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:728:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
726 |                 guard let self = self else { return }
727 |                 self.delegateQueue.async {
728 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
729 |                         self.aliveTimer = nil
730 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:97:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
 95 |
 96 |             deliverQueue.async { [weak self] in
 97 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 98 |                 self.tryTransport()
 99 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:119:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
117 |
118 |         deliverQueue.async { [weak self] in
119 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
120 |             self.tryTransport()
121 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
134 |
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
138 |             if acked.count == 0 {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:71: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                                       `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:58: warning: reference to captured var 'msgid' in concurrently-executing code
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                          `- warning: reference to captured var 'msgid' in concurrently-executing code
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:143:48: warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
141 |                 // TODO: ACK DONT DELETE PUBREL
142 |                 for f in acked {
143 |                     if frame is FramePubAck || frame is FramePubComp {
    |                                                `- warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
144 |                         self.storage?.remove(f)
145 |                     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:147:52: warning: reference to captured var 'msgid' in concurrently-executing code
145 |                     }
146 |                 }
147 |                 printDebug("Acknowledge frame id \(msgid) success, acked: \(acked)")
    |                                                    `- warning: reference to captured var 'msgid' in concurrently-executing code
148 |                 self.tryTransport()
149 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:198:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
196 |                     guard let self = self else { return }
197 |                     self.deliverQueue.async {
198 |                         self.redeliver()
    |                         `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
199 |                     }
200 |                 }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280: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 }
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |             `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                                                `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:38: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
36 |
37 |     // Singleton
38 |     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
39 |     public override init() { super.init() }
40 |
[42/72] Compiling CocoaMQTT CocoaMQTTDeliver.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:388:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
386 |
387 |             delegateQueue.async { [weak self] in
388 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
389 |                 self.connState = .connecting
390 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:43: warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTMessage.swift:12:14: note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
10 |
11 | /// MQTT Message
12 | public class CocoaMQTTMessage: NSObject {
   |              `- note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
13 |
14 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:471:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
469 |         guard deliver.add(frame) else {
470 |             delegateQueue.async {
471 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
472 |             }
473 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:553:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
551 |     func __delegate_queue(_ fun: @escaping () -> Void) {
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
554 |             fun()
555 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:554:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
554 |             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'
555 |         }
556 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:661:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
659 |                 guard let self = self else { return }
660 |                 self.delegateQueue.async {
661 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
662 |                         self.aliveTimer = nil
663 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:398:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
396 |
397 |             delegateQueue.async { [weak self] in
398 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
399 |                 self.connState = .connecting
400 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:43: warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5Message.swift:13:14: note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 11 |
 12 | /// MQTT Message
 13 | public class CocoaMQTT5Message: NSObject {
    |              `- note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 14 |
 15 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:502:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
500 |         guard deliver.add(frame) else {
501 |             delegateQueue.async {
502 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
503 |             }
504 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:609:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
607 |     func __delegate_queue(_ fun: @escaping () -> Void) {
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
610 |             fun()
611 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:610:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
610 |             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'
611 |         }
612 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:728:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
726 |                 guard let self = self else { return }
727 |                 self.delegateQueue.async {
728 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
729 |                         self.aliveTimer = nil
730 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:97:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
 95 |
 96 |             deliverQueue.async { [weak self] in
 97 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 98 |                 self.tryTransport()
 99 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:119:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
117 |
118 |         deliverQueue.async { [weak self] in
119 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
120 |             self.tryTransport()
121 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
134 |
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
138 |             if acked.count == 0 {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:71: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                                       `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:58: warning: reference to captured var 'msgid' in concurrently-executing code
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                          `- warning: reference to captured var 'msgid' in concurrently-executing code
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:143:48: warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
141 |                 // TODO: ACK DONT DELETE PUBREL
142 |                 for f in acked {
143 |                     if frame is FramePubAck || frame is FramePubComp {
    |                                                `- warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
144 |                         self.storage?.remove(f)
145 |                     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:147:52: warning: reference to captured var 'msgid' in concurrently-executing code
145 |                     }
146 |                 }
147 |                 printDebug("Acknowledge frame id \(msgid) success, acked: \(acked)")
    |                                                    `- warning: reference to captured var 'msgid' in concurrently-executing code
148 |                 self.tryTransport()
149 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:198:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
196 |                     guard let self = self else { return }
197 |                     self.deliverQueue.async {
198 |                         self.redeliver()
    |                         `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
199 |                     }
200 |                 }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280: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 }
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |             `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                                                `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:38: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
36 |
37 |     // Singleton
38 |     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
39 |     public override init() { super.init() }
40 |
[43/72] Compiling CocoaMQTT CocoaMQTTLogger.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:388:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
386 |
387 |             delegateQueue.async { [weak self] in
388 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
389 |                 self.connState = .connecting
390 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:465:43: warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
463 |
464 |         delegateQueue.async {
465 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTTMessage' in a '@Sendable' closure
466 |         }
467 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTMessage.swift:12:14: note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
10 |
11 | /// MQTT Message
12 | public class CocoaMQTTMessage: NSObject {
   |              `- note: class 'CocoaMQTTMessage' does not conform to the 'Sendable' protocol
13 |
14 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:471:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
469 |         guard deliver.add(frame) else {
470 |             delegateQueue.async {
471 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
472 |             }
473 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:553:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
551 |     func __delegate_queue(_ fun: @escaping () -> Void) {
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT?' in a '@Sendable' closure
554 |             fun()
555 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:554:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
552 |         delegateQueue.async { [weak self] in
553 |             guard let _ = self else { return }
554 |             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'
555 |         }
556 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT.swift:661:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
141 | ///
142 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
143 | public class CocoaMQTT: NSObject, CocoaMQTTClient {
    |              `- note: class 'CocoaMQTT' does not conform to the 'Sendable' protocol
144 |
145 |     public weak var delegate: CocoaMQTTDelegate?
    :
659 |                 guard let self = self else { return }
660 |                 self.delegateQueue.async {
661 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT' in a '@Sendable' closure
662 |                         self.aliveTimer = nil
663 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:398:34: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
396 |
397 |             delegateQueue.async { [weak self] in
398 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
399 |                 self.connState = .connecting
400 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:13: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:496:43: warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
494 |
495 |         delegateQueue.async {
496 |             self.sendingMessages[msgid] = message
    |                                           `- warning: capture of 'message' with non-sendable type 'CocoaMQTT5Message' in a '@Sendable' closure
497 |         }
498 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5Message.swift:13:14: note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 11 |
 12 | /// MQTT Message
 13 | public class CocoaMQTT5Message: NSObject {
    |              `- note: class 'CocoaMQTT5Message' does not conform to the 'Sendable' protocol
 14 |
 15 |     public var qos = CocoaMQTTQoS.qos1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:502:17: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
500 |         guard deliver.add(frame) else {
501 |             delegateQueue.async {
502 |                 self.sendingMessages.removeValue(forKey: msgid)
    |                 `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
503 |             }
504 |             return -1
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:609:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
607 |     func __delegate_queue(_ fun: @escaping () -> Void) {
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5?' in a '@Sendable' closure
610 |             fun()
611 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:610:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
608 |         delegateQueue.async { [weak self] in
609 |             guard let _ = self else { return }
610 |             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'
611 |         }
612 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTT5.swift:728:27: warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
136 | ///
137 | /// - Note: MGCDAsyncSocket need delegate to extend NSObject
138 | public class CocoaMQTT5: NSObject, CocoaMQTT5Client {
    |              `- note: class 'CocoaMQTT5' does not conform to the 'Sendable' protocol
139 |
140 |     public weak var delegate: CocoaMQTT5Delegate?
    :
726 |                 guard let self = self else { return }
727 |                 self.delegateQueue.async {
728 |                     guard self.connState == .connected else {
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTT5' in a '@Sendable' closure
729 |                         self.aliveTimer = nil
730 |                         return
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:97:34: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
 95 |
 96 |             deliverQueue.async { [weak self] in
 97 |                 guard let self = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 98 |                 self.tryTransport()
 99 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:119:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
117 |
118 |         deliverQueue.async { [weak self] in
119 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
120 |             self.tryTransport()
121 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:136:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
134 |
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver?' in a '@Sendable' closure
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
138 |             if acked.count == 0 {
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:71: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                                       `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:137:58: warning: reference to captured var 'msgid' in concurrently-executing code
135 |         deliverQueue.async { [weak self] in
136 |             guard let self = self else { return }
137 |             let acked = self.ackInflightFrame(withMsgid: msgid, type: frame.type)
    |                                                          `- warning: reference to captured var 'msgid' in concurrently-executing code
138 |             if acked.count == 0 {
139 |                 printWarning("Acknowledge by \(frame), but not found in inflight window")
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:143:48: warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
141 |                 // TODO: ACK DONT DELETE PUBREL
142 |                 for f in acked {
143 |                     if frame is FramePubAck || frame is FramePubComp {
    |                                                `- warning: implicit capture of 'frame' requires that 'any Frame' conforms to 'Sendable'; this is an error in the Swift 6 language mode
144 |                         self.storage?.remove(f)
145 |                     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:147:52: warning: reference to captured var 'msgid' in concurrently-executing code
145 |                     }
146 |                 }
147 |                 printDebug("Acknowledge frame id \(msgid) success, acked: \(acked)")
    |                                                    `- warning: reference to captured var 'msgid' in concurrently-executing code
148 |                 self.tryTransport()
149 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:198:25: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
196 |                     guard let self = self else { return }
197 |                     self.deliverQueue.async {
198 |                         self.redeliver()
    |                         `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
199 |                     }
200 |                 }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280: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 }
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |             `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTDeliverProtocol' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:30: warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
 49 |
 50 | // CocoaMQTTDeliver
 51 | class CocoaMQTTDeliver: NSObject {
    |       `- note: class 'CocoaMQTTDeliver' does not conform to the 'Sendable' protocol
 52 |
 53 |     /// The dispatch queue is used by delivering frames in serially
    :
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                              `- warning: capture of 'self' with non-sendable type 'CocoaMQTTDeliver' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTDeliver.swift:280:48: warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
278 |
279 |         delegate.delegateQueue.async {
280 |             delegate.deliver(self, wantToSend: frame)
    |                                                `- warning: capture of 'frame' with non-sendable type 'any Frame' in a '@Sendable' closure
281 |         }
282 |     }
/Users/admin/builder/spi-builder-workspace/Source/Frame.swift:82:10: note: protocol 'Frame' does not conform to the 'Sendable' protocol
 80 |
 81 | /// MQTT Frame protocol
 82 | protocol Frame {
    |          `- note: protocol 'Frame' does not conform to the 'Sendable' protocol
 83 |
 84 |     /// Each MQTT Control Packet contains a fixed header
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:38: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
36 |
37 |     // Singleton
38 |     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
39 |     public override init() { super.init() }
40 |
[47/72] Compiling CocoaMQTT MqttDecodePubComp.swift
[48/72] Emitting module CocoaMQTT
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTLogger.swift:38: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
36 |
37 |     // Singleton
38 |     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
39 |     public override init() { super.init() }
40 |
[49/72] Compiling CocoaMQTT FramePingReq.swift
[52/72] Compiling Starscream Transport.swift
[53/72] Compiling CocoaMQTT FrameSubscribe.swift
[54/72] Compiling CocoaMQTT FrameUnsubAck.swift
[55/72] Compiling CocoaMQTT FrameUnsubscribe.swift
[56/72] Compiling CocoaMQTT MqttAuthProperties.swift
[67/72] Compiling CocoaMQTT MqttDecodeUnsubAck.swift
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:17: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                 `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:34: warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                  `- warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:41: warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                               `- note: consider making generic parameter 'V' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                         `- warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:64:13: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
62 |     public func removeAll() {
63 |         concurrentQueue.async(flags: .barrier) {[weak self] in
64 |             self?.dictionary.removeAll()
   |             `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
65 |         }
66 |     }
[68/72] Compiling CocoaMQTT MqttPublishProperties.swift
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:17: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                 `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:34: warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                  `- warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:41: warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                               `- note: consider making generic parameter 'V' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                         `- warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:64:13: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
62 |     public func removeAll() {
63 |         concurrentQueue.async(flags: .barrier) {[weak self] in
64 |             self?.dictionary.removeAll()
   |             `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
65 |         }
66 |     }
[69/72] Compiling CocoaMQTT MqttSubscription.swift
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:17: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                 `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:34: warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                  `- warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:41: warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                               `- note: consider making generic parameter 'V' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                         `- warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:64:13: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
62 |     public func removeAll() {
63 |         concurrentQueue.async(flags: .barrier) {[weak self] in
64 |             self?.dictionary.removeAll()
   |             `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
65 |         }
66 |     }
[70/72] Compiling CocoaMQTT ThreadSafeDictionary.swift
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:17: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                 `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:34: warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                  `- warning: capture of 'key' with non-sendable type 'K' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:39:41: warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |                                               `- note: consider making generic parameter 'V' conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
37 |         set(newValue) {
38 |             concurrentQueue.async(flags: .barrier) {[weak self] in
39 |                 self?.dictionary[key] = newValue
   |                                         `- warning: capture of 'newValue' with non-sendable type 'V?' in a '@Sendable' closure
40 |             }
41 |         }
/Users/admin/builder/spi-builder-workspace/Source/ThreadSafeDictionary.swift:64:13: warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
 7 |
 8 | /// A thread-safe dictionary
 9 | public class ThreadSafeDictionary<K: Hashable,V>: Collection {
   |              `- note: generic class 'ThreadSafeDictionary' does not conform to the 'Sendable' protocol
10 |     private var dictionary: [K: V]
11 |     private let concurrentQueue: DispatchQueue
   :
62 |     public func removeAll() {
63 |         concurrentQueue.async(flags: .barrier) {[weak self] in
64 |             self?.dictionary.removeAll()
   |             `- warning: capture of 'self' with non-sendable type 'ThreadSafeDictionary<K, V>?' in a '@Sendable' closure
65 |         }
66 |     }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[73/74] Emitting module CocoaMQTTWebSocket
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:311:11: warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
309 | @available(OSX 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *)
310 | public extension CocoaMQTTWebSocket {
311 |     class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection {
    |           `- warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
312 |
313 |         public weak var delegate: CocoaMQTTWebSocketConnectionDelegate?
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:313:25: warning: stored property 'delegate' of 'Sendable'-conforming class 'FoundationConnection' is mutable; this is an error in the Swift 6 language mode
311 |     class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection {
312 |
313 |         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
314 |         public lazy var queue = DispatchQueue(label: "CocoaMQTTFoundationWebSocketConnection-\(self.hashValue)")
315 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:459:1: error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
457 | }
458 |
459 | extension CocoaMQTTWebSocket.StarscreamConnection: WebSocketDelegate {
    | |- error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
    | `- note: add stubs for conformance
460 |     public func didReceive(event: Starscream.WebSocketEvent, client: Starscream.WebSocket) {
    |                 `- note: candidate has non-matching type '(WebSocketEvent, WebSocket) -> ()'
461 |         switch event {
462 |         case .connected(_):
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Starscream/Sources/Starscream/WebSocket.swift:92:10: note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 90 |
 91 | public protocol WebSocketDelegate: AnyObject {
 92 |     func didReceive(event: WebSocketEvent, client: WebSocketClient)
    |          `- note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 93 | }
 94 |
[74/74] Compiling CocoaMQTTWebSocket CocoaMQTTWebSocket.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:311:11: warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
309 | @available(OSX 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *)
310 | public extension CocoaMQTTWebSocket {
311 |     class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection {
    |           `- warning: non-final class 'FoundationConnection' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
312 |
313 |         public weak var delegate: CocoaMQTTWebSocketConnectionDelegate?
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:313:25: warning: stored property 'delegate' of 'Sendable'-conforming class 'FoundationConnection' is mutable; this is an error in the Swift 6 language mode
311 |     class FoundationConnection: NSObject, CocoaMQTTWebSocketConnection {
312 |
313 |         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
314 |         public lazy var queue = DispatchQueue(label: "CocoaMQTTFoundationWebSocketConnection-\(self.hashValue)")
315 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:459:1: error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
457 | }
458 |
459 | extension CocoaMQTTWebSocket.StarscreamConnection: WebSocketDelegate {
    | |- error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
    | `- note: add stubs for conformance
460 |     public func didReceive(event: Starscream.WebSocketEvent, client: Starscream.WebSocket) {
    |                 `- note: candidate has non-matching type '(WebSocketEvent, WebSocket) -> ()'
461 |         switch event {
462 |         case .connected(_):
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Starscream/Sources/Starscream/WebSocket.swift:92:10: note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 90 |
 91 | public protocol WebSocketDelegate: AnyObject {
 92 |     func didReceive(event: WebSocketEvent, client: WebSocketClient)
    |          `- note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 93 | }
 94 |
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:82:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
 80 |     public func setDelegate(_ theDelegate: CocoaMQTTSocketDelegate?, delegateQueue: DispatchQueue?) {
 81 |         internalQueue.async {
 82 |             self.delegate = theDelegate
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 83 |             self.delegateQueue = delegateQueue
 84 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:82:29: warning: capture of 'theDelegate' with non-sendable type '(any CocoaMQTTSocketDelegate)?' in a '@Sendable' closure
 80 |     public func setDelegate(_ theDelegate: CocoaMQTTSocketDelegate?, delegateQueue: DispatchQueue?) {
 81 |         internalQueue.async {
 82 |             self.delegate = theDelegate
    |                             `- warning: capture of 'theDelegate' with non-sendable type '(any CocoaMQTTSocketDelegate)?' in a '@Sendable' closure
 83 |             self.delegateQueue = delegateQueue
 84 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:13:17: note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
 11 | // MARK: - Interfaces
 12 |
 13 | public protocol CocoaMQTTSocketDelegate: AnyObject {
    |                 `- note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
 14 |     func socketConnected(_ socket: CocoaMQTTSocketProtocol)
 15 |     func socket(_ socket: CocoaMQTTSocketProtocol, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Swift.Void)
/Users/admin/builder/spi-builder-workspace/Source/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/CocoaMQTTWebSocket.swift:122:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
120 |         internalQueue.async {
121 |             //self.reset()
122 |             self.closeConnection(withError: nil)
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
123 |         }
124 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:129:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
127 |         internalQueue.async {
128 |             let newRead = ReadItem(tag: tag, length: length, timeout: (timeout > 0.0) ? .now() + timeout : .distantFuture)
129 |             self.scheduledReads.append(newRead)
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
130 |             self.checkScheduledReads()
131 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:137:13: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
135 |         internalQueue.async {
136 |             let newWrite = WriteItem(tag: tag, timeout: (timeout > 0.0) ? .now() + timeout : .distantFuture)
137 |             self.scheduledWrites.insert(newWrite)
    |             `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
138 |             self.checkScheduledWrites()
139 |             self.connection?.write(data: data) { possibleError in
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:141:21: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in an isolated closure; this is an error in the Swift 6 language mode
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
139 |             self.connection?.write(data: data) { possibleError in
140 |                 if let error = possibleError {
141 |                     self.closeConnection(withError: error)
    |                     `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in an isolated closure; this is an error in the Swift 6 language mode
142 |                 } else {
143 |                     guard self.scheduledWrites.remove(newWrite) != nil else { return }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:222:17: warning: capture of 'theDelegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
220 |             readBuffer.removeSubrange(readRange)
221 |             delegateQueue.async {
222 |                 theDelegate.socket(self, didRead: readData, withTag: nextRead.tag)
    |                 `- warning: capture of 'theDelegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
223 |             }
224 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:13:17: note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
 11 | // MARK: - Interfaces
 12 |
 13 | public protocol CocoaMQTTSocketDelegate: AnyObject {
    |                 `- note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
 14 |     func socketConnected(_ socket: CocoaMQTTSocketProtocol)
 15 |     func socket(_ socket: CocoaMQTTSocketProtocol, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Swift.Void)
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:222:36: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
220 |             readBuffer.removeSubrange(readRange)
221 |             delegateQueue.async {
222 |                 theDelegate.socket(self, didRead: readData, withTag: nextRead.tag)
    |                                    `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
223 |             }
224 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:286:13: warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
284 |         guard let delegateQueue = delegateQueue else { return }
285 |         delegateQueue.async {
286 |             delegate.socketConnected(self)
    |             `- warning: capture of 'delegate' with non-sendable type 'any CocoaMQTTSocketDelegate' in a '@Sendable' closure
287 |         }
288 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTSocket.swift:13:17: note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
 11 | // MARK: - Interfaces
 12 |
 13 | public protocol CocoaMQTTSocketDelegate: AnyObject {
    |                 `- note: protocol 'CocoaMQTTSocketDelegate' does not conform to the 'Sendable' protocol
 14 |     func socketConnected(_ socket: CocoaMQTTSocketProtocol)
 15 |     func socket(_ socket: CocoaMQTTSocketProtocol, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Swift.Void)
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:286:38: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
284 |         guard let delegateQueue = delegateQueue else { return }
285 |         delegateQueue.async {
286 |             delegate.socketConnected(self)
    |                                      `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket' in a '@Sendable' closure
287 |         }
288 |     }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:341:21: warning: capture of 'handler' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure
339 |             task?.send(.data(data)) { possibleError in
340 |                 self.queue.async {
341 |                     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'
342 |                 }
343 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:341:21: warning: capture of 'handler' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure
339 |             task?.send(.data(data)) { possibleError in
340 |                 self.queue.async {
341 |                     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'
342 |                 }
343 |             }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:378:21: warning: capture of 'completionHandler' with non-sendable type '(URLSession.AuthChallengeDisposition, URLCredential?) -> Void' in a '@Sendable' closure
376 |             if let trust = challenge.protectionSpace.serverTrust, let delegate = self.delegate {
377 |                 delegate.connection(self, didReceive: trust) { shouldTrust in
378 |                     completionHandler(shouldTrust ? .performDefaultHandling : .rejectProtectionSpace, 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'
379 |                 }
380 |                 delegate.urlSessionConnection(self, didReceiveTrust: trust, didReceiveChallenge: challenge, completionHandler: completionHandler)
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:378:21: warning: capture of 'completionHandler' with non-sendable type '(URLSession.AuthChallengeDisposition, URLCredential?) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
376 |             if let trust = challenge.protectionSpace.serverTrust, let delegate = self.delegate {
377 |                 delegate.connection(self, didReceive: trust) { shouldTrust in
378 |                     completionHandler(shouldTrust ? .performDefaultHandling : .rejectProtectionSpace, nil)
    |                     |- warning: capture of 'completionHandler' with non-sendable type '(URLSession.AuthChallengeDisposition, URLCredential?) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
379 |                 }
380 |                 delegate.urlSessionConnection(self, didReceiveTrust: trust, didReceiveChallenge: challenge, completionHandler: completionHandler)
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:494:27: warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket?' in a '@Sendable' closure
 50 | // MARK: - CocoaMQTTWebSocket
 51 |
 52 | public class CocoaMQTTWebSocket: CocoaMQTTSocketProtocol {
    |              `- note: class 'CocoaMQTTWebSocket' does not conform to the 'Sendable' protocol
 53 |
 54 |     public var enableSSL = false
    :
492 |     func __delegate_queue(_ fun: @escaping () -> Void) {
493 |         delegateQueue?.async { [weak self] in
494 |             guard let _ = self else { return }
    |                           `- warning: capture of 'self' with non-sendable type 'CocoaMQTTWebSocket?' in a '@Sendable' closure
495 |             fun()
496 |         }
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:495:13: warning: capture of 'fun' with non-sendable type '() -> Void' in a '@Sendable' closure
493 |         delegateQueue?.async { [weak self] in
494 |             guard let _ = self else { return }
495 |             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'
496 |         }
497 |     }
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
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/60] Compiling CocoaMQTT MqttDecodePubRec.swift
[3/60] Compiling CocoaMQTT MqttDecodePubRel.swift
[4/60] Compiling CocoaMQTT MqttDecodePublish.swift
[5/60] Compiling CocoaMQTT MqttDecodeSubAck.swift
[6/60] Compiling CocoaMQTT MqttConnectProperties.swift
[7/60] Compiling CocoaMQTT MqttDecodeConnAck.swift
[8/60] Compiling CocoaMQTT MqttDecodePubAck.swift
[9/60] Compiling CocoaMQTT MqttDecodePubComp.swift
[10/64] Compiling CocoaMQTT FrameSubscribe.swift
[11/64] Compiling CocoaMQTT FrameUnsubAck.swift
[12/64] Compiling CocoaMQTT FrameUnsubscribe.swift
[13/64] Compiling CocoaMQTT MqttAuthProperties.swift
[14/64] Compiling CocoaMQTT FrameAuth.swift
[15/64] Compiling CocoaMQTT FrameConnAck.swift
[16/64] Compiling CocoaMQTT FrameConnect.swift
[17/64] Compiling CocoaMQTT FrameDisconnect.swift
[18/64] Compiling CocoaMQTT FramePingReq.swift
[19/64] Compiling CocoaMQTT FramePingResp.swift
[20/64] Compiling CocoaMQTT FramePubAck.swift
[21/64] Compiling CocoaMQTT FramePubComp.swift
[22/64] Compiling CocoaMQTT FramePubRec.swift
[23/64] Compiling CocoaMQTT FramePubRel.swift
[24/64] Compiling CocoaMQTT FramePublish.swift
[25/64] Compiling CocoaMQTT FrameSubAck.swift
[26/64] Compiling CocoaMQTT Frame.swift
[28/64] Compiling CocoaMQTT CocoaMQTT5Message.swift
[29/64] Compiling CocoaMQTT CocoaMQTTDeliver.swift
[30/64] Compiling CocoaMQTT CocoaMQTTLogger.swift
[31/64] Compiling CocoaMQTT CocoaMQTTMessage.swift
[32/64] Compiling CocoaMQTT CocoaMQTTProperty.swift
[33/64] Compiling CocoaMQTT CocoaMQTTReader.swift
[36/64] Emitting module Starscream
[37/64] Compiling CocoaMQTT CocoaMQTTStorage.swift
[38/64] Compiling CocoaMQTT CocoaMQTTTimer.swift
[39/64] Compiling CocoaMQTT CocoaMQTTTypes.swift
[40/64] Compiling CocoaMQTT CocoaMQTTReasonCode.swift
[41/64] Compiling CocoaMQTT CocoaMQTTSocket.swift
[42/64] Compiling CocoaMQTT CocoaMQTT.swift
[43/64] Compiling CocoaMQTT CocoaMQTT5.swift
[55/66] Compiling CocoaMQTT MqttDecodeUnsubAck.swift
[56/66] Compiling CocoaMQTT MqttPublishProperties.swift
[57/66] Compiling CocoaMQTT MqttSubscription.swift
[58/66] Compiling CocoaMQTT ThreadSafeDictionary.swift
[59/66] Compiling Starscream Transport.swift
[60/66] Compiling Starscream resource_bundle_accessor.swift
[61/66] Emitting module CocoaMQTT
error: emit-module command failed with exit code 1 (use -v to see invocation)
[67/68] Emitting module CocoaMQTTWebSocket
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:459:1: error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
457 | }
458 |
459 | extension CocoaMQTTWebSocket.StarscreamConnection: WebSocketDelegate {
    | |- error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
    | `- note: add stubs for conformance
460 |     public func didReceive(event: Starscream.WebSocketEvent, client: Starscream.WebSocket) {
    |                 `- note: candidate has non-matching type '(WebSocketEvent, WebSocket) -> ()'
461 |         switch event {
462 |         case .connected(_):
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Starscream/Sources/Starscream/WebSocket.swift:92:10: note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 90 |
 91 | public protocol WebSocketDelegate: AnyObject {
 92 |     func didReceive(event: WebSocketEvent, client: WebSocketClient)
    |          `- note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 93 | }
 94 |
[68/68] Compiling CocoaMQTTWebSocket CocoaMQTTWebSocket.swift
/Users/admin/builder/spi-builder-workspace/Source/CocoaMQTTWebSocket.swift:459:1: error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
457 | }
458 |
459 | extension CocoaMQTTWebSocket.StarscreamConnection: WebSocketDelegate {
    | |- error: type 'CocoaMQTTWebSocket.StarscreamConnection' does not conform to protocol 'WebSocketDelegate'
    | `- note: add stubs for conformance
460 |     public func didReceive(event: Starscream.WebSocketEvent, client: Starscream.WebSocket) {
    |                 `- note: candidate has non-matching type '(WebSocketEvent, WebSocket) -> ()'
461 |         switch event {
462 |         case .connected(_):
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Starscream/Sources/Starscream/WebSocket.swift:92:10: note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 90 |
 91 | public protocol WebSocketDelegate: AnyObject {
 92 |     func didReceive(event: WebSocketEvent, client: WebSocketClient)
    |          `- note: protocol requires function 'didReceive(event:client:)' with type '(WebSocketEvent, any WebSocketClient) -> ()'
 93 | }
 94 |
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 FAILURE 6.1 macosSpm