Build Information
Successful build of AwesomeWS, reference 2.4.3 (2c1304
), with Swift 6.0 for Linux on 28 Nov 2024 20:20:02 UTC.
Swift 6 data race errors: 4
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
Build Log
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:50: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:126:17: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
124 | self._on(close: c)
125 | self.on(close: c)
126 | client = nil
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
127 | }
128 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:132:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
133 | self?._on(ping: client)
134 | self?.on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:139:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | self?._on(pong: client)
141 | self?.on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:147:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | guard
146 | let client = client,
147 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | else { return }
149 | guard self.exchangeMode != .binary else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:161:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 | guard
160 | let client = client,
161 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 | else { return }
163 | guard self.exchangeMode != .text else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
[2207/2224] Compiling WS Bindable.swift
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:3:30: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
1 | import Vapor
2 |
3 | public protocol AnyObserver: class, Broadcastable, CustomStringConvertible, Disconnectable, Sendable, Loggable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
4 | var key: String { get }
5 | var path: String { get }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:130:12: warning: 'onPing' is deprecated: Please use `onPing { socket, data in /* … */ }` with the additional `data` parameter.
128 | }
129 |
130 | ws.onPing { [weak self] _ in
| `- warning: 'onPing' is deprecated: Please use `onPing { socket, data in /* … */ }` with the additional `data` parameter.
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:137:12: warning: 'onPong' is deprecated: Please use `onPong { socket, data in /* … */ }` with the additional `data` parameter.
135 | }
136 |
137 | ws.onPong { [weak self] _ in
| `- warning: 'onPong' is deprecated: Please use `onPong { socket, data in /* … */ }` with the additional `data` parameter.
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:103:30: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
101 |
102 | self.application.ws.knownEventLoop.submit { [weak self] in
103 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:105:13: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
103 | guard let self = self else { return }
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 | self._clients.append(c)
107 | }.whenComplete { [weak self] _ in
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:105:13: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
103 | guard let self = self else { return }
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
106 | self._clients.append(c)
107 | }.whenComplete { [weak self] _ in
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:109:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }.whenComplete { [weak self] _ in
108 | guard
109 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
110 | let self = self
111 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:110:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 | guard
109 | let client = client,
110 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 | else { return }
112 | self._on(open: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:109:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
107 | }.whenComplete { [weak self] _ in
108 | guard
109 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
110 | let self = self
111 | else { return }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:118:30: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 |
117 | ws.onClose.whenComplete { [weak self] _ in
118 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in an isolated closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in an isolated closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:50: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:126:17: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
124 | self._on(close: c)
125 | self.on(close: c)
126 | client = nil
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
127 | }
128 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:132:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
133 | self?._on(ping: client)
134 | self?.on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:139:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | self?._on(pong: client)
141 | self?.on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:147:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | guard
146 | let client = client,
147 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | else { return }
149 | guard self.exchangeMode != .binary else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:161:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 | guard
160 | let client = client,
161 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 | else { return }
163 | guard self.exchangeMode != .text else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
[2208/2224] Compiling WS Broadcastable.swift
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:3:30: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
1 | import Vapor
2 |
3 | public protocol AnyObserver: class, Broadcastable, CustomStringConvertible, Disconnectable, Sendable, Loggable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
4 | var key: String { get }
5 | var path: String { get }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:130:12: warning: 'onPing' is deprecated: Please use `onPing { socket, data in /* … */ }` with the additional `data` parameter.
128 | }
129 |
130 | ws.onPing { [weak self] _ in
| `- warning: 'onPing' is deprecated: Please use `onPing { socket, data in /* … */ }` with the additional `data` parameter.
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:137:12: warning: 'onPong' is deprecated: Please use `onPong { socket, data in /* … */ }` with the additional `data` parameter.
135 | }
136 |
137 | ws.onPong { [weak self] _ in
| `- warning: 'onPong' is deprecated: Please use `onPong { socket, data in /* … */ }` with the additional `data` parameter.
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:103:30: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
101 |
102 | self.application.ws.knownEventLoop.submit { [weak self] in
103 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:105:13: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
103 | guard let self = self else { return }
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 | self._clients.append(c)
107 | }.whenComplete { [weak self] _ in
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:105:13: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
103 | guard let self = self else { return }
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
106 | self._clients.append(c)
107 | }.whenComplete { [weak self] _ in
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:109:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }.whenComplete { [weak self] _ in
108 | guard
109 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
110 | let self = self
111 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:110:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 | guard
109 | let client = client,
110 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 | else { return }
112 | self._on(open: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:109:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
107 | }.whenComplete { [weak self] _ in
108 | guard
109 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
110 | let self = self
111 | else { return }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:118:30: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 |
117 | ws.onClose.whenComplete { [weak self] _ in
118 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in an isolated closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in an isolated closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:50: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:126:17: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
124 | self._on(close: c)
125 | self.on(close: c)
126 | client = nil
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
127 | }
128 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:132:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
133 | self?._on(ping: client)
134 | self?.on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:139:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | self?._on(pong: client)
141 | self?.on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:147:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | guard
146 | let client = client,
147 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | else { return }
149 | guard self.exchangeMode != .binary else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:161:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 | guard
160 | let client = client,
161 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 | else { return }
163 | guard self.exchangeMode != .text else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
[2209/2224] Compiling WS Declarativable.swift
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:3:30: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
1 | import Vapor
2 |
3 | public protocol AnyObserver: class, Broadcastable, CustomStringConvertible, Disconnectable, Sendable, Loggable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
4 | var key: String { get }
5 | var path: String { get }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:130:12: warning: 'onPing' is deprecated: Please use `onPing { socket, data in /* … */ }` with the additional `data` parameter.
128 | }
129 |
130 | ws.onPing { [weak self] _ in
| `- warning: 'onPing' is deprecated: Please use `onPing { socket, data in /* … */ }` with the additional `data` parameter.
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:137:12: warning: 'onPong' is deprecated: Please use `onPong { socket, data in /* … */ }` with the additional `data` parameter.
135 | }
136 |
137 | ws.onPong { [weak self] _ in
| `- warning: 'onPong' is deprecated: Please use `onPong { socket, data in /* … */ }` with the additional `data` parameter.
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:103:30: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
101 |
102 | self.application.ws.knownEventLoop.submit { [weak self] in
103 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:105:13: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
103 | guard let self = self else { return }
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 | self._clients.append(c)
107 | }.whenComplete { [weak self] _ in
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:105:13: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
103 | guard let self = self else { return }
104 | let c = Client(self, req, ws, logger: self.logger)
105 | client = c
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
106 | self._clients.append(c)
107 | }.whenComplete { [weak self] _ in
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:109:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }.whenComplete { [weak self] _ in
108 | guard
109 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
110 | let self = self
111 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:110:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 | guard
109 | let client = client,
110 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 | else { return }
112 | self._on(open: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:109:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
107 | }.whenComplete { [weak self] _ in
108 | guard
109 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
110 | let self = self
111 | else { return }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:118:30: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 |
117 | ws.onClose.whenComplete { [weak self] _ in
118 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: capture of 'client' with non-sendable type 'Client?' in an isolated closure; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: capture of 'client' with non-sendable type 'Client?' in an isolated closure; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:120:58: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
118 | guard let self = self else { return }
119 | self.application.ws.knownEventLoop.submit { [weak self] in
120 | self?._clients.removeAll(where: { $0 === client })
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:50: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:122:31: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
120 | self?._clients.removeAll(where: { $0 === client })
121 | }.whenComplete { [weak self] _ in
122 | guard let c = client, let self = self else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
123 | self.logger.info("[⚡️] 🔴 connection closed \(c.id)")
124 | self._on(close: c)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:126:17: warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
124 | self._on(close: c)
125 | self.on(close: c)
126 | client = nil
| `- warning: mutation of captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
127 | }
128 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:132:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
133 | self?._on(ping: client)
134 | self?.on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:131:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
129 |
130 | ws.onPing { [weak self] _ in
131 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
132 | self?.logger.debug("[⚡️] 🏓 ping \(client.id)")
133 | self?._on(ping: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:139:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | self?._on(pong: client)
141 | self?.on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:138:32: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
136 |
137 | ws.onPong { [weak self] _ in
138 | guard let client = client else { return }
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
139 | self?.logger.debug("[⚡️] 🏓 pong \(client.id)")
140 | self?._on(pong: client)
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:147:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | guard
146 | let client = client,
147 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | else { return }
149 | guard self.exchangeMode != .binary else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:146:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
144 | ws.onText { [weak self] _, text in
145 | guard
146 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | let self = self
148 | else { return }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: capture of 'client' with non-sendable type 'Client?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
/host/spi-builder-workspace/Sources/WS/Objects/Client.swift:5:7: note: class 'Client' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | class Client: _AnyClient {
| `- note: class 'Client' does not conform to the 'Sendable' protocol
6 | /// See `AnyClient`
7 | public let id: UUID = .init()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:161:28: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 | guard
160 | let client = client,
161 | let self = self
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 | else { return }
163 | guard self.exchangeMode != .text else {
/host/spi-builder-workspace/Sources/WS/Protocols/AnyObserver.swift:160:30: warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
158 | ws.onBinary { [weak self] _, byteBuffer in
159 | guard
160 | let client = client,
| `- warning: reference to captured var 'client' in concurrently-executing code; this is an error in the Swift 6 language mode
161 | let self = self
162 | else { return }
[2210/2224] Compiling WS Loggable.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:42:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
40 | /// Send as `text`
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
44 | $0.send(text)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:61:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
59 | /// Send as `binary`
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
63 | $0.send(bytes)
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:62:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
63 | $0.send(bytes)
64 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:84:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | /// Send as `binary`
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
86 | $0.send(raw: data, opcode: opcode)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:17: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:32: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 |
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:99:16: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | try encoder.encode(model)
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
100 | return self.eventLoop.future(data)
101 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:104:19: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 | return self.send(data: data).transform(to: data)
103 | }.flatMap {
104 | guard self.exchangeMode != .binary,
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | let text = String(data: $0, encoding: .utf8) else {
106 | return self.eventLoop.future()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:122:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | func _sendPing() -> EventLoopFuture<Void> {
121 | eventLoop.future().map {
122 | self.sockets.forEach { $0.sendPing() }
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | }
124 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:131:33: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
128 |
129 | extension EventLoopFuture: Sendable where Value: Sendable {
130 | public func send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
131 | flatMap { $0.send(text: text) }
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | }
133 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:139:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 | }
137 |
138 | public func send<Data>(data: Data) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
139 | flatMap { $0.send(data: data) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:143:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
142 | public func send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
143 | flatMap { $0.send(data: data, opcode: opcode) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:147:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
146 | public func send<C>(model: C) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
147 | flatMap { $0.send(model: model) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:50: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:155:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
153 |
154 | public func send<T>(event: EID<T>) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
155 | flatMap { $0.send(event: event) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:50: warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:25:34: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
23 | }
24 |
25 | internal protocol _Subscribable: class, Subscribable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
26 | var eventLoop: EventLoop { get }
27 | var clients: [_AnyClient] { get }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:32: warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyClient.swift:5:17: note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | public protocol AnyClient: Broadcastable, Disconnectable, Subscribable, Sendable {
| `- note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
6 | var id: UUID { get }
7 | var application: Application { get }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:21: warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:13: warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
4 | import NIOWebSocket
5 |
6 | public class Broadcaster: Disconnectable, _Disconnectable, Sendable, _Sendable, Subscribable {
| `- note: class 'Broadcaster' does not conform to the 'Sendable' protocol
7 | let eventLoop: EventLoop
8 | var clients: [AnyClient]
:
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:38: warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
[2211/2224] Compiling WS Sendable.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:42:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
40 | /// Send as `text`
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
44 | $0.send(text)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:61:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
59 | /// Send as `binary`
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
63 | $0.send(bytes)
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:62:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
63 | $0.send(bytes)
64 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:84:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | /// Send as `binary`
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
86 | $0.send(raw: data, opcode: opcode)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:17: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:32: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 |
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:99:16: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | try encoder.encode(model)
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
100 | return self.eventLoop.future(data)
101 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:104:19: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 | return self.send(data: data).transform(to: data)
103 | }.flatMap {
104 | guard self.exchangeMode != .binary,
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | let text = String(data: $0, encoding: .utf8) else {
106 | return self.eventLoop.future()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:122:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | func _sendPing() -> EventLoopFuture<Void> {
121 | eventLoop.future().map {
122 | self.sockets.forEach { $0.sendPing() }
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | }
124 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:131:33: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
128 |
129 | extension EventLoopFuture: Sendable where Value: Sendable {
130 | public func send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
131 | flatMap { $0.send(text: text) }
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | }
133 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:139:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 | }
137 |
138 | public func send<Data>(data: Data) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
139 | flatMap { $0.send(data: data) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:143:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
142 | public func send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
143 | flatMap { $0.send(data: data, opcode: opcode) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:147:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
146 | public func send<C>(model: C) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
147 | flatMap { $0.send(model: model) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:50: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:155:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
153 |
154 | public func send<T>(event: EID<T>) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
155 | flatMap { $0.send(event: event) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:50: warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:25:34: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
23 | }
24 |
25 | internal protocol _Subscribable: class, Subscribable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
26 | var eventLoop: EventLoop { get }
27 | var clients: [_AnyClient] { get }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:32: warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyClient.swift:5:17: note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | public protocol AnyClient: Broadcastable, Disconnectable, Subscribable, Sendable {
| `- note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
6 | var id: UUID { get }
7 | var application: Application { get }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:21: warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:13: warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
4 | import NIOWebSocket
5 |
6 | public class Broadcaster: Disconnectable, _Disconnectable, Sendable, _Sendable, Subscribable {
| `- note: class 'Broadcaster' does not conform to the 'Sendable' protocol
7 | let eventLoop: EventLoop
8 | var clients: [AnyClient]
:
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:38: warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
[2212/2224] Compiling WS Subscribable.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:42:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
40 | /// Send as `text`
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
44 | $0.send(text)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:61:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
59 | /// Send as `binary`
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
63 | $0.send(bytes)
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:62:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
63 | $0.send(bytes)
64 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:84:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | /// Send as `binary`
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
86 | $0.send(raw: data, opcode: opcode)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:17: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:32: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 |
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:99:16: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | try encoder.encode(model)
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
100 | return self.eventLoop.future(data)
101 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:104:19: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 | return self.send(data: data).transform(to: data)
103 | }.flatMap {
104 | guard self.exchangeMode != .binary,
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | let text = String(data: $0, encoding: .utf8) else {
106 | return self.eventLoop.future()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:122:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | func _sendPing() -> EventLoopFuture<Void> {
121 | eventLoop.future().map {
122 | self.sockets.forEach { $0.sendPing() }
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | }
124 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:131:33: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
128 |
129 | extension EventLoopFuture: Sendable where Value: Sendable {
130 | public func send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
131 | flatMap { $0.send(text: text) }
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | }
133 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:139:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 | }
137 |
138 | public func send<Data>(data: Data) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
139 | flatMap { $0.send(data: data) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:143:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
142 | public func send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
143 | flatMap { $0.send(data: data, opcode: opcode) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:147:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
146 | public func send<C>(model: C) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
147 | flatMap { $0.send(model: model) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:50: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:155:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
153 |
154 | public func send<T>(event: EID<T>) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
155 | flatMap { $0.send(event: event) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:50: warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:25:34: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
23 | }
24 |
25 | internal protocol _Subscribable: class, Subscribable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
26 | var eventLoop: EventLoop { get }
27 | var clients: [_AnyClient] { get }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:32: warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyClient.swift:5:17: note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | public protocol AnyClient: Broadcastable, Disconnectable, Subscribable, Sendable {
| `- note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
6 | var id: UUID { get }
7 | var application: Application { get }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:21: warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:13: warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
4 | import NIOWebSocket
5 |
6 | public class Broadcaster: Disconnectable, _Disconnectable, Sendable, _Sendable, Subscribable {
| `- note: class 'Broadcaster' does not conform to the 'Sendable' protocol
7 | let eventLoop: EventLoop
8 | var clients: [AnyClient]
:
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:38: warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
[2213/2224] Compiling WS Broadcaster.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:42:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
40 | /// Send as `text`
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
44 | $0.send(text)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: capture of 'text' with non-sendable type 'S' in an isolated closure; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:43:58: warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
32 |
33 | extension _Sendable {
34 | func _send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
35 | /// Send as `binary` instead
36 | if exchangeMode == .binary {
:
41 | return eventLoop.future().map {
42 | self.sockets.forEach {
43 | self.logger.debug("[⚡️] 📤 text: \(text)")
| `- warning: implicit capture of 'text' requires that 'S' conforms to `Sendable`; this is an error in the Swift 6 language mode
44 | $0.send(text)
45 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:61:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
59 | /// Send as `binary`
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
63 | $0.send(bytes)
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:62:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
60 | return eventLoop.future().map {
61 | self.sockets.forEach {
62 | self.logger.debug("[⚡️] 📤 bytes: \(bytes.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
63 | $0.send(bytes)
64 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:84:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | /// Send as `binary`
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
86 | $0.send(raw: data, opcode: opcode)
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: capture of 'data' with non-sendable type 'Data' in an isolated closure; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:85:58: warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
70 | }
71 |
72 | func _send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data: DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
73 | /// Send as `text` instead
74 | if exchangeMode == .text {
:
83 | return eventLoop.future().map {
84 | self.sockets.forEach {
85 | self.logger.debug("[⚡️] 📤 data: \(data.count)")
| `- warning: implicit capture of 'data' requires that 'Data' conforms to `Sendable`; this is an error in the Swift 6 language mode
86 | $0.send(raw: data, opcode: opcode)
87 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:17: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:97:32: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 |
95 | func _send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C: Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
96 | eventLoop.future().flatMapThrowing {
97 | try encoder.encode(model)
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:99:16: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | try encoder.encode(model)
98 | }.flatMap { data -> EventLoopFuture<Data> in
99 | if self.exchangeMode == .text {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
100 | return self.eventLoop.future(data)
101 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:104:19: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 | return self.send(data: data).transform(to: data)
103 | }.flatMap {
104 | guard self.exchangeMode != .binary,
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | let text = String(data: $0, encoding: .utf8) else {
106 | return self.eventLoop.future()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:122:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | func _sendPing() -> EventLoopFuture<Void> {
121 | eventLoop.future().map {
122 | self.sockets.forEach { $0.sendPing() }
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | }
124 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:131:33: warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
128 |
129 | extension EventLoopFuture: Sendable where Value: Sendable {
130 | public func send<S>(text: S) -> EventLoopFuture<Void> where S : Collection, S.Element == Character {
| `- note: consider making generic parameter 'S' conform to the 'Sendable' protocol
131 | flatMap { $0.send(text: text) }
| `- warning: capture of 'text' with non-sendable type 'S' in a `@Sendable` closure; this is an error in the Swift 6 language mode
132 | }
133 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:139:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
136 | }
137 |
138 | public func send<Data>(data: Data) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
139 | flatMap { $0.send(data: data) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:143:33: warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 | }
141 |
142 | public func send<Data>(data: Data, opcode: WebSocketOpcode) -> EventLoopFuture<Void> where Data : DataProtocol {
| `- note: consider making generic parameter 'Data' conform to the 'Sendable' protocol
143 | flatMap { $0.send(data: data, opcode: opcode) }
| `- warning: capture of 'data' with non-sendable type 'Data' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:147:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
144 | }
145 |
146 | public func send<C>(model: C) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
147 | flatMap { $0.send(model: model) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:34: warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
| `- note: consider making generic parameter 'C' conform to the 'Sendable' protocol
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'model' with non-sendable type 'C' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:151:50: warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
149 |
150 | public func send<C>(model: C, encoder: Encoder) -> EventLoopFuture<Void> where C : Encodable {
151 | flatMap { $0.send(model: model, encoder: encoder) }
| `- warning: capture of 'encoder' with non-sendable type 'any Encoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
152 | }
153 |
/host/spi-builder-workspace/Sources/WS/Protocols/Encoder.swift:3:17: note: protocol 'Encoder' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol Encoder {
| `- note: protocol 'Encoder' does not conform to the 'Sendable' protocol
4 | func encode<T>(_ value: T) throws -> Data where T : Encodable
5 | }
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:155:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
153 |
154 | public func send<T>(event: EID<T>) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
155 | flatMap { $0.send(event: event) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:34: warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'event' with non-sendable type 'EID<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Models/EID.swift:11:15: note: consider making generic struct 'EID' conform to the 'Sendable' protocol
9 | /// }
10 | /// ```
11 | public struct EID<P: Codable>: Equatable, Hashable, CustomStringConvertible, ExpressibleByStringLiteral {
| `- note: consider making generic struct 'EID' conform to the 'Sendable' protocol
12 | /// The unique id.
13 | public let id: String
/host/spi-builder-workspace/Sources/WS/Protocols/Sendable.swift:159:50: warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
156 | }
157 |
158 | public func send<T>(event: EID<T>, payload: T?) -> EventLoopFuture<Void> where T : Decodable, T : Encodable {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
159 | flatMap { $0.send(event: event, payload: payload) }
| `- warning: capture of 'payload' with non-sendable type 'T?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 | }
161 |
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:25:34: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
23 | }
24 |
25 | internal protocol _Subscribable: class, Subscribable {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
26 | var eventLoop: EventLoop { get }
27 | var clients: [_AnyClient] { get }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:38:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
36 | self.eventLoop.submit {
37 | channels.forEach { channel in
38 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
39 | $0.channels.insert(channel)
40 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Subscribable.swift:52:17: warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
50 | self.eventLoop.submit {
51 | channels.forEach { channel in
52 | self.clients.forEach {
| `- warning: capture of 'self' with non-sendable type 'Self' in an isolated closure; this is an error in the Swift 6 language mode
53 | $0.channels.remove(channel)
54 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:32: warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: capture of 'client' with non-sendable type 'any AnyClient' in a `@Sendable` closure; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Protocols/AnyClient.swift:5:17: note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
3 | import NIOWebSocket
4 |
5 | public protocol AnyClient: Broadcastable, Disconnectable, Subscribable, Sendable {
| `- note: protocol 'AnyClient' does not conform to the 'Sendable' protocol
6 | var id: UUID { get }
7 | var application: Application { get }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:92:21: warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
90 | filter(client).map { leave in
91 | if !leave {
92 | ids.insert(client.id)
| `- warning: mutation of captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
93 | }
94 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:13: warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
4 | import NIOWebSocket
5 |
6 | public class Broadcaster: Disconnectable, _Disconnectable, Sendable, _Sendable, Subscribable {
| `- note: class 'Broadcaster' does not conform to the 'Sendable' protocol
7 | let eventLoop: EventLoop
8 | var clients: [AnyClient]
:
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: capture of 'self' with non-sendable type 'Broadcaster' in a `@Sendable` closure; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
/host/spi-builder-workspace/Sources/WS/Utilities/Broadcaster.swift:96:38: warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
94 | }
95 | }.flatten(on: eventLoop).map {
96 | self.clients.removeAll { ids.contains($0.id) }
| `- warning: reference to captured var 'ids' in concurrently-executing code; this is an error in the Swift 6 language mode
97 | }.transform(to: self)
98 | }
[2214/2224] Compiling WS OriginalRequest.swift
[2215/2224] Compiling WS WSID.swift
[2216/2224] Compiling WS Client.swift
[2217/2224] Compiling WS BaseObserver.swift
[2218/2224] Compiling WS Decoder.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Disconnectable.swift:27:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | func _disconnect() -> EventLoopFuture<Void> {
26 | eventLoop.future().flatMap {
27 | self._disconnect(code: .goingAway)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 | }
29 | }
[2219/2224] Compiling WS Delegate.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Disconnectable.swift:27:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | func _disconnect() -> EventLoopFuture<Void> {
26 | eventLoop.future().flatMap {
27 | self._disconnect(code: .goingAway)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 | }
29 | }
[2220/2224] Compiling WS Disconnectable.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Disconnectable.swift:27:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | func _disconnect() -> EventLoopFuture<Void> {
26 | eventLoop.future().flatMap {
27 | self._disconnect(code: .goingAway)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 | }
29 | }
[2221/2224] Compiling WS Encoder.swift
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/host/spi-builder-workspace/Sources/WS/Protocols/Disconnectable.swift:27:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
25 | func _disconnect() -> EventLoopFuture<Void> {
26 | eventLoop.future().flatMap {
27 | self._disconnect(code: .goingAway)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 | }
29 | }
[2222/2224] Compiling WS DefaultDateFormatter.swift
/host/spi-builder-workspace/Sources/WS/Utilities/DefaultDateFormatter.swift:3:7: warning: class 'DefaultDateFormatter' must restate inherited '@unchecked Sendable' conformance
1 | import Foundation
2 |
3 | class DefaultDateFormatter: DateFormatter {
| `- warning: class 'DefaultDateFormatter' must restate inherited '@unchecked Sendable' conformance
4 | func setup() {
5 | self.calendar = Calendar(identifier: .iso8601)
/host/spi-builder-workspace/Sources/WS/Utilities/EndpointBuilder.swift:74:99: warning: converting non-sendable function value to '@Sendable (Request, WebSocket) -> ()' may introduce data races
72 |
73 | application.wsStorage[wsid.key] = observer
74 | WSRoute(root: application.grouped(middlewares), path: path).webSocket(onUpgrade: observer.handle)
| `- warning: converting non-sendable function value to '@Sendable (Request, WebSocket) -> ()' may introduce data races
75 |
76 | let observerType = String(describing: Observer.self)
/host/spi-builder-workspace/Sources/WS/Utilities/Storage.swift:7:12: warning: type '_Storage.Key.Value' (aka '_Storage') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
2 | import Vapor
3 |
4 | class _Storage {
| `- note: class '_Storage' does not conform to the 'Sendable' protocol
5 | var items: [String: AnyObserver] = [:]
6 |
7 | struct Key: StorageKey {
| `- warning: type '_Storage.Key.Value' (aka '_Storage') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
8 | typealias Value = _Storage
9 | }
[2223/2224] Compiling WS EndpointBuilder.swift
/host/spi-builder-workspace/Sources/WS/Utilities/DefaultDateFormatter.swift:3:7: warning: class 'DefaultDateFormatter' must restate inherited '@unchecked Sendable' conformance
1 | import Foundation
2 |
3 | class DefaultDateFormatter: DateFormatter {
| `- warning: class 'DefaultDateFormatter' must restate inherited '@unchecked Sendable' conformance
4 | func setup() {
5 | self.calendar = Calendar(identifier: .iso8601)
/host/spi-builder-workspace/Sources/WS/Utilities/EndpointBuilder.swift:74:99: warning: converting non-sendable function value to '@Sendable (Request, WebSocket) -> ()' may introduce data races
72 |
73 | application.wsStorage[wsid.key] = observer
74 | WSRoute(root: application.grouped(middlewares), path: path).webSocket(onUpgrade: observer.handle)
| `- warning: converting non-sendable function value to '@Sendable (Request, WebSocket) -> ()' may introduce data races
75 |
76 | let observerType = String(describing: Observer.self)
/host/spi-builder-workspace/Sources/WS/Utilities/Storage.swift:7:12: warning: type '_Storage.Key.Value' (aka '_Storage') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
2 | import Vapor
3 |
4 | class _Storage {
| `- note: class '_Storage' does not conform to the 'Sendable' protocol
5 | var items: [String: AnyObserver] = [:]
6 |
7 | struct Key: StorageKey {
| `- warning: type '_Storage.Key.Value' (aka '_Storage') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
8 | typealias Value = _Storage
9 | }
[2224/2224] Compiling WS Storage.swift
/host/spi-builder-workspace/Sources/WS/Utilities/DefaultDateFormatter.swift:3:7: warning: class 'DefaultDateFormatter' must restate inherited '@unchecked Sendable' conformance
1 | import Foundation
2 |
3 | class DefaultDateFormatter: DateFormatter {
| `- warning: class 'DefaultDateFormatter' must restate inherited '@unchecked Sendable' conformance
4 | func setup() {
5 | self.calendar = Calendar(identifier: .iso8601)
/host/spi-builder-workspace/Sources/WS/Utilities/EndpointBuilder.swift:74:99: warning: converting non-sendable function value to '@Sendable (Request, WebSocket) -> ()' may introduce data races
72 |
73 | application.wsStorage[wsid.key] = observer
74 | WSRoute(root: application.grouped(middlewares), path: path).webSocket(onUpgrade: observer.handle)
| `- warning: converting non-sendable function value to '@Sendable (Request, WebSocket) -> ()' may introduce data races
75 |
76 | let observerType = String(describing: Observer.self)
/host/spi-builder-workspace/Sources/WS/Utilities/Storage.swift:7:12: warning: type '_Storage.Key.Value' (aka '_Storage') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
2 | import Vapor
3 |
4 | class _Storage {
| `- note: class '_Storage' does not conform to the 'Sendable' protocol
5 | var items: [String: AnyObserver] = [:]
6 |
7 | struct Key: StorageKey {
| `- warning: type '_Storage.Key.Value' (aka '_Storage') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
8 | typealias Value = _Storage
9 | }
Build complete! (186.11s)
Build complete.
{
"dependencies" : [
{
"identity" : "vapor",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/vapor/vapor.git"
},
{
"identity" : "websocket-kit",
"requirement" : {
"range" : [
{
"lower_bound" : "2.0.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/vapor/websocket-kit.git"
}
],
"manifest_display_name" : "AwesomeWS",
"name" : "AwesomeWS",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "WS",
"targets" : [
"WS"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "WSTests",
"module_type" : "SwiftTarget",
"name" : "WSTests",
"path" : "Tests/WSTests",
"product_dependencies" : [
"WebSocketKit"
],
"sources" : [
"WSTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"WS"
],
"type" : "test"
},
{
"c99name" : "WS",
"module_type" : "SwiftTarget",
"name" : "WS",
"path" : "Sources/WS",
"product_dependencies" : [
"Vapor",
"WebSocketKit"
],
"product_memberships" : [
"WS"
],
"sources" : [
"Enums/ExchangeMode.swift",
"Extensions/Application+Configurator.swift",
"Extensions/HTTPServerConfiguration+Address.swift",
"Extensions/Request+Observer.swift",
"Models/Configurator.swift",
"Models/EID.swift",
"Models/Event.swift",
"Models/Nothing.swift",
"Models/OriginalRequest.swift",
"Models/WSID.swift",
"Objects/Client.swift",
"Observers/BaseObserver.swift",
"Observers/BindableObserver.swift",
"Observers/ClassicObserver.swift",
"Observers/DeclarativeObserver.swift",
"Protocols/AnyClient.swift",
"Protocols/AnyObserver.swift",
"Protocols/Bindable.swift",
"Protocols/Broadcastable.swift",
"Protocols/Declarativable.swift",
"Protocols/Decoder.swift",
"Protocols/Delegate.swift",
"Protocols/Disconnectable.swift",
"Protocols/Encoder.swift",
"Protocols/Loggable.swift",
"Protocols/Sendable.swift",
"Protocols/Subscribable.swift",
"Utilities/Broadcaster.swift",
"Utilities/DefaultDateFormatter.swift",
"Utilities/EndpointBuilder.swift",
"Utilities/Storage.swift"
],
"type" : "library"
}
],
"tools_version" : "5.2"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.