The Swift Package Index logo.Swift Package Index

Build Information

Successful build of AppSyncRealTimeClient, reference main (57b27d), with Swift 6.1 for macOS (SPM) on 10 Apr 2026 01:37:35 UTC.

Swift 6 data race errors: 5

Build Command

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

Build Log

   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:18:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
18 |             _ = await previousTask?.result
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
19 |             return try await block()
20 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:23: warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                       `- warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:44:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
42 |         AppSyncLogger.verbose("[StarscreamAdapter] websocketDidConnect: websocket has been connected.")
43 |         serialQueue.async {
44 |             self._isConnected = true
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
45 |             self.delegate?.websocketDidConnect(provider: self)
46 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:54:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
52 |         )
53 |         serialQueue.async {
54 |             self._isConnected = false
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
55 |             self.delegate?.websocketDidDisconnect(provider: self, error: error)
56 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:50:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 48 |             urlRequest.setValue(protocolHeaderValue, forHTTPHeaderField: "Sec-WebSocket-Protocol")
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 51 |             self.delegate = delegate
 52 |             self.socket?.delegate = self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:51:29: warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
 51 |             self.delegate = delegate
    |                             `- warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 52 |             self.socket?.delegate = self
 53 |             self.socket?.callbackQueue = self.callbackQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/AppSyncWebsocketProvider.swift:31:17: note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
