Build Information
Successful build of swift-nio-ssh, reference 0.4.0 (c997b6), with Swift 6.0 for Linux on 16 Sep 2025 08:15:22 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[757/788] Compiling NIOSSH SSHChildChannel.swift
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:657:27: warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[758/788] Compiling NIOSSH AcceptsChannelMessages.swift
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:657:27: warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[759/788] Compiling NIOSSH AcceptsKeyExchangeMessages.swift
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:657:27: warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[760/788] Compiling NIOSSH AcceptsUserAuthMessages.swift
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:657:27: warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[761/788] Compiling NIOSSH AcceptsVersionMessages.swift
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:657:27: warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[762/788] Compiling NIOSSH SendsChannelMessages.swift
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:657:27: warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
655 | self.processOutboundMessage(.channelWindowAdjust(update), promise: nil)
656 | }
657 | self.pipeline.fireChannelRead(NIOAny(data))
| `- warning: 'fireChannelRead' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
658 |
659 | case .eof:
/host/spi-builder-workspace/Sources/NIOSSH/Child Channels/SSHChildChannel.swift:827:57: warning: type 'Any' does not conform to the 'Sendable' protocol
825 |
826 | if let userEvent = SSHChannelRequestEvent.fromMessage(message) {
827 | self.pipeline.fireUserInboundEventTriggered(userEvent)
| `- warning: type 'Any' does not conform to the 'Sendable' protocol
828 | } else if message.wantReply {
829 | // Messages that we don't understand and that want a reply must be replied to with a failure.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:97: warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'connectionAttributes' with non-sendable type 'SSHConnectionStateMachine.Attributes' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/SSHConnectionStateMachine.swift:60:11: note: class 'Attributes' does not conform to the 'Sendable' protocol
58 | }
59 |
60 | class Attributes {
| `- note: class 'Attributes' does not conform to the 'Sendable' protocol
61 | var username: String? = nil
62 | }
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:129: warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'message' with non-sendable type 'SSHMessage.UserAuthRequestMessage' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHMessages.swift:141:12: note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
139 | }
140 |
141 | struct UserAuthRequestMessage: Equatable {
| `- note: consider making struct 'UserAuthRequestMessage' conform to the 'Sendable' protocol
142 | // SSH_MSG_USERAUTH_REQUEST
143 | static let id: UInt8 = 50
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: capture of 'banner' with non-sendable type 'SSHServerConfiguration.UserAuthBanner?' in a `@Sendable` closure
76 | } else {
77 | return .noMessage
/host/spi-builder-workspace/Sources/NIOSSH/SSHServerConfiguration.swift:68:12: note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
66 | to ignore banners.
67 | */
68 | struct UserAuthBanner {
| `- note: consider making struct 'UserAuthBanner' conform to the 'Sendable' protocol
69 | /**
70 | The message to be displayed by client to end user during authentication.
/host/spi-builder-workspace/Sources/NIOSSH/Connection State Machine/Operations/AcceptsUserAuthMessages.swift:75:155: warning: reference to captured var 'banner' in concurrently-executing code
73 |
74 | let connectionAttributes = self.connectionAttributes
75 | return .possibleFutureMessage(future.map { Self.transform($0, connectionAttributes: connectionAttributes, username: message.username, banner: banner) })
| `- warning: reference to captured var 'banner' in concurrently-executing code
76 | } else {
77 | return .noMessage
[763/788] Compiling NIOSSH NIOSSHPrivateKey.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[764/788] Compiling NIOSSH NIOSSHPublicKey.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[765/788] Compiling NIOSSH NIOSSHSignature.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[766/788] Compiling NIOSSH NIOSSHError.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[767/788] Compiling NIOSSH NIOSSHHandler.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[768/788] Compiling NIOSSH NIOSSHSendable.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[769/788] Compiling NIOSSH Role.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[770/788] Compiling NIOSSH SSHClientConfiguration.swift
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:286:16: warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
284 |
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
| |- warning: static property 'transportProtectionSchemesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:287:16: warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
285 | private enum _CustomAlgorithms {
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
| |- warning: static property 'transportProtectionSchemes' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'transportProtectionSchemes' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'transportProtectionSchemes' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:288:16: warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
286 | static var transportProtectionSchemesLock = NIOLock()
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
| |- warning: static property 'keyExchangeAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:289:16: warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
287 | static var transportProtectionSchemes = [NIOSSHTransportProtection.Type]()
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
| |- warning: static property 'keyExchangeAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'keyExchangeAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'keyExchangeAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:290:16: warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
288 | static var keyExchangeAlgorithmsLock = NIOLock()
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
| |- warning: static property 'publicKeyAlgorithmsLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithmsLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithmsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:291:16: warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
289 | static var keyExchangeAlgorithms = [NIOSSHKeyExchangeAlgorithmProtocol.Type]()
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
| |- warning: static property 'publicKeyAlgorithms' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'publicKeyAlgorithms' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'publicKeyAlgorithms' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:292:16: warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
290 | static var publicKeyAlgorithmsLock = NIOLock()
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
| |- warning: static property 'signaturesLock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signaturesLock' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signaturesLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
294 | }
/host/spi-builder-workspace/Sources/NIOSSH/Keys And Signatures/NIOSSHPublicKey.swift:293:16: warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
291 | static var publicKeyAlgorithms: [NIOSSHPublicKeyProtocol.Type] = []
292 | static var signaturesLock = NIOLock()
293 | static var signatures: [NIOSSHSignatureProtocol.Type] = []
| |- warning: static property 'signatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'signatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'signatures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
294 | }
295 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:91:25: warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
89 | switch self {
90 | case .tcpForwarding(let promise):
91 | promise.succeed(result.map(GlobalRequest.TCPForwardingResponse.init))
| `- warning: type 'GlobalRequest.TCPForwardingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
92 | case .unknown(let promise):
93 | promise.succeed(result?.buffer)
/host/spi-builder-workspace/Sources/NIOSSH/GlobalRequestDelegate.swift:52:19: note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
50 |
51 | /// The data associated with a successful response to a TCP forwarding request.
52 | public struct TCPForwardingResponse: Hashable {
| `- note: consider making struct 'TCPForwardingResponse' conform to the 'Sendable' protocol
53 | /// If requested to listen on a port, and the port the client requested was 0, this is set to the
54 | /// port that was actually bound. Otherwise is nil.
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:29: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:209:65: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
207 | case .success(.some(let message)):
208 | do {
209 | try self.writeMessage(message, context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
210 | self.pendingWrite = false
211 | context.flush()
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:25: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:369:121: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
367 | switch result {
368 | case .success(let tcpForwardingResponse):
369 | try self.writeMessage(.init(.requestSuccess(.init(.tcpForwarding(tcpForwardingResponse), allocator: context.channel.allocator))), context: context)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
370 | context.flush()
371 | case .failure:
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:411:23: warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
24 | /// other usage models, including port forwarding. It is also able to construct somewhat
25 | /// arbitrary secure multiplexed channels.
26 | public final class NIOSSHHandler {
| `- note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
27 | internal var channel: Channel? {
28 | self.context.map { $0.channel }
:
409 | switch result {
410 | case .success:
411 | guard self.context != nil else {
| `- warning: capture of 'self' with non-sendable type 'NIOSSHHandler' in a `@Sendable` closure
412 | // This write succeeded, but we're out of the pipeline anyway. Fail the promise.
413 | promise?.fail(ChannelError.eof)
[771/788] Compiling NIOSSH SSHEncryptablePacketPayload.swift
[772/788] Compiling NIOSSH SSHMessages.swift
[773/788] Compiling NIOSSH SSHPacketParser.swift
[774/788] Compiling NIOSSH SSHPacketSerializer.swift
[775/788] Compiling NIOSSH SSHServerConfiguration.swift
[776/788] Compiling NIOSSH SSHTerminalModes.swift
[777/788] Compiling NIOSSH AESGCM.swift
[778/788] Compiling NIOSSH SSHTransportProtection.swift
[779/789] Wrapping AST for NIOSSH for debugging
[781/808] Emitting module NIOSSHPerformanceTester
[782/808] Compiling NIOSSHClient InteractivePasswordPromptDelegate.swift
[783/808] Compiling NIOSSHClient PortForwardingServer.swift
[784/808] Compiling NIOSSHServer GlueHandler.swift
[785/808] Compiling NIOSSHPerformanceTester shared.swift
[786/808] Compiling NIOSSHPerformanceTester main.swift
[787/808] Compiling NIOSSHPerformanceTester Benchmark.swift
[788/808] Compiling NIOSSHPerformanceTester BenchmarkLinearThroughput.swift
/host/spi-builder-workspace/Sources/NIOSSHPerformanceTester/BenchmarkLinearThroughput.swift:39:49: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
37 | let clientHandler = NIOSSHHandler(role: self.clientRole, allocator: self.b2b.client.allocator, inboundChildChannelInitializer: nil)
38 |
39 | try self.b2b.client.pipeline.addHandler(clientHandler).wait()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
40 | try self.b2b.server.pipeline.addHandler(NIOSSHHandler(role: self.serverRole, allocator: self.b2b.server.allocator, inboundChildChannelInitializer: nil)).wait()
41 | try self.b2b.interactInMemory()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
/host/spi-builder-workspace/Sources/NIOSSHPerformanceTester/BenchmarkLinearThroughput.swift:40:49: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
38 |
39 | try self.b2b.client.pipeline.addHandler(clientHandler).wait()
40 | try self.b2b.server.pipeline.addHandler(NIOSSHHandler(role: self.serverRole, allocator: self.b2b.server.allocator, inboundChildChannelInitializer: nil)).wait()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
41 | try self.b2b.interactInMemory()
42 |
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
[789/808] Compiling NIOSSHPerformanceTester BenchmarkHandshake.swift
/host/spi-builder-workspace/Sources/NIOSSHPerformanceTester/BenchmarkHandshake.swift:38:48: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
36 | b2b.server.connect(to: try .init(unixDomainSocketPath: "/foo"), promise: nil)
37 |
38 | try b2b.client.pipeline.addHandler(NIOSSHHandler(role: self.clientRole, allocator: b2b.client.allocator, inboundChildChannelInitializer: nil)).wait()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
39 | try b2b.server.pipeline.addHandler(NIOSSHHandler(role: self.serverRole, allocator: b2b.server.allocator, inboundChildChannelInitializer: nil)).wait()
40 | try b2b.interactInMemory()
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
/host/spi-builder-workspace/Sources/NIOSSHPerformanceTester/BenchmarkHandshake.swift:39:48: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
37 |
38 | try b2b.client.pipeline.addHandler(NIOSSHHandler(role: self.clientRole, allocator: b2b.client.allocator, inboundChildChannelInitializer: nil)).wait()
39 | try b2b.server.pipeline.addHandler(NIOSSHHandler(role: self.serverRole, allocator: b2b.server.allocator, inboundChildChannelInitializer: nil)).wait()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
40 | try b2b.interactInMemory()
41 | }
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
[790/809] Compiling NIOSSHServer RemotePortForwarding.swift
[791/809] Compiling NIOSSHServer main.swift
/host/spi-builder-workspace/Sources/NIOSSHServer/main.swift:79:39: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
77 | let bootstrap = ServerBootstrap(group: group)
78 | .childChannelInitializer { channel in
79 | channel.pipeline.addHandlers([NIOSSHHandler(role: .server(.init(hostKeys: [hostKey], userAuthDelegate: HardcodedPasswordDelegate(), globalRequestDelegate: RemotePortForwarderGlobalRequestDelegate())), allocator: channel.allocator, inboundChildChannelInitializer: sshChildChannelInitializer(_:_:)), ErrorHandler()])
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
80 | }
81 | .serverChannelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
[792/809] Compiling NIOSSHClient main.swift
/host/spi-builder-workspace/Sources/NIOSSHClient/main.swift:52:39: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
50 | let bootstrap = ClientBootstrap(group: group)
51 | .channelInitializer { channel in
52 | channel.pipeline.addHandlers([NIOSSHHandler(role: .client(.init(userAuthDelegate: InteractivePasswordPromptDelegate(username: parseResult.user, password: parseResult.password), serverAuthDelegate: AcceptAllHostKeysDelegate())), allocator: channel.allocator, inboundChildChannelInitializer: nil), ErrorHandler()])
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
53 | }
54 | .channelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
[793/809] Compiling NIOSSHClient SimpleCLIParser.swift
[795/809] Emitting module NIOSSHServer
/host/spi-builder-workspace/Sources/NIOSSHServer/main.swift:79:39: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
77 | let bootstrap = ServerBootstrap(group: group)
78 | .childChannelInitializer { channel in
79 | channel.pipeline.addHandlers([NIOSSHHandler(role: .server(.init(hostKeys: [hostKey], userAuthDelegate: HardcodedPasswordDelegate(), globalRequestDelegate: RemotePortForwarderGlobalRequestDelegate())), allocator: channel.allocator, inboundChildChannelInitializer: sshChildChannelInitializer(_:_:)), ErrorHandler()])
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
80 | }
81 | .serverChannelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
[796/809] Compiling NIOSSHServer ExecHandler.swift
/host/spi-builder-workspace/Sources/NIOSSHServer/ExecHandler.swift:117:49: warning: type 'GlueHandler' does not conform to the 'Sendable' protocol
115 |
116 | let (ours, theirs) = GlueHandler.matchedPair()
117 | try channel.pipeline.addHandler(ours).wait()
| `- warning: type 'GlueHandler' does not conform to the 'Sendable' protocol
118 |
119 | _ = try NIOPipeBootstrap(group: channel.eventLoop)
/host/spi-builder-workspace/Sources/NIOSSHServer/GlueHandler.swift:17:13: note: class 'GlueHandler' does not conform to the 'Sendable' protocol
15 | import NIOCore
16 |
17 | final class GlueHandler {
| `- note: class 'GlueHandler' does not conform to the 'Sendable' protocol
18 | private var partner: GlueHandler?
19 |
/host/spi-builder-workspace/Sources/NIOSSHServer/ExecHandler.swift:123:23: warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
121 | .channelInitializer { pipeChannel in
122 | pipeChannel.pipeline.addHandler(theirs)
123 | }.withPipes(inputDescriptor: outPipe.fileHandleForReading.fileDescriptor, outputDescriptor: inPipe.fileHandleForWriting.fileDescriptor).wait()
| |- warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
| `- note: use 'takingOwnershipOfDescriptors(input:output:)' instead
124 |
125 | // Ok, great, we've sorted stdout and stdin. For stderr we need a different strategy: we just park a thread for this.
/host/spi-builder-workspace/Sources/NIOSSHServer/ExecHandler.swift:122:57: warning: capture of 'theirs' with non-sendable type 'GlueHandler' in a `@Sendable` closure
120 | .channelOption(ChannelOptions.allowRemoteHalfClosure, value: true)
121 | .channelInitializer { pipeChannel in
122 | pipeChannel.pipeline.addHandler(theirs)
| `- warning: capture of 'theirs' with non-sendable type 'GlueHandler' in a `@Sendable` closure
123 | }.withPipes(inputDescriptor: outPipe.fileHandleForReading.fileDescriptor, outputDescriptor: inPipe.fileHandleForWriting.fileDescriptor).wait()
124 |
/host/spi-builder-workspace/Sources/NIOSSHServer/GlueHandler.swift:17:13: note: class 'GlueHandler' does not conform to the 'Sendable' protocol
15 | import NIOCore
16 |
17 | final class GlueHandler {
| `- note: class 'GlueHandler' does not conform to the 'Sendable' protocol
18 | private var partner: GlueHandler?
19 |
[797/809] Compiling NIOSSHServer DataToBufferCodec.swift
[798/810] Emitting module NIOSSHClient
/host/spi-builder-workspace/Sources/NIOSSHClient/main.swift:52:39: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
50 | let bootstrap = ClientBootstrap(group: group)
51 | .channelInitializer { channel in
52 | channel.pipeline.addHandlers([NIOSSHHandler(role: .client(.init(userAuthDelegate: InteractivePasswordPromptDelegate(username: parseResult.user, password: parseResult.password), serverAuthDelegate: AcceptAllHostKeysDelegate())), allocator: channel.allocator, inboundChildChannelInitializer: nil), ErrorHandler()])
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
53 | }
54 | .channelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
/host/spi-builder-workspace/Sources/NIOSSH/NIOSSHHandler.swift:81:1: note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
79 |
80 | @available(*, unavailable)
81 | extension NIOSSHHandler: Sendable {}
| `- note: conformance of 'NIOSSHHandler' to 'Sendable' has been explicitly marked unavailable here
82 |
83 | extension NIOSSHHandler {
[799/810] Compiling NIOSSHClient ExecHandler.swift
/host/spi-builder-workspace/Sources/NIOSSHClient/ExecHandler.swift:51:19: warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
49 | bootstrap.channelOption(ChannelOptions.allowRemoteHalfClosure, value: true).channelInitializer { channel in
50 | channel.pipeline.addHandler(theirs)
51 | }.withPipes(inputDescriptor: 0, outputDescriptor: 1).whenComplete { result in
| |- warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
| `- note: use 'takingOwnershipOfDescriptors(input:output:)' instead
52 | switch result {
53 | case .success:
/host/spi-builder-workspace/Sources/NIOSSHClient/ExecHandler.swift:49:17: warning: capture of 'bootstrap' with non-sendable type 'NIOPipeBootstrap' in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | context.channel.pipeline.addHandler(ours, position: .last).whenSuccess { _ in
48 | DispatchQueue(label: "pipe bootstrap").async {
49 | bootstrap.channelOption(ChannelOptions.allowRemoteHalfClosure, value: true).channelInitializer { channel in
| `- warning: capture of 'bootstrap' with non-sendable type 'NIOPipeBootstrap' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | channel.pipeline.addHandler(theirs)
51 | }.withPipes(inputDescriptor: 0, outputDescriptor: 1).whenComplete { result in
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOPosix/Bootstrap.swift:2232:20: note: class 'NIOPipeBootstrap' does not conform to the 'Sendable' protocol
2230 | /// .takingOwnershipOfDescriptors(input: STDIN_FILENO, output: STDOUT_FILENO)
2231 | ///
2232 | public final class NIOPipeBootstrap {
| `- note: class 'NIOPipeBootstrap' does not conform to the 'Sendable' protocol
2233 | private let group: EventLoopGroup
2234 | private var channelInitializer: Optional<ChannelInitializerCallback>
/host/spi-builder-workspace/Sources/NIOSSHClient/ExecHandler.swift:56:25: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
54 | // We need to exec a thing.
55 | let execRequest = SSHChannelRequestEvent.ExecRequest(command: self.command, wantReply: false)
56 | context.triggerUserOutboundEvent(execRequest).whenFailure { _ in
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
57 | context.close(promise: nil)
58 | }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOSSHClient/ExecHandler.swift:50:49: warning: capture of 'theirs' with non-sendable type 'GlueHandler' in a `@Sendable` closure
48 | DispatchQueue(label: "pipe bootstrap").async {
49 | bootstrap.channelOption(ChannelOptions.allowRemoteHalfClosure, value: true).channelInitializer { channel in
50 | channel.pipeline.addHandler(theirs)
| `- warning: capture of 'theirs' with non-sendable type 'GlueHandler' in a `@Sendable` closure
51 | }.withPipes(inputDescriptor: 0, outputDescriptor: 1).whenComplete { result in
52 | switch result {
/host/spi-builder-workspace/Sources/NIOSSHClient/GlueHandler.swift:17:13: note: class 'GlueHandler' does not conform to the 'Sendable' protocol
15 | import NIOCore
16 |
17 | final class GlueHandler {
| `- note: class 'GlueHandler' does not conform to the 'Sendable' protocol
18 | private var partner: GlueHandler?
19 |
/host/spi-builder-workspace/Sources/NIOSSHClient/ExecHandler.swift:55:87: warning: capture of 'self' with non-sendable type 'ExampleExecHandler' in a `@Sendable` closure
18 | import NIOSSH
19 |
20 | final class ExampleExecHandler: ChannelDuplexHandler {
| `- note: class 'ExampleExecHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = ByteBuffer
:
53 | case .success:
54 | // We need to exec a thing.
55 | let execRequest = SSHChannelRequestEvent.ExecRequest(command: self.command, wantReply: false)
| `- warning: capture of 'self' with non-sendable type 'ExampleExecHandler' in a `@Sendable` closure
56 | context.triggerUserOutboundEvent(execRequest).whenFailure { _ in
57 | context.close(promise: nil)
/host/spi-builder-workspace/Sources/NIOSSHClient/ExecHandler.swift:56:25: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
54 | // We need to exec a thing.
55 | let execRequest = SSHChannelRequestEvent.ExecRequest(command: self.command, wantReply: false)
56 | context.triggerUserOutboundEvent(execRequest).whenFailure { _ in
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure
57 | context.close(promise: nil)
58 | }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1792:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1790 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1791 | /// `ChannelHandler`.
1792 | public final class ChannelHandlerContext: ChannelInvoker {
| `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1793 | // visible for ChannelPipeline to modify
1794 | fileprivate var next: Optional<ChannelHandlerContext>
[800/810] Compiling NIOSSHClient GlueHandler.swift
[800/811] Wrapping AST for NIOSSHPerformanceTester for debugging
[802/811] Write Objects.LinkFileList
[804/811] Wrapping AST for NIOSSHServer for debugging
[805/811] Write Objects.LinkFileList
[806/811] Wrapping AST for NIOSSHClient for debugging
[807/811] Write Objects.LinkFileList
[808/811] Linking NIOSSHPerformanceTester
[809/811] Linking NIOSSHClient
[810/811] Linking NIOSSHServer
Build complete! (209.44s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-nio",
"requirement" : {
"range" : [
{
"lower_bound" : "2.81.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-nio.git"
},
{
"identity" : "swift-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-crypto.git"
},
{
"identity" : "swift-atomics",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.2",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-atomics.git"
},
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-docc-plugin"
}
],
"manifest_display_name" : "swift-nio-ssh",
"name" : "swift-nio-ssh",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
},
{
"name" : "tvos",
"version" : "13.0"
}
],
"products" : [
{
"name" : "NIOSSH",
"targets" : [
"NIOSSH"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "NIOSSHServer",
"targets" : [
"NIOSSHServer"
],
"type" : {
"executable" : null
}
},
{
"name" : "NIOSSHPerformanceTester",
"targets" : [
"NIOSSHPerformanceTester"
],
"type" : {
"executable" : null
}
},
{
"name" : "NIOSSHClient",
"targets" : [
"NIOSSHClient"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "NIOSSHTests",
"module_type" : "SwiftTarget",
"name" : "NIOSSHTests",
"path" : "Tests/NIOSSHTests",
"product_dependencies" : [
"NIOCore",
"NIOEmbedded",
"NIOFoundationCompat"
],
"sources" : [
"AESGCMTests.swift",
"ByteBuffer+SSHTests.swift",
"CertificateAuthenticationIntegrationTests.swift",
"CertifiedKeyTests.swift",
"ChildChannelMultiplexerTests.swift",
"ECKeyExchangeTests.swift",
"EndToEndTests.swift",
"FuzzResultTests.swift",
"HostKeyTests.swift",
"SSHConfigurationCertificateTests.swift",
"SSHConnectionStateMachineTests.swift",
"SSHEncryptedTrafficTests.swift",
"SSHHandlerTests.swift",
"SSHKeyExchangeCertificateTests.swift",
"SSHKeyExchangeStateMachineTests.swift",
"SSHMessagesTests.swift",
"SSHPackerSerializerTests.swift",
"SSHPacketParserTests.swift",
"UserAuthenticationStateMachineTests.swift",
"Utilities.swift",
"UtilitiesTests.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "test"
},
{
"c99name" : "NIOSSHServer",
"module_type" : "SwiftTarget",
"name" : "NIOSSHServer",
"path" : "Sources/NIOSSHServer",
"product_dependencies" : [
"NIOCore",
"NIOPosix",
"NIOFoundationCompat",
"Crypto"
],
"product_memberships" : [
"NIOSSHServer"
],
"sources" : [
"DataToBufferCodec.swift",
"ExecHandler.swift",
"GlueHandler.swift",
"RemotePortForwarding.swift",
"main.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "executable"
},
{
"c99name" : "NIOSSHPerformanceTester",
"module_type" : "SwiftTarget",
"name" : "NIOSSHPerformanceTester",
"path" : "Sources/NIOSSHPerformanceTester",
"product_dependencies" : [
"NIOCore",
"NIOEmbedded",
"Crypto"
],
"product_memberships" : [
"NIOSSHPerformanceTester"
],
"sources" : [
"Benchmark.swift",
"BenchmarkHandshake.swift",
"BenchmarkLinearThroughput.swift",
"main.swift",
"shared.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "executable"
},
{
"c99name" : "NIOSSHClient",
"module_type" : "SwiftTarget",
"name" : "NIOSSHClient",
"path" : "Sources/NIOSSHClient",
"product_dependencies" : [
"NIOCore",
"NIOPosix",
"NIOConcurrencyHelpers"
],
"product_memberships" : [
"NIOSSHClient"
],
"sources" : [
"ExecHandler.swift",
"GlueHandler.swift",
"InteractivePasswordPromptDelegate.swift",
"PortForwardingServer.swift",
"SimpleCLIParser.swift",
"main.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "executable"
},
{
"c99name" : "NIOSSH",
"module_type" : "SwiftTarget",
"name" : "NIOSSH",
"path" : "Sources/NIOSSH",
"product_dependencies" : [
"NIOCore",
"NIOConcurrencyHelpers",
"NIOFoundationCompat",
"Crypto",
"Atomics"
],
"product_memberships" : [
"NIOSSH",
"NIOSSHServer",
"NIOSSHPerformanceTester",
"NIOSSHClient"
],
"sources" : [
"ByteBuffer+SSH.swift",
"CSPRNG/CSPRNG.swift",
"Child Channels/ChildChannelOptions.swift",
"Child Channels/ChildChannelStateMachine.swift",
"Child Channels/ChildChannelUserEvents.swift",
"Child Channels/ChildChannelWindowManager.swift",
"Child Channels/ChildChannelWritabilityManager.swift",
"Child Channels/OutboundFlowController.swift",
"Child Channels/SSHChannelData.swift",
"Child Channels/SSHChannelIdentifier.swift",
"Child Channels/SSHChannelMultiplexer.swift",
"Child Channels/SSHChannelType.swift",
"Child Channels/SSHChildChannel.swift",
"Connection State Machine/Operations/AcceptsChannelMessages.swift",
"Connection State Machine/Operations/AcceptsKeyExchangeMessages.swift",
"Connection State Machine/Operations/AcceptsUserAuthMessages.swift",
"Connection State Machine/Operations/AcceptsVersionMessages.swift",
"Connection State Machine/Operations/SendsChannelMessages.swift",
"Connection State Machine/Operations/SendsKeyExchangeMessages.swift",
"Connection State Machine/Operations/SendsUserAuthMessages.swift",
"Connection State Machine/SSHConnectionStateMachine.swift",
"Connection State Machine/States/ActiveState.swift",
"Connection State Machine/States/IdleState.swift",
"Connection State Machine/States/KeyExchangeState.swift",
"Connection State Machine/States/ReceivedKexInitWhenActiveState.swift",
"Connection State Machine/States/ReceivedNewKeysState.swift",
"Connection State Machine/States/RekeyingReceivedNewKeysState.swift",
"Connection State Machine/States/RekeyingSentNewKeysState.swift",
"Connection State Machine/States/RekeyingState.swift",
"Connection State Machine/States/SentKexInitWhenActiveState.swift",
"Connection State Machine/States/SentNewKeysState.swift",
"Connection State Machine/States/SentVersionState.swift",
"Connection State Machine/States/UserAuthenticationState.swift",
"Constants.swift",
"GlobalRequestDelegate.swift",
"Key Exchange/ECDHCompatibleKey.swift",
"Key Exchange/EllipticCurveKeyExchange.swift",
"Key Exchange/SSHKeyExchangeResult.swift",
"Key Exchange/SSHKeyExchangeStateMachine.swift",
"Keys And Signatures/ClientServerAuthenticationDelegate.swift",
"Keys And Signatures/CustomKeys.swift",
"Keys And Signatures/NIOSSHCertifiedPublicKey.swift",
"Keys And Signatures/NIOSSHPrivateKey.swift",
"Keys And Signatures/NIOSSHPublicKey.swift",
"Keys And Signatures/NIOSSHSignature.swift",
"NIOSSHError.swift",
"NIOSSHHandler.swift",
"NIOSSHSendable.swift",
"Role.swift",
"SSHClientConfiguration.swift",
"SSHEncryptablePacketPayload.swift",
"SSHMessages.swift",
"SSHPacketParser.swift",
"SSHPacketSerializer.swift",
"SSHServerConfiguration.swift",
"SSHTerminalModes.swift",
"TransportProtection/AESGCM.swift",
"TransportProtection/SSHTransportProtection.swift",
"User Authentication/ClientUserAuthenticationDelegate.swift",
"User Authentication/DenyAllServerAuthDelegate.swift",
"User Authentication/ServerUserAuthenticationDelegate.swift",
"User Authentication/SimplePasswordDelegate.swift",
"User Authentication/UserAuthDelegate.swift",
"User Authentication/UserAuthSignablePayload.swift",
"User Authentication/UserAuthenticationMethod.swift",
"User Authentication/UserAuthenticationStateMachine.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:2ffdcefcdb291d9eb78a77ed5e4b4766a710a1cb89004e0bfdb0fefda731df2f
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.