29 |
30 | /// Delegate method to get callbacks on websocket provider connection
31 | public protocol AppSyncWebsocketDelegate: AnyObject {
   |                 `- note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
32 |
33 |     func websocketDidConnect(provider: AppSyncWebsocketProvider)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:62:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 60 |         serialQueue.async {
 61 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.disconnect")
 62 |             self.socket?.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 63 |             self.socket = nil
 64 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:70:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 68 |         serialQueue.async {
 69 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.write - \(message)")
 70 |             self.socket?.write(string: message)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 71 |         }
 72 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:29: warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                             `- warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
   |                       `- note: closure captures 'previousTask' which is accessible to 'self'-isolated code
19 |             return try await block()
20 |         }
[59/76] Compiling AppSyncRealTimeClient AppSyncWebsocketProvider.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:14:17: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
   |                 `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:18:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
18 |             _ = await previousTask?.result
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
19 |             return try await block()
20 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:23: warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                       `- warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:44:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
42 |         AppSyncLogger.verbose("[StarscreamAdapter] websocketDidConnect: websocket has been connected.")
43 |         serialQueue.async {
44 |             self._isConnected = true
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
45 |             self.delegate?.websocketDidConnect(provider: self)
46 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:54:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
52 |         )
53 |         serialQueue.async {
54 |             self._isConnected = false
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
55 |             self.delegate?.websocketDidDisconnect(provider: self, error: error)
56 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:50:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 48 |             urlRequest.setValue(protocolHeaderValue, forHTTPHeaderField: "Sec-WebSocket-Protocol")
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 51 |             self.delegate = delegate
 52 |             self.socket?.delegate = self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:51:29: warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
 51 |             self.delegate = delegate
    |                             `- warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 52 |             self.socket?.delegate = self
 53 |             self.socket?.callbackQueue = self.callbackQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/AppSyncWebsocketProvider.swift:31:17: note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
29 |
30 | /// Delegate method to get callbacks on websocket provider connection
31 | public protocol AppSyncWebsocketDelegate: AnyObject {
   |                 `- note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
32 |
33 |     func websocketDidConnect(provider: AppSyncWebsocketProvider)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:62:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 60 |         serialQueue.async {
 61 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.disconnect")
 62 |             self.socket?.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 63 |             self.socket = nil
 64 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:70:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 68 |         serialQueue.async {
 69 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.write - \(message)")
 70 |             self.socket?.write(string: message)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 71 |         }
 72 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:29: warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                             `- warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
   |                       `- note: closure captures 'previousTask' which is accessible to 'self'-isolated code
19 |             return try await block()
20 |         }
[60/76] Compiling AppSyncRealTimeClient StarscreamAdapter+Delegate.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:14:17: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
   |                 `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:18:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
18 |             _ = await previousTask?.result
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
19 |             return try await block()
20 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:23: warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                       `- warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:44:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
42 |         AppSyncLogger.verbose("[StarscreamAdapter] websocketDidConnect: websocket has been connected.")
43 |         serialQueue.async {
44 |             self._isConnected = true
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
45 |             self.delegate?.websocketDidConnect(provider: self)
46 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:54:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
52 |         )
53 |         serialQueue.async {
54 |             self._isConnected = false
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
55 |             self.delegate?.websocketDidDisconnect(provider: self, error: error)
56 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:50:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 48 |             urlRequest.setValue(protocolHeaderValue, forHTTPHeaderField: "Sec-WebSocket-Protocol")
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 51 |             self.delegate = delegate
 52 |             self.socket?.delegate = self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:51:29: warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
 51 |             self.delegate = delegate
    |                             `- warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 52 |             self.socket?.delegate = self
 53 |             self.socket?.callbackQueue = self.callbackQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/AppSyncWebsocketProvider.swift:31:17: note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
29 |
30 | /// Delegate method to get callbacks on websocket provider connection
31 | public protocol AppSyncWebsocketDelegate: AnyObject {
   |                 `- note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
32 |
33 |     func websocketDidConnect(provider: AppSyncWebsocketProvider)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:62:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 60 |         serialQueue.async {
 61 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.disconnect")
 62 |             self.socket?.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 63 |             self.socket = nil
 64 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:70:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 68 |         serialQueue.async {
 69 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.write - \(message)")
 70 |             self.socket?.write(string: message)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 71 |         }
 72 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:29: warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                             `- warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
   |                       `- note: closure captures 'previousTask' which is accessible to 'self'-isolated code
19 |             return try await block()
20 |         }
[61/76] Compiling AppSyncRealTimeClient StarscreamAdapter.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:14:17: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
   |                 `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:24: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                        `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
19 |             return try await block()
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:18:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
18 |             _ = await previousTask?.result
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
19 |             return try await block()
20 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: type 'Success' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:23: warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                       `- warning: non-sendable type 'Task<Success, any Error>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:21:37: warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
11 |
12 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
13 | actor TaskQueue<Success> {
   |                 `- note: consider making generic parameter 'Success' conform to the 'Sendable' protocol
14 |     private var previousTask: Task<Success, Error>?
15 |
   :
19 |             return try await block()
20 |         }
21 |         _ = try await previousTask?.value
   |                                     `- warning: non-sendable type 'Success' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
22 |     }
23 |
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:44:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
42 |         AppSyncLogger.verbose("[StarscreamAdapter] websocketDidConnect: websocket has been connected.")
43 |         serialQueue.async {
44 |             self._isConnected = true
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
45 |             self.delegate?.websocketDidConnect(provider: self)
46 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter+Delegate.swift:54:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
52 |         )
53 |         serialQueue.async {
54 |             self._isConnected = false
   |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
55 |             self.delegate?.websocketDidDisconnect(provider: self, error: error)
56 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:11:14: note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:50:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 48 |             urlRequest.setValue(protocolHeaderValue, forHTTPHeaderField: "Sec-WebSocket-Protocol")
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 51 |             self.delegate = delegate
 52 |             self.socket?.delegate = self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:51:29: warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 49 |
 50 |             self.socket = WebSocket(request: urlRequest)
 51 |             self.delegate = delegate
    |                             `- warning: capture of 'delegate' with non-sendable type '(any AppSyncWebsocketDelegate)?' in a '@Sendable' closure
 52 |             self.socket?.delegate = self
 53 |             self.socket?.callbackQueue = self.callbackQueue
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/AppSyncWebsocketProvider.swift:31:17: note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
29 |
30 | /// Delegate method to get callbacks on websocket provider connection
31 | public protocol AppSyncWebsocketDelegate: AnyObject {
   |                 `- note: protocol 'AppSyncWebsocketDelegate' does not conform to the 'Sendable' protocol
32 |
33 |     func websocketDidConnect(provider: AppSyncWebsocketProvider)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:62:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 60 |         serialQueue.async {
 61 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.disconnect")
 62 |             self.socket?.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 63 |             self.socket = nil
 64 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Websocket/Starscream/StarscreamAdapter.swift:70:13: warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
  9 | import Starscream
 10 |
 11 | public class StarscreamAdapter: AppSyncWebsocketProvider {
    |              `- note: class 'StarscreamAdapter' does not conform to the 'Sendable' protocol
 12 |     let serialQueue: DispatchQueue
 13 |     private let callbackQueue: DispatchQueue
    :
 68 |         serialQueue.async {
 69 |             AppSyncLogger.verbose("[StarscreamAdapter] socket.write - \(message)")
 70 |             self.socket?.write(string: message)
    |             `- warning: capture of 'self' with non-sendable type 'StarscreamAdapter' in a '@Sendable' closure
 71 |         }
 72 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/Support/TaskQueue.swift:17:29: warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
15 |
16 |     func sync(block: @Sendable @escaping () async throws -> Success) async throws {
17 |         previousTask = Task { [previousTask] in
   |                             `- warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
18 |             _ = await previousTask?.result
   |                       `- note: closure captures 'previousTask' which is accessible to 'self'-isolated code
19 |             return try await block()
20 |         }
[62/76] Compiling AppSyncRealTimeClient ConnectivityPath.swift
[63/76] Compiling AppSyncRealTimeClient APIKeyAuthInterceptor.swift
[64/76] Compiling AppSyncRealTimeClient OIDCAuthInterceptor.swift
[65/76] Compiling AppSyncRealTimeClient OIDCAuthInterceptorAsync.swift
[66/76] Compiling AppSyncRealTimeClient RealtimeGatewayURLInterceptor.swift
[67/76] Compiling AppSyncRealTimeClient ConnectionProviderFactory.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:17:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
15 |         completion: @escaping (AppSyncConnectionRequest) -> Void
16 |     ) {
17 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
18 |         completion(result)
19 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:29:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
27 |         completion: @escaping (AppSyncMessage) -> Void
28 |     ) {
29 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
30 |         completion(result)
31 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:41:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
39 |         completion: @escaping (AppSyncConnectionRequest) -> Void
40 |     ) {
41 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
42 |         completion(result)
43 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:53:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
51 |         completion: @escaping (AppSyncMessage) -> Void
52 |     ) {
53 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
54 |         completion(result)
55 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:70:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
68 |         // A new instance is required each time a monitor is started
69 |         let monitor = NWPathMonitor()
70 |         monitor.pathUpdateHandler = didUpdate(path:)
   |                                   `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
71 |         monitor.start(queue: queue)
72 |         self.monitor = monitor
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:90:13: warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
88 |         let connectivityPath = ConnectivityPath(path: path)
89 |         connectivityUpdatesQueue.async {
90 |             onConnectivityUpdates(connectivityPath)
   |             |- warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
91 |         }
92 |     }
[68/76] Compiling AppSyncRealTimeClient InterceptableConnection+Default.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:17:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
15 |         completion: @escaping (AppSyncConnectionRequest) -> Void
16 |     ) {
17 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
18 |         completion(result)
19 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:29:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
27 |         completion: @escaping (AppSyncMessage) -> Void
28 |     ) {
29 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
30 |         completion(result)
31 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:41:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
39 |         completion: @escaping (AppSyncConnectionRequest) -> Void
40 |     ) {
41 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
42 |         completion(result)
43 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:53:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
51 |         completion: @escaping (AppSyncMessage) -> Void
52 |     ) {
53 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
54 |         completion(result)
55 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:70:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
68 |         // A new instance is required each time a monitor is started
69 |         let monitor = NWPathMonitor()
70 |         monitor.pathUpdateHandler = didUpdate(path:)
   |                                   `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
71 |         monitor.start(queue: queue)
72 |         self.monitor = monitor
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:90:13: warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
88 |         let connectivityPath = ConnectivityPath(path: path)
89 |         connectivityUpdatesQueue.async {
90 |             onConnectivityUpdates(connectivityPath)
   |             |- warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
91 |         }
92 |     }
[69/76] Compiling AppSyncRealTimeClient InterceptableConnection.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:17:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
15 |         completion: @escaping (AppSyncConnectionRequest) -> Void
16 |     ) {
17 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
18 |         completion(result)
19 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:29:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
27 |         completion: @escaping (AppSyncMessage) -> Void
28 |     ) {
29 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
30 |         completion(result)
31 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:41:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
39 |         completion: @escaping (AppSyncConnectionRequest) -> Void
40 |     ) {
41 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
42 |         completion(result)
43 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:53:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
51 |         completion: @escaping (AppSyncMessage) -> Void
52 |     ) {
53 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
54 |         completion(result)
55 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:70:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
68 |         // A new instance is required each time a monitor is started
69 |         let monitor = NWPathMonitor()
70 |         monitor.pathUpdateHandler = didUpdate(path:)
   |                                   `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
71 |         monitor.start(queue: queue)
72 |         self.monitor = monitor
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:90:13: warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
88 |         let connectivityPath = ConnectivityPath(path: path)
89 |         connectivityUpdatesQueue.async {
90 |             onConnectivityUpdates(connectivityPath)
   |             |- warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
91 |         }
92 |     }
[70/76] Compiling AppSyncRealTimeClient InterceptableConnectionAsync.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:17:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
15 |         completion: @escaping (AppSyncConnectionRequest) -> Void
16 |     ) {
17 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
18 |         completion(result)
19 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:29:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
27 |         completion: @escaping (AppSyncMessage) -> Void
28 |     ) {
29 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
30 |         completion(result)
31 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:41:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
39 |         completion: @escaping (AppSyncConnectionRequest) -> Void
40 |     ) {
41 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
42 |         completion(result)
43 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:53:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
51 |         completion: @escaping (AppSyncMessage) -> Void
52 |     ) {
53 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
54 |         completion(result)
55 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:70:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
68 |         // A new instance is required each time a monitor is started
69 |         let monitor = NWPathMonitor()
70 |         monitor.pathUpdateHandler = didUpdate(path:)
   |                                   `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
71 |         monitor.start(queue: queue)
72 |         self.monitor = monitor
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:90:13: warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
88 |         let connectivityPath = ConnectivityPath(path: path)
89 |         connectivityUpdatesQueue.async {
90 |             onConnectivityUpdates(connectivityPath)
   |             |- warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
91 |         }
92 |     }
[71/76] Compiling AppSyncRealTimeClient ConnectivityMonitor.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:17:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
15 |         completion: @escaping (AppSyncConnectionRequest) -> Void
16 |     ) {
17 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptableAsync or completion handler flavor
18 |         completion(result)
19 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:29:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
27 |         completion: @escaping (AppSyncMessage) -> Void
28 |     ) {
29 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptableAsync or completion handler flavor
30 |         completion(result)
31 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:41:22: warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
39 |         completion: @escaping (AppSyncConnectionRequest) -> Void
40 |     ) {
41 |         let result = interceptConnection(request, for: endpoint)
   |                      `- warning: 'interceptConnection(_:for:)' is deprecated: Use the async version under ConnectionInterceptorAsync or completion handler flavor
42 |         completion(result)
43 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/InterceptableConnection+Default.swift:53:22: warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
51 |         completion: @escaping (AppSyncMessage) -> Void
52 |     ) {
53 |         let result = interceptMessage(message, for: endpoint)
   |                      `- warning: 'interceptMessage(_:for:)' is deprecated: Use the async version under MessageInterceptorAsync or completion handler flavor
54 |         completion(result)
55 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:70:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
68 |         // A new instance is required each time a monitor is started
69 |         let monitor = NWPathMonitor()
70 |         monitor.pathUpdateHandler = didUpdate(path:)
   |                                   `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
71 |         monitor.start(queue: queue)
72 |         self.monitor = monitor
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectivityMonitor/ConnectivityMonitor.swift:90:13: warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
88 |         let connectivityPath = ConnectivityPath(path: path)
89 |         connectivityUpdatesQueue.async {
90 |             onConnectivityUpdates(connectivityPath)
   |             |- warning: capture of 'onConnectivityUpdates' with non-sendable type 'ConnectivityUpdates' (aka '(ConnectivityPath) -> ()') in a '@Sendable' closure
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
91 |         }
92 |     }
[72/76] Compiling AppSyncRealTimeClient RealtimeConnectionProvider+Websocket.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:22:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 20 |     public func websocketDidDisconnect(provider: AppSyncWebsocketProvider, error: Error?) {
 21 |         connectionQueue.async { [weak self] in
 22 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 23 |                 return
 24 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:53: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                                                     `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:105:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
103 |     public func connect() {
104 |         connectionQueue.async { [weak self] in
105 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
106 |                 return
107 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:129:21: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
127 |
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
    |                     `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
130 |                         urlRequest: urlRequest,
131 |                         protocols: ["graphql-ws"],
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:130:37: warning: reference to captured var 'urlRequest' in concurrently-executing code
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
130 |                         urlRequest: urlRequest,
    |                                     `- warning: reference to captured var 'urlRequest' in concurrently-executing code
131 |                         protocols: ["graphql-ws"],
132 |                         delegate: self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:142:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
140 |
141 |         connectionQueue.async { [weak self] in
142 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
143 |                 return
144 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:152:35: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
150 |                 return
151 |             }
152 |             self.interceptMessage(message, for: url) { signedMessage in
    |                                   `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
153 |                 let jsonEncoder = JSONEncoder()
154 |                 do {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:157:75: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
155 |                     let jsonData = try jsonEncoder.encode(signedMessage)
156 |                     guard let jsonString = String(data: jsonData, encoding: .utf8) else {
157 |                         let jsonError = ConnectionProviderError.jsonParse(message.id, nil)
    |                                                                           `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
158 |                         self.updateCallback(event: .error(jsonError))
159 |                         return
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:179:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
177 |     public func disconnect() {
178 |         connectionQueue.async {
179 |             self.websocket.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
180 |             self.invalidateStaleConnectionTimer()
181 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:43: warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |                                           |- warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
    |                                           `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:192:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
190 |     public func removeListener(identifier: String) {
191 |         connectionQueue.async { [weak self] in
192 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
193 |                 return
194 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:221:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
219 |     func updateCallback(event: ConnectionProviderEvent) {
220 |         connectionQueue.async { [weak self] in
221 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
222 |                 return
223 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:17: warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                 |- warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
[73/76] Compiling AppSyncRealTimeClient RealtimeConnectionProvider.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:22:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 20 |     public func websocketDidDisconnect(provider: AppSyncWebsocketProvider, error: Error?) {
 21 |         connectionQueue.async { [weak self] in
 22 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 23 |                 return
 24 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:53: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                                                     `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:105:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
103 |     public func connect() {
104 |         connectionQueue.async { [weak self] in
105 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
106 |                 return
107 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:129:21: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
127 |
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
    |                     `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
130 |                         urlRequest: urlRequest,
131 |                         protocols: ["graphql-ws"],
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:130:37: warning: reference to captured var 'urlRequest' in concurrently-executing code
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
130 |                         urlRequest: urlRequest,
    |                                     `- warning: reference to captured var 'urlRequest' in concurrently-executing code
131 |                         protocols: ["graphql-ws"],
132 |                         delegate: self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:142:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
140 |
141 |         connectionQueue.async { [weak self] in
142 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
143 |                 return
144 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:152:35: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
150 |                 return
151 |             }
152 |             self.interceptMessage(message, for: url) { signedMessage in
    |                                   `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
153 |                 let jsonEncoder = JSONEncoder()
154 |                 do {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:157:75: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
155 |                     let jsonData = try jsonEncoder.encode(signedMessage)
156 |                     guard let jsonString = String(data: jsonData, encoding: .utf8) else {
157 |                         let jsonError = ConnectionProviderError.jsonParse(message.id, nil)
    |                                                                           `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
158 |                         self.updateCallback(event: .error(jsonError))
159 |                         return
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:179:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
177 |     public func disconnect() {
178 |         connectionQueue.async {
179 |             self.websocket.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
180 |             self.invalidateStaleConnectionTimer()
181 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:43: warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |                                           |- warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
    |                                           `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:192:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
190 |     public func removeListener(identifier: String) {
191 |         connectionQueue.async { [weak self] in
192 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
193 |                 return
194 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:221:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
219 |     func updateCallback(event: ConnectionProviderEvent) {
220 |         connectionQueue.async { [weak self] in
221 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
222 |                 return
223 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:17: warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                 |- warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
[74/76] Compiling AppSyncRealTimeClient RealtimeConnectionProviderResponse.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:22:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 20 |     public func websocketDidDisconnect(provider: AppSyncWebsocketProvider, error: Error?) {
 21 |         connectionQueue.async { [weak self] in
 22 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 23 |                 return
 24 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:53: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                                                     `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:105:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
103 |     public func connect() {
104 |         connectionQueue.async { [weak self] in
105 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
106 |                 return
107 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:129:21: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
127 |
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
    |                     `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
130 |                         urlRequest: urlRequest,
131 |                         protocols: ["graphql-ws"],
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:130:37: warning: reference to captured var 'urlRequest' in concurrently-executing code
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
130 |                         urlRequest: urlRequest,
    |                                     `- warning: reference to captured var 'urlRequest' in concurrently-executing code
131 |                         protocols: ["graphql-ws"],
132 |                         delegate: self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:142:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
140 |
141 |         connectionQueue.async { [weak self] in
142 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
143 |                 return
144 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:152:35: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
150 |                 return
151 |             }
152 |             self.interceptMessage(message, for: url) { signedMessage in
    |                                   `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
153 |                 let jsonEncoder = JSONEncoder()
154 |                 do {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:157:75: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
155 |                     let jsonData = try jsonEncoder.encode(signedMessage)
156 |                     guard let jsonString = String(data: jsonData, encoding: .utf8) else {
157 |                         let jsonError = ConnectionProviderError.jsonParse(message.id, nil)
    |                                                                           `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
158 |                         self.updateCallback(event: .error(jsonError))
159 |                         return
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:179:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
177 |     public func disconnect() {
178 |         connectionQueue.async {
179 |             self.websocket.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
180 |             self.invalidateStaleConnectionTimer()
181 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:43: warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |                                           |- warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
    |                                           `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:192:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
190 |     public func removeListener(identifier: String) {
191 |         connectionQueue.async { [weak self] in
192 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
193 |                 return
194 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:221:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
219 |     func updateCallback(event: ConnectionProviderEvent) {
220 |         connectionQueue.async { [weak self] in
221 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
222 |                 return
223 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:17: warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                 |- warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
[75/76] Compiling AppSyncRealTimeClient RealtimeConnectionProviderAsync+ConnectionInterceptableAsync.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:22:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 20 |     public func websocketDidDisconnect(provider: AppSyncWebsocketProvider, error: Error?) {
 21 |         connectionQueue.async { [weak self] in
 22 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 23 |                 return
 24 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:53: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                                                     `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:105:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
103 |     public func connect() {
104 |         connectionQueue.async { [weak self] in
105 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
106 |                 return
107 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:129:21: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
127 |
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
    |                     `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
130 |                         urlRequest: urlRequest,
131 |                         protocols: ["graphql-ws"],
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:130:37: warning: reference to captured var 'urlRequest' in concurrently-executing code
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
130 |                         urlRequest: urlRequest,
    |                                     `- warning: reference to captured var 'urlRequest' in concurrently-executing code
131 |                         protocols: ["graphql-ws"],
132 |                         delegate: self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:142:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
140 |
141 |         connectionQueue.async { [weak self] in
142 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
143 |                 return
144 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:152:35: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
150 |                 return
151 |             }
152 |             self.interceptMessage(message, for: url) { signedMessage in
    |                                   `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
153 |                 let jsonEncoder = JSONEncoder()
154 |                 do {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:157:75: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
155 |                     let jsonData = try jsonEncoder.encode(signedMessage)
156 |                     guard let jsonString = String(data: jsonData, encoding: .utf8) else {
157 |                         let jsonError = ConnectionProviderError.jsonParse(message.id, nil)
    |                                                                           `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
158 |                         self.updateCallback(event: .error(jsonError))
159 |                         return
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:179:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
177 |     public func disconnect() {
178 |         connectionQueue.async {
179 |             self.websocket.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
180 |             self.invalidateStaleConnectionTimer()
181 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:43: warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |                                           |- warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
    |                                           `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:192:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
190 |     public func removeListener(identifier: String) {
191 |         connectionQueue.async { [weak self] in
192 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
193 |                 return
194 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:221:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
219 |     func updateCallback(event: ConnectionProviderEvent) {
220 |         connectionQueue.async { [weak self] in
221 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
222 |                 return
223 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:17: warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                 |- warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
[76/76] Compiling AppSyncRealTimeClient RealtimeConnectionProviderAsync+MessageInterceptableAsync.swift
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:22:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 20 |     public func websocketDidDisconnect(provider: AppSyncWebsocketProvider, error: Error?) {
 21 |         connectionQueue.async { [weak self] in
 22 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 23 |                 return
 24 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:53:53: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 51 |             AppSyncLogger.debug("[RealtimeConnectionProvider] received connectionAck")
 52 |             connectionQueue.async { [weak self] in
 53 |                 self?.handleConnectionAck(response: response)
    |                                                     `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 54 |             }
 55 |         case .error:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:58:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 56 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 57 |             connectionQueue.async { [weak self] in
 58 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 59 |             }
 60 |         case .connectionError:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:17: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                 `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:13:14: note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift:63:45: warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 61 |             AppSyncLogger.verbose("[RealtimeConnectionProvider] received error")
 62 |             connectionQueue.async { [weak self] in
 63 |                 self?.handleError(response: response)
    |                                             `- warning: capture of 'response' with non-sendable type 'RealtimeConnectionProviderResponse' in a '@Sendable' closure
 64 |             }
 65 |         case .subscriptionAck, .unsubscriptionAck, .data:
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift:12:8: note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 10 | /// More information about the response can be found here
 11 | /// https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html#connection-init-message
 12 | struct RealtimeConnectionProviderResponse {
    |        `- note: consider making struct 'RealtimeConnectionProviderResponse' conform to the 'Sendable' protocol
 13 |
 14 |     /// Subscription Identifier
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:105:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
103 |     public func connect() {
104 |         connectionQueue.async { [weak self] in
105 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
106 |                 return
107 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:129:21: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
127 |
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
    |                     `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
130 |                         urlRequest: urlRequest,
131 |                         protocols: ["graphql-ws"],
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:130:37: warning: reference to captured var 'urlRequest' in concurrently-executing code
128 |                 DispatchQueue.global().async {
129 |                     self.websocket.connect(
130 |                         urlRequest: urlRequest,
    |                                     `- warning: reference to captured var 'urlRequest' in concurrently-executing code
131 |                         protocols: ["graphql-ws"],
132 |                         delegate: self
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:142:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
140 |
141 |         connectionQueue.async { [weak self] in
142 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
143 |                 return
144 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:152:35: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
150 |                 return
151 |             }
152 |             self.interceptMessage(message, for: url) { signedMessage in
    |                                   `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in a '@Sendable' closure
153 |                 let jsonEncoder = JSONEncoder()
154 |                 do {
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:157:75: warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
155 |                     let jsonData = try jsonEncoder.encode(signedMessage)
156 |                     guard let jsonString = String(data: jsonData, encoding: .utf8) else {
157 |                         let jsonError = ConnectionProviderError.jsonParse(message.id, nil)
    |                                                                           `- warning: capture of 'message' with non-sendable type 'AppSyncMessage' in an isolated closure; this is an error in the Swift 6 language mode
158 |                         self.updateCallback(event: .error(jsonError))
159 |                         return
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppSyncMessage.swift:11:15: note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
 9 |
10 | /// Struct that holds the message to be send to the connection
11 | public struct AppSyncMessage {
   |               `- note: consider making struct 'AppSyncMessage' conform to the 'Sendable' protocol
12 |
13 |     /// Identifier for the message.
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:179:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
177 |     public func disconnect() {
178 |         connectionQueue.async {
179 |             self.websocket.disconnect()
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider' in a '@Sendable' closure
180 |             self.invalidateStaleConnectionTimer()
181 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:13: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |             `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:186:43: warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
184 |     public func addListener(identifier: String, callback: @escaping ConnectionProviderCallback) {
185 |         connectionQueue.async { [weak self] in
186 |             self?.listeners[identifier] = callback
    |                                           |- warning: capture of 'callback' with non-sendable type 'ConnectionProviderCallback' (aka '(ConnectionProviderEvent) -> ()') in a '@Sendable' closure
    |                                           `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
187 |         }
188 |     }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:192:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
190 |     public func removeListener(identifier: String) {
191 |         connectionQueue.async { [weak self] in
192 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
193 |                 return
194 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:221:30: warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
 11 | /// Appsync Real time connection that connects to subscriptions
 12 | /// through websocket.
 13 | public class RealtimeConnectionProvider: ConnectionProvider {
    |              `- note: class 'RealtimeConnectionProvider' does not conform to the 'Sendable' protocol
 14 |     /// Maximum number of seconds a connection may go without receiving a keep alive
 15 |     /// message before we consider it stale and force a disconnect
    :
219 |     func updateCallback(event: ConnectionProviderEvent) {
220 |         connectionQueue.async { [weak self] in
221 |             guard let self = self else {
    |                              `- warning: capture of 'self' with non-sendable type 'RealtimeConnectionProvider?' in a '@Sendable' closure
222 |                 return
223 |             }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:17: warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                 |- warning: capture of 'allListeners' with non-sendable type '[Dictionary<String, ConnectionProviderCallback>.Values.Element]' (aka 'Array<(ConnectionProviderEvent) -> ()>') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in a '@Sendable' closure
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift:226:43: warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
224 |             let allListeners = Array(self.listeners.values)
225 |             self.serialCallbackQueue.async {
226 |                 allListeners.forEach { $0(event) }
    |                                           `- warning: capture of 'event' with non-sendable type 'ConnectionProviderEvent' in an isolated closure; this is an error in the Swift 6 language mode
227 |             }
228 |         }
/Users/admin/builder/spi-builder-workspace/AppSyncRealTimeClient/ConnectionProvider/ConnectionProvider.swift:25:13: note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
23 | public typealias ConnectionProviderCallback = (ConnectionProviderEvent) -> Void
24 |
25 | public enum ConnectionProviderEvent {
   |             `- note: consider making enum 'ConnectionProviderEvent' conform to the 'Sendable' protocol
26 |
27 |     case connection(ConnectionState)
Build complete! (9.76s)
Fetching https://github.com/daltoniam/Starscream
[1/5108] Fetching starscream
Fetched https://github.com/daltoniam/Starscream from cache (1.17s)
Computing version for https://github.com/daltoniam/Starscream
Computed https://github.com/daltoniam/Starscream at 4.0.8 (1.80s)
Creating working copy for https://github.com/daltoniam/Starscream
Working copy of https://github.com/daltoniam/Starscream resolved at 4.0.8
warning: 'starscream': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/.build/checkouts/Starscream/Sources/Info.plist
Build complete.
{
  "dependencies" : [
    {
      "identity" : "starscream",
      "requirement" : {
        "exact" : [
          "4.0.8"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/daltoniam/Starscream"
    }
  ],
  "manifest_display_name" : "AppSyncRealTimeClient",
  "name" : "AppSyncRealTimeClient",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "AppSyncRealTimeClient",
      "targets" : [
        "AppSyncRealTimeClient"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "AppSyncRealTimeClientTests",
      "module_type" : "SwiftTarget",
      "name" : "AppSyncRealTimeClientTests",
      "path" : "AppSyncRealTimeClientTests",
      "sources" : [
        "Connection/AppSyncSubscriptionConnectionErrorHandlerTests.swift",
        "Connection/AppSyncSubscriptionConnectionTests.swift",
        "ConnectionProvider/AppSyncRealTimeConnection/RealTimeConnectionProviderResponseTests.swift",
        "ConnectionProvider/ConnectionProviderAsync/ConnectionProviderAsyncTests.swift",
        "ConnectionProvider/ConnectionProviderAsync/RealtimeConnectionProviderAsyncTestBase.swift",
        "ConnectionProvider/ConnectionProviderHandleErrorTests.swift",
        "ConnectionProvider/ConnectionProviderStaleConnectionTests.swift",
        "ConnectionProvider/ConnectionProviderTests.swift",
        "ConnectionProvider/RealtimeConnectionProviderTestBase.swift",
        "ConnectivityMonitor/ConnectivityMonitorTests.swift",
        "Interceptor/APIKeyAuthInterceptorTests.swift",
        "Interceptor/AppSyncJSONHelperTests.swift",
        "Interceptor/AppSyncURLHelperTests.swift",
        "Interceptor/OIDCAuthInterceptorTests.swift",
        "Mocks/MockConnectionProvider.swift",
        "Mocks/MockConnectivityMonitor.swift",
        "Mocks/MockWebsocketProvider.swift",
        "Support/CountdownTimerTests.swift",
        "Support/RealtimeGatewayURLInterceptorTests.swift",
        "TestSupport/Error+Extension.swift"
      ],
      "target_dependencies" : [
        "AppSyncRealTimeClient"
      ],
      "type" : "test"
    },
    {
      "c99name" : "AppSyncRealTimeClient",
      "module_type" : "SwiftTarget",
      "name" : "AppSyncRealTimeClient",
      "path" : "AppSyncRealTimeClient",
      "product_dependencies" : [
        "Starscream"
      ],
      "product_memberships" : [
        "AppSyncRealTimeClient"
      ],
      "sources" : [
        "AWSAppSyncRealTimeClient.swift",
        "Connection/AppSyncConnection/AppSyncSubscriptionConnection+Connection.swift",
        "Connection/AppSyncConnection/AppSyncSubscriptionConnection+DataHandler.swift",
        "Connection/AppSyncConnection/AppSyncSubscriptionConnection+ErrorHandler.swift",
        "Connection/AppSyncConnection/AppSyncSubscriptionConnection.swift",
        "Connection/RetryableConnection.swift",
        "Connection/SubscriptionConnection.swift",
        "Connection/SubscriptionItem.swift",
        "ConnectionProvider/AppSyncConnectionRequest.swift",
        "ConnectionProvider/AppSyncMessage+Encodable.swift",
        "ConnectionProvider/AppSyncMessage.swift",
        "ConnectionProvider/AppSyncResponse.swift",
        "ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+ConnectionInterceptable.swift",
        "ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+MessageInterceptable.swift",
        "ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+StaleConnection.swift",
        "ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider+Websocket.swift",
        "ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProvider.swift",
        "ConnectionProvider/AppsyncRealtimeConnection/RealtimeConnectionProviderResponse.swift",
        "ConnectionProvider/AppsyncRealtimeConnectionAsync/RealtimeConnectionProviderAsync+ConnectionInterceptableAsync.swift",
        "ConnectionProvider/AppsyncRealtimeConnectionAsync/RealtimeConnectionProviderAsync+MessageInterceptableAsync.swift",
        "ConnectionProvider/AppsyncRealtimeConnectionAsync/RealtimeConnectionProviderAsync+StaleConnection.swift",
        "ConnectionProvider/AppsyncRealtimeConnectionAsync/RealtimeConnectionProviderAsync+Websocket.swift",
        "ConnectionProvider/AppsyncRealtimeConnectionAsync/RealtimeConnectionProviderAsync.swift",
        "ConnectionProvider/ConnectionProvider.swift",
        "ConnectionProvider/ConnectionProviderError.swift",
        "ConnectionProvider/ConnectionProviderFactory.swift",
        "ConnectionProvider/InterceptableConnection+Default.swift",
        "ConnectionProvider/InterceptableConnection.swift",
        "ConnectionProvider/InterceptableConnectionAsync.swift",
        "ConnectivityMonitor/ConnectivityMonitor.swift",
        "ConnectivityMonitor/ConnectivityPath.swift",
        "Interceptor/APIKeyAuthInterceptor.swift",
        "Interceptor/OIDCAuthInterceptor.swift",
        "Interceptor/OIDCAuthInterceptorAsync.swift",
        "Interceptor/RealtimeGatewayURLInterceptor.swift",
        "Support/AppSyncJSONHelper.swift",
        "Support/AppSyncJSONValue.swift",
        "Support/AppSyncLogger.swift",
        "Support/AppSyncURLHelper.swift",
        "Support/AtomicValue.swift",
        "Support/CountdownTimer.swift",
        "Support/OIDCAuthProvider.swift",
        "Support/OIDCAuthProviderAsync.swift",
        "Support/SubscriptionConnectionType.swift",
        "Support/SubscriptionConstants.swift",
        "Support/TaskQueue.swift",
        "Websocket/AppSyncWebsocketProvider.swift",
        "Websocket/Starscream/StarscreamAdapter+Delegate.swift",
        "Websocket/Starscream/StarscreamAdapter.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.