Build Information
Successful build of Citadel, reference 0.11.1 (0e0830
), with Swift 6.1 for macOS (SPM) on 15 Jul 2025 12:10:01 UTC.
Swift 6 data race errors: 39
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
51 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
52 | sftpInboundHandler,
53 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:52:13: warning: type 'SFTPClientInboundHandler' does not conform to the 'Sendable' protocol
50 | deserializeHandler,
51 | serializeHandler,
52 | sftpInboundHandler,
| `- warning: type 'SFTPClientInboundHandler' does not conform to the 'Sendable' protocol
53 | CloseErrorHandler(logger: logger)
54 | ).map {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClientInboundHandler.swift:6:13: note: class 'SFTPClientInboundHandler' does not conform to the 'Sendable' protocol
4 | import Logging
5 |
6 | final class SFTPClientInboundHandler: ChannelInboundHandler {
| `- note: class 'SFTPClientInboundHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = SFTPMessage
8 |
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:53:13: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
51 | serializeHandler,
52 | sftpInboundHandler,
53 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
54 | ).map {
55 | let client = SFTPClient(channel: channel, responses: responses, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:6:13: note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
[892/897] Compiling Citadel Server.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:40:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
38 | func handlerAdded(context: ChannelHandlerContext) {
39 | context.channel.setOption(ChannelOptions.allowRemoteHalfClosure, value: true).whenFailure { error in
40 | context.fireErrorCaught(error)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
41 | }
42 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:59:21: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
57 | guard let shell = shell, let parent = context.channel.parent else {
58 | _ = context.channel.triggerUserOutboundEvent(ChannelFailureEvent()).flatMap {
59 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
60 | return context.channel.close()
61 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:60:28: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
58 | _ = context.channel.triggerUserOutboundEvent(ChannelFailureEvent()).flatMap {
59 | self.configured.succeed(())
60 | return context.channel.close()
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
61 | }
62 | return
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:67:30: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
65 | parent.pipeline.handler(type: NIOSSHHandler.self).flatMap { handler in
66 | ShellServerSubsystem.setupChannelHanders(
67 | channel: context.channel,
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
68 | shell: shell,
69 | logger: .init(label: "nl.orlandos.citadel.sftp-server"),
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:73:31: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
71 | )
72 | }.flatMap { () -> EventLoopFuture<Void> in
73 | let promise = context.eventLoop.makePromise(of: Void.self)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
74 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
75 | self.configured.succeed(())
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:75:17: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
73 | let promise = context.eventLoop.makePromise(of: Void.self)
74 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
75 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
76 | return promise.futureResult
77 | }.whenFailure { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:78:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
76 | return promise.futureResult
77 | }.whenFailure { _ in
78 | context.channel.triggerUserOutboundEvent(ChannelFailureEvent(), promise: nil)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
79 | }
80 | case let event as SSHChannelRequestEvent.SubsystemRequest:
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:91:34: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
89 | parent.pipeline.handler(type: NIOSSHHandler.self).flatMap { handler in
90 | SFTPServerSubsystem.setupChannelHanders(
91 | channel: context.channel,
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
92 | sftp: sftp,
93 | logger: .init(label: "nl.orlandos.citadel.sftp-server"),
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:97:35: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
95 | )
96 | }.flatMap { () -> EventLoopFuture<Void> in
97 | let promise = context.eventLoop.makePromise(of: Void.self)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
98 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
99 | self.configured.succeed(())
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:99:21: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
97 | let promise = context.eventLoop.makePromise(of: Void.self)
98 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
99 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
100 | return promise.futureResult
101 | }.whenFailure { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:102:21: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
100 | return promise.futureResult
101 | }.whenFailure { _ in
102 | context.channel.triggerUserOutboundEvent(ChannelFailureEvent(), promise: nil)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
103 | }
104 | default:
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:114:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
112 | func channelRead(context: ChannelHandlerContext, data: NIOAny) {
113 | configured.futureResult.whenSuccess {
114 | context.fireChannelRead(data)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
115 | }
116 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:114:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
112 | func channelRead(context: ChannelHandlerContext, data: NIOAny) {
113 | configured.futureResult.whenSuccess {
114 | context.fireChannelRead(data)
| `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
115 | }
116 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/NIOAny.swift:45:15: note: struct 'NIOAny' does not conform to the 'Sendable' protocol
43 | /// }
44 | /// }
45 | public struct NIOAny {
| `- note: struct 'NIOAny' does not conform to the 'Sendable' protocol
46 | @usableFromInline
47 | let _storage: _NIOAny
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:163:49: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
161 | handlers.append(ExecHandler(delegate: exec, username: username))
162 |
163 | return channel.pipeline.addHandlers(handlers)
| `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
164 | case .directTCPIP(let request):
165 | guard let delegate = directTCPIP else {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:169:48: warning: type 'DataToBufferCodec' does not conform to the 'Sendable' protocol
167 | }
168 |
169 | return channel.pipeline.addHandler(DataToBufferCodec()).flatMap {
| `- warning: type 'DataToBufferCodec' does not conform to the 'Sendable' protocol
170 | return delegate.initializeDirectTCPIPChannel(
171 | channel,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/DirectTCPIP/Client/DirectTCPIP+Client.swift:4:13: note: class 'DataToBufferCodec' does not conform to the 'Sendable' protocol
2 | import NIOSSH
3 |
4 | final class DataToBufferCodec: ChannelDuplexHandler {
| `- note: class 'DataToBufferCodec' does not conform to the 'Sendable' protocol
5 | typealias InboundIn = SSHChannelData
6 | typealias InboundOut = ByteBuffer
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:261:21: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
259 |
260 | return channel.pipeline.addHandlers([
261 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
262 | role: .server(server),
263 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:270:21: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
:
268 | }
269 | ),
270 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
271 | ])
272 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:278:11: warning: type 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
:
276 | return try await bootstrap.bind(host: host, port: port).map { channel in
277 | SSHServer(channel: channel, logger: logger, delegate: delegate)
278 | }.get()
| `- warning: type 'SSHServer' does not conform to the 'Sendable' protocol
279 | }
280 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:102:47: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
100 | }
101 |
102 | done.futureResult.whenFailure(context.fireErrorCaught)
| `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
103 | }
104 |
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in a '@Sendable' closure
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in a '@Sendable' closure
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in a '@Sendable' closure
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in a '@Sendable' closure
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:84:46: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
82 |
83 | group.addTask {
84 | for try await message in self.outbound.stream {
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
85 | switch message.event {
86 | case .stdout(let data):
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:134:13: warning: type 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
132 |
133 | return channel.pipeline.addHandlers(
134 | SSHChannelDataUnwrapper(),
| `- warning: type 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ChannelUnwrapper.swift:4:13: note: class 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
2 | import NIOSSH
3 |
4 | final class SSHChannelDataUnwrapper: ChannelInboundHandler {
| `- note: class 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
5 | typealias InboundIn = SSHChannelData
6 | typealias InboundOut = ByteBuffer
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:135:13: warning: type 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
133 | return channel.pipeline.addHandlers(
134 | SSHChannelDataUnwrapper(),
135 | SSHOutboundChannelDataWrapper(),
| `- warning: type 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
136 | shellInboundHandler,
137 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ChannelUnwrapper.swift:30:13: note: class 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
28 | }
29 |
30 | final class SSHOutboundChannelDataWrapper: ChannelOutboundHandler {
| `- note: class 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
31 | typealias OutboundIn = ByteBuffer
32 | typealias OutboundOut = SSHChannelData
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:136:13: warning: type 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
134 | SSHChannelDataUnwrapper(),
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
| `- warning: type 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
137 | CloseErrorHandler(logger: logger)
138 | )
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:137:13: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
137 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
138 | )
139 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:6:13: note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:124:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
122 | context.channel.setOption(ChannelOptions.allowRemoteHalfClosure, value: true).whenFailure { error in
123 | self.logger.debug("Failed to set allowRemoteHalfClosure: \(error)")
124 | context.fireErrorCaught(error)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
125 | }
126 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:285:17: warning: capture of 'self' with non-sendable type 'SSHClient' in a '@Sendable' closure; this is an error in the Swift 6 language mode
283 | streamContinuation.yield(.stderr(stderr))
284 | case .eof(let error):
285 | self.logger.debug("EOF triggered, ending the command stream.")
| `- warning: capture of 'self' with non-sendable type 'SSHClient' in a '@Sendable' closure; this is an error in the Swift 6 language mode
286 | if let error {
287 | streamContinuation.finish(throwing: error)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:112:20: note: class 'SSHClient' does not conform to the 'Sendable' protocol
110 |
111 | /// Represents an SSH connection.
112 | public final class SSHClient {
| `- note: class 'SSHClient' does not conform to the 'Sendable' protocol
113 | private(set) var session: SSHClientSession
114 | private var userInitiatedClose = false
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:75:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
73 | done.completeWithTask {
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
76 | try await self.delegate.startShell(
| `- note: closure captures non-Sendable 'self'
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- note: closure captures non-Sendable 'shellContext'
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:83:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
81 | }
82 |
83 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
84 | for try await message in self.outbound.stream {
| `- note: closure captures 'self' which is accessible to code in the current task
85 | switch message.event {
86 | case .stdout(let data):
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:467:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
465 | )
466 |
467 | Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
468 | do {
469 | let stream = try await executeCommandStream(command, inShell: inShell)
| `- note: closure captures 'self' which is accessible to code in the current task
470 | for try await chunk in stream {
471 | switch chunk {
[893/897] Compiling Citadel ShellDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:40:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
38 | func handlerAdded(context: ChannelHandlerContext) {
39 | context.channel.setOption(ChannelOptions.allowRemoteHalfClosure, value: true).whenFailure { error in
40 | context.fireErrorCaught(error)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
41 | }
42 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:59:21: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
57 | guard let shell = shell, let parent = context.channel.parent else {
58 | _ = context.channel.triggerUserOutboundEvent(ChannelFailureEvent()).flatMap {
59 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
60 | return context.channel.close()
61 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:60:28: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
58 | _ = context.channel.triggerUserOutboundEvent(ChannelFailureEvent()).flatMap {
59 | self.configured.succeed(())
60 | return context.channel.close()
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
61 | }
62 | return
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:67:30: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
65 | parent.pipeline.handler(type: NIOSSHHandler.self).flatMap { handler in
66 | ShellServerSubsystem.setupChannelHanders(
67 | channel: context.channel,
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
68 | shell: shell,
69 | logger: .init(label: "nl.orlandos.citadel.sftp-server"),
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:73:31: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
71 | )
72 | }.flatMap { () -> EventLoopFuture<Void> in
73 | let promise = context.eventLoop.makePromise(of: Void.self)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
74 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
75 | self.configured.succeed(())
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:75:17: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
73 | let promise = context.eventLoop.makePromise(of: Void.self)
74 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
75 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
76 | return promise.futureResult
77 | }.whenFailure { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:78:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
76 | return promise.futureResult
77 | }.whenFailure { _ in
78 | context.channel.triggerUserOutboundEvent(ChannelFailureEvent(), promise: nil)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
79 | }
80 | case let event as SSHChannelRequestEvent.SubsystemRequest:
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:91:34: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
89 | parent.pipeline.handler(type: NIOSSHHandler.self).flatMap { handler in
90 | SFTPServerSubsystem.setupChannelHanders(
91 | channel: context.channel,
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
92 | sftp: sftp,
93 | logger: .init(label: "nl.orlandos.citadel.sftp-server"),
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:97:35: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
95 | )
96 | }.flatMap { () -> EventLoopFuture<Void> in
97 | let promise = context.eventLoop.makePromise(of: Void.self)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
98 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
99 | self.configured.succeed(())
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:99:21: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
97 | let promise = context.eventLoop.makePromise(of: Void.self)
98 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
99 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
100 | return promise.futureResult
101 | }.whenFailure { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:102:21: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
100 | return promise.futureResult
101 | }.whenFailure { _ in
102 | context.channel.triggerUserOutboundEvent(ChannelFailureEvent(), promise: nil)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
103 | }
104 | default:
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:114:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
112 | func channelRead(context: ChannelHandlerContext, data: NIOAny) {
113 | configured.futureResult.whenSuccess {
114 | context.fireChannelRead(data)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
115 | }
116 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:114:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
112 | func channelRead(context: ChannelHandlerContext, data: NIOAny) {
113 | configured.futureResult.whenSuccess {
114 | context.fireChannelRead(data)
| `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
115 | }
116 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/NIOAny.swift:45:15: note: struct 'NIOAny' does not conform to the 'Sendable' protocol
43 | /// }
44 | /// }
45 | public struct NIOAny {
| `- note: struct 'NIOAny' does not conform to the 'Sendable' protocol
46 | @usableFromInline
47 | let _storage: _NIOAny
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:163:49: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
161 | handlers.append(ExecHandler(delegate: exec, username: username))
162 |
163 | return channel.pipeline.addHandlers(handlers)
| `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
164 | case .directTCPIP(let request):
165 | guard let delegate = directTCPIP else {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:169:48: warning: type 'DataToBufferCodec' does not conform to the 'Sendable' protocol
167 | }
168 |
169 | return channel.pipeline.addHandler(DataToBufferCodec()).flatMap {
| `- warning: type 'DataToBufferCodec' does not conform to the 'Sendable' protocol
170 | return delegate.initializeDirectTCPIPChannel(
171 | channel,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/DirectTCPIP/Client/DirectTCPIP+Client.swift:4:13: note: class 'DataToBufferCodec' does not conform to the 'Sendable' protocol
2 | import NIOSSH
3 |
4 | final class DataToBufferCodec: ChannelDuplexHandler {
| `- note: class 'DataToBufferCodec' does not conform to the 'Sendable' protocol
5 | typealias InboundIn = SSHChannelData
6 | typealias InboundOut = ByteBuffer
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:261:21: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
259 |
260 | return channel.pipeline.addHandlers([
261 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
262 | role: .server(server),
263 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:270:21: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
:
268 | }
269 | ),
270 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
271 | ])
272 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:278:11: warning: type 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
:
276 | return try await bootstrap.bind(host: host, port: port).map { channel in
277 | SSHServer(channel: channel, logger: logger, delegate: delegate)
278 | }.get()
| `- warning: type 'SSHServer' does not conform to the 'Sendable' protocol
279 | }
280 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:102:47: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
100 | }
101 |
102 | done.futureResult.whenFailure(context.fireErrorCaught)
| `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
103 | }
104 |
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in a '@Sendable' closure
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in a '@Sendable' closure
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in a '@Sendable' closure
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in a '@Sendable' closure
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:84:46: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
82 |
83 | group.addTask {
84 | for try await message in self.outbound.stream {
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
85 | switch message.event {
86 | case .stdout(let data):
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:134:13: warning: type 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
132 |
133 | return channel.pipeline.addHandlers(
134 | SSHChannelDataUnwrapper(),
| `- warning: type 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ChannelUnwrapper.swift:4:13: note: class 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
2 | import NIOSSH
3 |
4 | final class SSHChannelDataUnwrapper: ChannelInboundHandler {
| `- note: class 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
5 | typealias InboundIn = SSHChannelData
6 | typealias InboundOut = ByteBuffer
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:135:13: warning: type 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
133 | return channel.pipeline.addHandlers(
134 | SSHChannelDataUnwrapper(),
135 | SSHOutboundChannelDataWrapper(),
| `- warning: type 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
136 | shellInboundHandler,
137 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ChannelUnwrapper.swift:30:13: note: class 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
28 | }
29 |
30 | final class SSHOutboundChannelDataWrapper: ChannelOutboundHandler {
| `- note: class 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
31 | typealias OutboundIn = ByteBuffer
32 | typealias OutboundOut = SSHChannelData
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:136:13: warning: type 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
134 | SSHChannelDataUnwrapper(),
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
| `- warning: type 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
137 | CloseErrorHandler(logger: logger)
138 | )
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:137:13: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
137 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
138 | )
139 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:6:13: note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:124:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
122 | context.channel.setOption(ChannelOptions.allowRemoteHalfClosure, value: true).whenFailure { error in
123 | self.logger.debug("Failed to set allowRemoteHalfClosure: \(error)")
124 | context.fireErrorCaught(error)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
125 | }
126 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:285:17: warning: capture of 'self' with non-sendable type 'SSHClient' in a '@Sendable' closure; this is an error in the Swift 6 language mode
283 | streamContinuation.yield(.stderr(stderr))
284 | case .eof(let error):
285 | self.logger.debug("EOF triggered, ending the command stream.")
| `- warning: capture of 'self' with non-sendable type 'SSHClient' in a '@Sendable' closure; this is an error in the Swift 6 language mode
286 | if let error {
287 | streamContinuation.finish(throwing: error)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:112:20: note: class 'SSHClient' does not conform to the 'Sendable' protocol
110 |
111 | /// Represents an SSH connection.
112 | public final class SSHClient {
| `- note: class 'SSHClient' does not conform to the 'Sendable' protocol
113 | private(set) var session: SSHClientSession
114 | private var userInitiatedClose = false
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:75:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
73 | done.completeWithTask {
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
76 | try await self.delegate.startShell(
| `- note: closure captures non-Sendable 'self'
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- note: closure captures non-Sendable 'shellContext'
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:83:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
81 | }
82 |
83 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
84 | for try await message in self.outbound.stream {
| `- note: closure captures 'self' which is accessible to code in the current task
85 | switch message.event {
86 | case .stdout(let data):
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:467:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
465 | )
466 |
467 | Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
468 | do {
469 | let stream = try await executeCommandStream(command, inShell: inShell)
| `- note: closure captures 'self' which is accessible to code in the current task
470 | for try await chunk in stream {
471 | switch chunk {
[894/897] Compiling Citadel TTY.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:40:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
38 | func handlerAdded(context: ChannelHandlerContext) {
39 | context.channel.setOption(ChannelOptions.allowRemoteHalfClosure, value: true).whenFailure { error in
40 | context.fireErrorCaught(error)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
41 | }
42 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:59:21: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
57 | guard let shell = shell, let parent = context.channel.parent else {
58 | _ = context.channel.triggerUserOutboundEvent(ChannelFailureEvent()).flatMap {
59 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
60 | return context.channel.close()
61 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:60:28: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
58 | _ = context.channel.triggerUserOutboundEvent(ChannelFailureEvent()).flatMap {
59 | self.configured.succeed(())
60 | return context.channel.close()
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
61 | }
62 | return
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:67:30: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
65 | parent.pipeline.handler(type: NIOSSHHandler.self).flatMap { handler in
66 | ShellServerSubsystem.setupChannelHanders(
67 | channel: context.channel,
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
68 | shell: shell,
69 | logger: .init(label: "nl.orlandos.citadel.sftp-server"),
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:73:31: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
71 | )
72 | }.flatMap { () -> EventLoopFuture<Void> in
73 | let promise = context.eventLoop.makePromise(of: Void.self)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
74 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
75 | self.configured.succeed(())
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:75:17: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
73 | let promise = context.eventLoop.makePromise(of: Void.self)
74 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
75 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
76 | return promise.futureResult
77 | }.whenFailure { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:78:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
76 | return promise.futureResult
77 | }.whenFailure { _ in
78 | context.channel.triggerUserOutboundEvent(ChannelFailureEvent(), promise: nil)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
79 | }
80 | case let event as SSHChannelRequestEvent.SubsystemRequest:
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:91:34: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
89 | parent.pipeline.handler(type: NIOSSHHandler.self).flatMap { handler in
90 | SFTPServerSubsystem.setupChannelHanders(
91 | channel: context.channel,
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
92 | sftp: sftp,
93 | logger: .init(label: "nl.orlandos.citadel.sftp-server"),
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:97:35: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
95 | )
96 | }.flatMap { () -> EventLoopFuture<Void> in
97 | let promise = context.eventLoop.makePromise(of: Void.self)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
98 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
99 | self.configured.succeed(())
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:99:21: warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
18 | }
19 |
20 | final class SubsystemHandler: ChannelDuplexHandler {
| `- note: class 'SubsystemHandler' does not conform to the 'Sendable' protocol
21 | typealias InboundIn = SSHChannelData
22 | typealias InboundOut = SSHChannelData
:
97 | let promise = context.eventLoop.makePromise(of: Void.self)
98 | context.channel.triggerUserOutboundEvent(ChannelSuccessEvent(), promise: promise)
99 | self.configured.succeed(())
| `- warning: capture of 'self' with non-sendable type 'SubsystemHandler' in a '@Sendable' closure
100 | return promise.futureResult
101 | }.whenFailure { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:102:21: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
100 | return promise.futureResult
101 | }.whenFailure { _ in
102 | context.channel.triggerUserOutboundEvent(ChannelFailureEvent(), promise: nil)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
103 | }
104 | default:
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:114:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
112 | func channelRead(context: ChannelHandlerContext, data: NIOAny) {
113 | configured.futureResult.whenSuccess {
114 | context.fireChannelRead(data)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
115 | }
116 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:114:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
112 | func channelRead(context: ChannelHandlerContext, data: NIOAny) {
113 | configured.futureResult.whenSuccess {
114 | context.fireChannelRead(data)
| `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
115 | }
116 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/NIOAny.swift:45:15: note: struct 'NIOAny' does not conform to the 'Sendable' protocol
43 | /// }
44 | /// }
45 | public struct NIOAny {
| `- note: struct 'NIOAny' does not conform to the 'Sendable' protocol
46 | @usableFromInline
47 | let _storage: _NIOAny
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:163:49: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
161 | handlers.append(ExecHandler(delegate: exec, username: username))
162 |
163 | return channel.pipeline.addHandlers(handlers)
| `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
164 | case .directTCPIP(let request):
165 | guard let delegate = directTCPIP else {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:169:48: warning: type 'DataToBufferCodec' does not conform to the 'Sendable' protocol
167 | }
168 |
169 | return channel.pipeline.addHandler(DataToBufferCodec()).flatMap {
| `- warning: type 'DataToBufferCodec' does not conform to the 'Sendable' protocol
170 | return delegate.initializeDirectTCPIPChannel(
171 | channel,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/DirectTCPIP/Client/DirectTCPIP+Client.swift:4:13: note: class 'DataToBufferCodec' does not conform to the 'Sendable' protocol
2 | import NIOSSH
3 |
4 | final class DataToBufferCodec: ChannelDuplexHandler {
| `- note: class 'DataToBufferCodec' does not conform to the 'Sendable' protocol
5 | typealias InboundIn = SSHChannelData
6 | typealias InboundOut = ByteBuffer
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:261:21: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
259 |
260 | return channel.pipeline.addHandlers([
261 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
262 | role: .server(server),
263 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:270:21: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
:
268 | }
269 | ),
270 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
271 | ])
272 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:278:11: warning: type 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
:
276 | return try await bootstrap.bind(host: host, port: port).map { channel in
277 | SSHServer(channel: channel, logger: logger, delegate: delegate)
278 | }.get()
| `- warning: type 'SSHServer' does not conform to the 'Sendable' protocol
279 | }
280 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:102:47: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
100 | }
101 |
102 | done.futureResult.whenFailure(context.fireErrorCaught)
| `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
103 | }
104 |
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in a '@Sendable' closure
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in a '@Sendable' closure
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in a '@Sendable' closure
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in a '@Sendable' closure
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:76:31: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
76 | try await self.delegate.startShell(
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:79:34: warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- warning: capture of 'shellContext' with non-sendable type 'SSHShellContext' in an isolated closure; this is an error in the Swift 6 language mode
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:35:15: note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
33 | }
34 |
35 | public struct SSHShellContext {
| `- note: consider making struct 'SSHShellContext' conform to the 'Sendable' protocol
36 | public struct WindowSize {
37 | public let columns: Int
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:84:46: warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
82 |
83 | group.addTask {
84 | for try await message in self.outbound.stream {
| `- warning: capture of 'self' with non-sendable type 'ShellServerInboundHandler' in an isolated closure; this is an error in the Swift 6 language mode
85 | switch message.event {
86 | case .stdout(let data):
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:134:13: warning: type 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
132 |
133 | return channel.pipeline.addHandlers(
134 | SSHChannelDataUnwrapper(),
| `- warning: type 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ChannelUnwrapper.swift:4:13: note: class 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
2 | import NIOSSH
3 |
4 | final class SSHChannelDataUnwrapper: ChannelInboundHandler {
| `- note: class 'SSHChannelDataUnwrapper' does not conform to the 'Sendable' protocol
5 | typealias InboundIn = SSHChannelData
6 | typealias InboundOut = ByteBuffer
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:135:13: warning: type 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
133 | return channel.pipeline.addHandlers(
134 | SSHChannelDataUnwrapper(),
135 | SSHOutboundChannelDataWrapper(),
| `- warning: type 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
136 | shellInboundHandler,
137 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ChannelUnwrapper.swift:30:13: note: class 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
28 | }
29 |
30 | final class SSHOutboundChannelDataWrapper: ChannelOutboundHandler {
| `- note: class 'SSHOutboundChannelDataWrapper' does not conform to the 'Sendable' protocol
31 | typealias OutboundIn = ByteBuffer
32 | typealias OutboundOut = SSHChannelData
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:136:13: warning: type 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
43 | }
44 |
45 | final class ShellServerInboundHandler: ChannelInboundHandler {
| `- note: class 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
46 | typealias InboundIn = ByteBuffer
47 |
:
134 | SSHChannelDataUnwrapper(),
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
| `- warning: type 'ShellServerInboundHandler' does not conform to the 'Sendable' protocol
137 | CloseErrorHandler(logger: logger)
138 | )
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:137:13: warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
135 | SSHOutboundChannelDataWrapper(),
136 | shellInboundHandler,
137 | CloseErrorHandler(logger: logger)
| `- warning: type 'CloseErrorHandler' does not conform to the 'Sendable' protocol
138 | )
139 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:6:13: note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
4 | import NIOConcurrencyHelpers
5 |
6 | final class CloseErrorHandler: ChannelInboundHandler {
| `- note: class 'CloseErrorHandler' does not conform to the 'Sendable' protocol
7 | typealias InboundIn = Any
8 | let logger: Logger
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:124:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
122 | context.channel.setOption(ChannelOptions.allowRemoteHalfClosure, value: true).whenFailure { error in
123 | self.logger.debug("Failed to set allowRemoteHalfClosure: \(error)")
124 | context.fireErrorCaught(error)
| `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
125 | }
126 | }
/Users/admin/builder/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>
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:285:17: warning: capture of 'self' with non-sendable type 'SSHClient' in a '@Sendable' closure; this is an error in the Swift 6 language mode
283 | streamContinuation.yield(.stderr(stderr))
284 | case .eof(let error):
285 | self.logger.debug("EOF triggered, ending the command stream.")
| `- warning: capture of 'self' with non-sendable type 'SSHClient' in a '@Sendable' closure; this is an error in the Swift 6 language mode
286 | if let error {
287 | streamContinuation.finish(throwing: error)
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:112:20: note: class 'SSHClient' does not conform to the 'Sendable' protocol
110 |
111 | /// Represents an SSH connection.
112 | public final class SSHClient {
| `- note: class 'SSHClient' does not conform to the 'Sendable' protocol
113 | private(set) var session: SSHClientSession
114 | private var userInitiatedClose = false
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:75:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
73 | done.completeWithTask {
74 | try await withThrowingTaskGroup(of: Void.self) { group in
75 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
76 | try await self.delegate.startShell(
| `- note: closure captures non-Sendable 'self'
77 | inbound: self.inbound.stream,
78 | outbound: ShellOutboundWriter(continuation: self.outbound.continuation),
79 | context: shellContext
| `- note: closure captures non-Sendable 'shellContext'
80 | )
81 | }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Shell/Server/ShellDelegate.swift:83:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
81 | }
82 |
83 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
84 | for try await message in self.outbound.stream {
| `- note: closure captures 'self' which is accessible to code in the current task
85 | switch message.event {
86 | case .stdout(let data):
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/TTY/Client/TTY.swift:467:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
465 | )
466 |
467 | Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
468 | do {
469 | let stream = try await executeCommandStream(command, inShell: inShell)
| `- note: closure captures 'self' which is accessible to code in the current task
470 | for try await chunk in stream {
471 | switch chunk {
[895/904] Compiling CitadelServerExample Terminal.swift
[896/904] Compiling CitadelServerExample Extensions.swift
[897/904] Compiling CitadelServerExample HostKeyFile.swift
[898/904] Compiling CitadelServerExample Server.swift
/Users/admin/builder/spi-builder-workspace/Sources/CitadelServerExample/Server.swift:24:42: warning: non-sendable result type 'SSHServer' cannot be sent from nonisolated context in call to static method 'host(host:port:hostKeys:algorithms:protocolOptions:logger:authenticationDelegate:group:)'; this is an error in the Swift 6 language mode
22 | }
23 |
24 | let server = try await SSHServer.host(
| `- warning: non-sendable result type 'SSHServer' cannot be sent from nonisolated context in call to static method 'host(host:port:hostKeys:algorithms:protocolOptions:logger:authenticationDelegate:group:)'; this is an error in the Swift 6 language mode
25 | host: "localhost",
26 | port: 2323,
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:186:20: note: class 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
/Users/admin/builder/spi-builder-workspace/Sources/CitadelServerExample/Server.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Citadel'
1 | import Citadel
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Citadel'
2 | import Crypto
3 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/CitadelServerExample/Server.swift:52:36: warning: type 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
50 | ) {
51 | if case .password(.init(password: password)) = request.request, request.username == username {
52 | return responsePromise.succeed(.success)
| `- warning: type 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
53 | }
54 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/User Authentication/UserAuthenticationMethod.swift:211:13: note: enum 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
209 |
210 | /// The outcome of a user authentication attempt.
211 | public enum NIOSSHUserAuthenticationOutcome {
| `- note: enum 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
212 | case success
213 | case partialSuccess(remainingMethods: NIOSSHAvailableUserAuthenticationMethods)
/Users/admin/builder/spi-builder-workspace/Sources/CitadelServerExample/Server.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'NIOSSH'
3 | import Foundation
4 | import NIO
5 | import NIOSSH
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'NIOSSH'
6 |
7 | @main struct ExampleSSHServer {
/Users/admin/builder/spi-builder-workspace/Sources/CitadelServerExample/Server.swift:55:32: warning: type 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
53 | }
54 |
55 | return responsePromise.succeed(.failure)
| `- warning: type 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
56 | }
57 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/User Authentication/UserAuthenticationMethod.swift:211:13: note: enum 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
209 |
210 | /// The outcome of a user authentication attempt.
211 | public enum NIOSSHUserAuthenticationOutcome {
| `- note: enum 'NIOSSHUserAuthenticationOutcome' does not conform to the 'Sendable' protocol
212 | case success
213 | case partialSuccess(remainingMethods: NIOSSHAvailableUserAuthenticationMethods)
[899/904] Emitting module CitadelServerExample
[900/904] Compiling CitadelServerExample BasicCommands.swift
[901/904] Compiling CitadelServerExample EchoShell.swift
[901/904] Write Objects.LinkFileList
[902/904] Linking CitadelServerExample
[903/904] Applying CitadelServerExample
Build complete! (34.41s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-nio-ssh",
"requirement" : {
"range" : [
{
"lower_bound" : "0.3.4",
"upper_bound" : "0.4.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/Joannis/swift-nio-ssh.git"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
},
{
"identity" : "bigint",
"requirement" : {
"range" : [
{
"lower_bound" : "5.2.0",
"upper_bound" : "6.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/attaswift/BigInt.git"
},
{
"identity" : "swift-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "3.12.3",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-crypto.git"
},
{
"identity" : "colorizeswift",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/mtynior/ColorizeSwift.git"
}
],
"manifest_display_name" : "Citadel",
"name" : "Citadel",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "ios",
"version" : "14.0"
}
],
"products" : [
{
"name" : "Citadel",
"targets" : [
"Citadel"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CitadelServerExample",
"targets" : [
"CitadelServerExample"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "CitadelTests",
"module_type" : "SwiftTarget",
"name" : "CitadelTests",
"path" : "Tests/CitadelTests",
"product_dependencies" : [
"NIOSSH",
"BigInt",
"Logging"
],
"sources" : [
"Citadel2Tests.swift",
"EndToEndTests.swift",
"KeyTests.swift"
],
"target_dependencies" : [
"Citadel"
],
"type" : "test"
},
{
"c99name" : "CitadelServerExample",
"module_type" : "SwiftTarget",
"name" : "CitadelServerExample",
"path" : "Sources/CitadelServerExample",
"product_dependencies" : [
"ColorizeSwift"
],
"product_memberships" : [
"CitadelServerExample"
],
"sources" : [
"EchoShell/BasicCommands.swift",
"EchoShell/EchoShell.swift",
"EchoShell/Extensions.swift",
"EchoShell/Terminal.swift",
"HostKeyFile.swift",
"Server.swift"
],
"target_dependencies" : [
"Citadel"
],
"type" : "executable"
},
{
"c99name" : "Citadel",
"module_type" : "SwiftTarget",
"name" : "Citadel",
"path" : "Sources/Citadel",
"product_dependencies" : [
"NIOSSH",
"Crypto",
"_CryptoExtras",
"BigInt",
"Logging"
],
"product_memberships" : [
"Citadel",
"CitadelServerExample"
],
"sources" : [
"Algorithms/AES.swift",
"Algorithms/DH-Helpers.swift",
"Algorithms/DiffieHellmanGroup14Sha1.swift",
"Algorithms/DiffieHellmanGroup14Sha256.swift",
"Algorithms/RSA.swift",
"BCrypt.swift",
"ByteBufferHelpers.swift",
"ChannelUnwrapper.swift",
"Client.swift",
"ClientSession.swift",
"DirectTCPIP/Client/DirectTCPIP+Client.swift",
"DirectTCPIP/Server/DirectTCPIP+Server.swift",
"Errors.swift",
"Exec/Client/ExecClient.swift",
"Exec/Server/ExecDelegate.swift",
"Exec/Server/ExecHandler.swift",
"NIOGlueHandler.swift",
"OpenSSHKey.swift",
"SFTP/Client/SFTPClient.swift",
"SFTP/Client/SFTPClientInboundHandler.swift",
"SFTP/Client/SFTPFile.swift",
"SFTP/SFTPBasicEnums.swift",
"SFTP/SFTPFileFlags.swift",
"SFTP/SFTPMessage.swift",
"SFTP/SFTPMessageParser.swift",
"SFTP/SFTPSerializer.swift",
"SFTP/Server/SFTPServer.swift",
"SFTP/Server/SFTPServerInboundHandler.swift",
"SSHAuthenticationMethod.swift",
"SSHCert.swift",
"SSHConnectionPoolSettings.swift",
"SSHKeyTypeDetection.swift",
"Server.swift",
"Shell/Server/ShellDelegate.swift",
"TTY/Client/TTY.swift"
],
"target_dependencies" : [
"CCitadelBcrypt"
],
"type" : "library"
},
{
"c99name" : "CCitadelBcrypt",
"module_type" : "ClangTarget",
"name" : "CCitadelBcrypt",
"path" : "Sources/CCitadelBcrypt",
"product_memberships" : [
"Citadel",
"CitadelServerExample"
],
"sources" : [
"bcrypt-kdf.c",
"bcrypt.c",
"blf.c"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/orlandos-nl/citadel/0.11.1
Repository: orlandos-nl/Citadel
Swift version used: 6.1
Target: Citadel
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
* branch 4633b45fc732d8c55568be09dd852f9dc1582c25 -> FETCH_HEAD
HEAD is now at 4633b45 Update the artifact
Cloned https://github.com/swiftlang/swift-docc-render-artifact
Extracting symbol information for 'Citadel'...
Finished extracting symbol information for 'Citadel'. (16.16s)
Building documentation for 'Citadel'...
Finished building documentation for 'Citadel' (0.44s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/orlandos-nl/citadel/0.11.1
Updating https://github.com/Joannis/swift-nio-ssh.git
Updating https://github.com/apple/swift-nio.git
Updating https://github.com/mtynior/ColorizeSwift.git
Updating https://github.com/attaswift/BigInt.git
Updating https://github.com/apple/swift-system.git
Updating https://github.com/apple/swift-collections.git
Updating https://github.com/apple/swift-log.git
Updated https://github.com/apple/swift-log.git (0.55s)
Updated https://github.com/attaswift/BigInt.git (0.55s)
Updated https://github.com/mtynior/ColorizeSwift.git (0.55s)
Updated https://github.com/apple/swift-system.git (0.55s)
Updated https://github.com/apple/swift-collections.git (0.55s)
Fetching https://github.com/swiftlang/swift-docc-plugin from cache
Updating https://github.com/apple/swift-crypto.git
Updated https://github.com/apple/swift-nio.git (0.80s)
Updated https://github.com/Joannis/swift-nio-ssh.git (0.80s)
Updated https://github.com/apple/swift-crypto.git (0.51s)
Updating https://github.com/apple/swift-asn1.git
Updating https://github.com/apple/swift-atomics.git
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.64s)
Computing version for https://github.com/mtynior/ColorizeSwift.git
Updated https://github.com/apple/swift-atomics.git (0.44s)
Updated https://github.com/apple/swift-asn1.git (0.44s)
Computed https://github.com/mtynior/ColorizeSwift.git at 1.6.0 (1.81s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 3.12.3 (1.03s)
Computing version for https://github.com/attaswift/BigInt.git
Computed https://github.com/attaswift/BigInt.git at 5.3.0 (0.57s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.5.4 (0.56s)
Computing version for https://github.com/Joannis/swift-nio-ssh.git
Computed https://github.com/Joannis/swift-nio-ssh.git at 0.3.4 (0.49s)
Computing version for https://github.com/apple/swift-asn1.git
Computed https://github.com/apple/swift-asn1.git at 1.4.0 (0.61s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.3.0 (0.50s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.84.0 (0.77s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.5.0 (0.49s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.2.0 (0.57s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.5 (0.63s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.84s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.54s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.5
Building for debugging...
[0/7] Write snippet-extract-tool-entitlement.plist
[1/8] Write sources
[4/8] Write swift-version-2F0A5646E1D333AE.txt
[6/53] Compiling SymbolKit DeclarationFragments.swift
[7/53] Compiling SymbolKit Fragment.swift
[8/53] Compiling SymbolKit FragmentKind.swift
[9/53] Compiling SymbolKit FunctionParameter.swift
[10/53] Compiling SymbolKit FunctionSignature.swift
[11/57] Compiling SymbolKit SemanticVersion.swift
[12/57] Compiling SymbolKit AccessControl.swift
[13/57] Compiling SymbolKit Availability.swift
[14/57] Compiling SymbolKit AvailabilityItem.swift
[15/57] Compiling SymbolKit Domain.swift
[16/57] Compiling SymbolKit Mixin+Equals.swift
[17/57] Compiling SymbolKit Mixin+Hash.swift
[18/57] Compiling SymbolKit Mixin.swift
[19/57] Compiling SymbolKit LineList.swift
[20/57] Compiling SymbolKit Position.swift
[21/57] Compiling SymbolKit Names.swift
[22/57] Compiling SymbolKit SPI.swift
[23/57] Compiling SymbolKit Snippet.swift
[24/57] Compiling SymbolKit Extension.swift
[25/57] Compiling SymbolKit GenericConstraint.swift
[26/57] Compiling SymbolKit GenericParameter.swift
[27/57] Compiling SymbolKit Generics.swift
[28/57] Compiling SymbolKit Namespace.swift
[29/57] Emitting module SymbolKit
[30/57] Compiling SymbolKit SourceRange.swift
[31/57] Compiling SymbolKit Metadata.swift
[32/57] Compiling SymbolKit Module.swift
[33/57] Compiling SymbolKit OperatingSystem.swift
[34/57] Compiling SymbolKit Platform.swift
[35/57] Compiling SymbolKit Relationship.swift
[36/57] Compiling SymbolKit RelationshipKind.swift
[37/57] Compiling SymbolKit SourceOrigin.swift
[38/57] Compiling SymbolKit GenericConstraints.swift
[39/57] Compiling SymbolKit Swift.swift
[40/57] Compiling SymbolKit Identifier.swift
[41/57] Compiling SymbolKit KindIdentifier.swift
[42/57] Compiling SymbolKit Location.swift
[43/57] Compiling SymbolKit Mutability.swift
[44/57] Compiling SymbolKit Symbol.swift
[45/57] Compiling SymbolKit SymbolKind.swift
[46/57] Compiling SymbolKit SymbolGraph.swift
[47/57] Compiling SymbolKit GraphCollector.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Emitting module Snippets
[53/57] Compiling Snippets Snippet.swift
[54/57] Compiling Snippets SnippetParser.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (5.33s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/172] Compiling InternalCollectionsUtilities Debugging.swift
[3/172] Compiling InternalCollectionsUtilities _UniqueCollection.swift
[4/173] Compiling InternalCollectionsUtilities Descriptions.swift
[5/173] Compiling Crypto ASN1.swift
[6/173] Compiling Crypto ASN1Any.swift
[7/174] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[8/174] Compiling InternalCollectionsUtilities RandomAccessCollection+Offsets.swift
[9/174] Compiling SwiftASN1 TimeUtilities.swift
[10/174] Compiling SwiftASN1 UTCTime.swift
[11/174] Compiling Logging MetadataProvider.swift
[12/174] Compiling SwiftASN1 ObjectIdentifier.swift
[13/174] Compiling SwiftASN1 PEMDocument.swift
[14/174] Compiling Crypto HPKE-KexKeyDerivation.swift
[15/174] Compiling Crypto HPKE-LabeledExtract.swift
[16/174] Compiling Crypto HPKE-Utils.swift
[17/174] Compiling Crypto DHKEM.swift
[18/174] Compiling Crypto HPKE-KEM-Curve25519.swift
[19/174] Compiling Crypto HPKE-NIST-EC-KEMs.swift
[20/174] Compiling Crypto HPKE-KEM.swift
[21/174] Compiling Crypto HPKE-Errors.swift
[22/182] Compiling NIOConcurrencyHelpers NIOLock.swift
[23/182] Compiling SwiftASN1 ArraySliceBigint.swift
[24/182] Compiling Crypto ASN1Integer.swift
[25/182] Compiling Logging Locks.swift
[26/182] Compiling Crypto ASN1BitString.swift
[27/182] Compiling Crypto ASN1Boolean.swift
[34/182] Emitting module _NIOBase64
[35/182] Compiling _NIOBase64 Base64.swift
[36/182] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[37/182] Compiling BigInt Addition.swift
[38/182] Compiling BigInt BigInt.swift
[39/182] Compiling SwiftASN1 ASN1Any.swift
[40/182] Compiling SwiftASN1 ASN1BitString.swift
[41/182] Compiling SwiftASN1 ASN1Boolean.swift
[42/182] Compiling SwiftASN1 ASN1Identifier.swift
[45/182] Compiling CryptoBoringWrapper CryptoKitErrors_boring.swift
[46/182] Compiling Atomics UnsafeAtomicLazyReference.swift
[47/182] Compiling Atomics IntegerOperations.swift
[48/182] Compiling Atomics Unmanaged extensions.swift
[49/182] Compiling CryptoBoringWrapper resource_bundle_accessor.swift
[50/182] Compiling Crypto Digest_boring.swift
[51/182] Compiling Crypto Digest.swift
[52/182] Compiling Crypto Digests.swift
[53/182] Compiling Crypto HashFunctions.swift
[54/182] Compiling Crypto HashFunctions_SHA2.swift
[55/182] Compiling Crypto HPKE-AEAD.swift
[56/182] Compiling Crypto HPKE-Ciphersuite.swift
[57/182] Compiling Crypto HPKE-KDF.swift
[60/182] Compiling BigInt Strideable.swift
[61/182] Compiling Crypto PEMDocument.swift
[62/182] Compiling Crypto PKCS8PrivateKey.swift
[63/182] Compiling Crypto SEC1PrivateKey.swift
[64/182] Compiling Crypto SubjectPublicKeyInfo.swift
[65/182] Compiling Crypto CryptoKitErrors.swift
[66/182] Compiling Crypto Curve25519.swift
[67/182] Compiling Crypto Ed25519Keys.swift
[68/182] Compiling Crypto NISTCurvesKeys.swift
[69/182] Compiling Crypto X25519Keys.swift
[70/182] Compiling Crypto SymmetricKeys.swift
[71/182] Compiling Crypto HMAC.swift
[72/182] Compiling Crypto MACFunctions.swift
[73/182] Compiling Crypto MessageAuthenticationCode.swift
[74/182] Compiling Crypto AES.swift
[75/182] Compiling Crypto ECDSASignature_boring.swift
[76/182] Compiling Crypto ECDSA_boring.swift
[77/182] Compiling Crypto EdDSA_boring.swift
[78/182] Compiling Crypto ECDSA.swift
[79/182] Compiling Crypto Ed25519.swift
[80/182] Compiling Crypto Signature.swift
[81/182] Compiling Crypto CryptoKitErrors_boring.swift
[82/182] Compiling Crypto HPKE.swift
[83/182] Compiling Crypto HPKE-Context.swift
[84/182] Compiling Crypto HPKE-KeySchedule.swift
[85/182] Compiling Crypto HPKE-Modes.swift
[86/182] Compiling Crypto Insecure.swift
[87/182] Compiling Crypto Insecure_HashFunctions.swift
[88/182] Compiling Crypto KEM.swift
[89/182] Compiling Crypto ECDH_boring.swift
[90/182] Compiling Crypto DH.swift
[91/182] Compiling Crypto ECDH.swift
[92/182] Compiling Crypto HKDF.swift
[93/182] Compiling Crypto AESWrap.swift
[94/182] Compiling Crypto AESWrap_boring.swift
[95/182] Compiling Crypto Ed25519_boring.swift
[96/182] Compiling Crypto NISTCurvesKeys_boring.swift
[97/182] Compiling Crypto X25519Keys_boring.swift
[98/182] Compiling _NIODataStructures PriorityQueue.swift
[99/182] Compiling _NIODataStructures _TinyArray.swift
[100/182] Emitting module Logging
[103/182] Compiling _NIODataStructures Heap.swift
[104/182] Compiling NIOConcurrencyHelpers lock.swift
[105/182] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[106/182] Emitting module CryptoBoringWrapper
[107/182] Compiling CryptoBoringWrapper BoringSSLAEAD.swift
[108/182] Emitting module Crypto
[109/182] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[110/182] Compiling NIOConcurrencyHelpers atomics.swift
[111/182] Emitting module _NIODataStructures
[114/182] Compiling CryptoBoringWrapper RandomBytes.swift
[117/182] Compiling CryptoBoringWrapper FiniteFieldArithmeticContext.swift
[118/182] Emitting module NIOConcurrencyHelpers
[121/184] Emitting module BigInt
[122/184] Emitting module InternalCollectionsUtilities
[137/201] Compiling SwiftASN1 DER.swift
[138/201] Compiling DequeModule Deque+Testing.swift
[139/201] Compiling DequeModule Deque._Storage.swift
[146/201] Compiling DequeModule Deque._UnsafeHandle.swift
[147/201] Compiling DequeModule Deque.swift
[148/201] Compiling DequeModule Deque+Equatable.swift
[149/201] Compiling DequeModule Deque+ExpressibleByArrayLiteral.swift
[150/201] Compiling CryptoBoringWrapper EllipticCurvePoint.swift
[151/201] Compiling CryptoBoringWrapper EllipticCurve.swift
[152/201] Compiling CryptoBoringWrapper ArbitraryPrecisionInteger.swift
[153/201] Compiling DequeModule _DequeBuffer.swift
[154/201] Compiling DequeModule _DequeBufferHeader.swift
[155/201] Compiling DequeModule _DequeSlot.swift
[156/201] Compiling DequeModule Deque+Extras.swift
[157/201] Compiling DequeModule Deque+Hashable.swift
[158/202] Compiling DequeModule Deque+CustomReflectable.swift
[159/202] Compiling DequeModule Deque+Descriptions.swift
[160/202] Compiling DequeModule Deque+Codable.swift
[161/202] Compiling SwiftASN1 Errors.swift
[164/202] Compiling Logging LogHandler.swift
[165/202] Compiling Logging Logging.swift
[166/202] Compiling Crypto RNG_boring.swift
[167/202] Compiling Crypto SafeCompare_boring.swift
[168/202] Compiling Crypto Zeroization_boring.swift
[169/202] Compiling Crypto PrettyBytes.swift
[170/202] Compiling Crypto SafeCompare.swift
[171/202] Compiling Crypto SecureBytes.swift
[172/202] Compiling Crypto Zeroization.swift
[173/202] Compiling Crypto resource_bundle_accessor.swift
[174/202] Compiling DequeModule Deque+Collection.swift
[187/202] Compiling DequeModule _UnsafeWrappedBuffer.swift
[198/202] Compiling BigInt Subtraction.swift
[199/202] Compiling BigInt Words and Bits.swift
[200/202] Emitting module DequeModule
[201/202] Emitting module Atomics
[202/202] Emitting module SwiftASN1
[203/313] Compiling _CryptoExtras AES_GCM_SIV_boring.swift
[204/313] Compiling _CryptoExtras ARC+API.swift
[205/313] Compiling _CryptoExtras ARC.swift
[206/313] Compiling _CryptoExtras ARCCredential.swift
[207/313] Compiling _CryptoExtras ARCEncoding.swift
[208/313] Compiling _CryptoExtras ARCPrecredential.swift
[209/313] Compiling _CryptoExtras ARCPresentation.swift
[210/319] Compiling _CryptoExtras ARCRequest.swift
[211/319] Compiling _CryptoExtras ARCResponse.swift
[212/319] Compiling _CryptoExtras ARCServer.swift
[213/319] Compiling _CryptoExtras KDF.swift
[214/319] Compiling _CryptoExtras PBKDF2_boring.swift
[215/319] Compiling _CryptoExtras PBKDF2_commoncrypto.swift
[216/319] Compiling _CryptoExtras PBKDF2.swift
[217/319] Compiling _CryptoExtras AES_CBC.swift
[218/319] Compiling _CryptoExtras AES_CFB.swift
[219/319] Compiling _CryptoExtras AES_CTR.swift
[220/319] Compiling _CryptoExtras AES_GCM_SIV.swift
[221/319] Compiling _CryptoExtras Block Function.swift
[222/319] Compiling _CryptoExtras AES_CFB_boring.swift
[223/319] Compiling _CryptoExtras AES_CTR_boring.swift
[224/319] Compiling NIOCore SocketOptionProvider.swift
[225/319] Compiling NIOCore SystemCallHelpers.swift
[226/319] Compiling NIOCore TimeAmount+Duration.swift
[227/319] Compiling NIOCore TypeAssistedChannelHandler.swift
[228/319] Compiling NIOCore UniversalBootstrapSupport.swift
[229/319] Compiling NIOCore Utilities.swift
[230/319] Emitting module _CryptoExtras
[231/324] Compiling _CryptoExtras RSA_security.swift
[232/324] Compiling _CryptoExtras BoringSSLHelpers.swift
[233/324] Compiling _CryptoExtras CryptoKitErrors_boring.swift
[234/324] Compiling _CryptoExtras DigestType.swift
[235/324] Compiling _CryptoExtras Error.swift
[236/324] Compiling _CryptoExtras I2OSP.swift
[237/324] Compiling _CryptoExtras IntegerEncoding.swift
[238/324] Compiling _CryptoExtras PEMDocument.swift
[239/324] Compiling _CryptoExtras PrettyBytes.swift
[240/324] Compiling _CryptoExtras SubjectPublicKeyInfo.swift
[241/324] Compiling _CryptoExtras Scrypt_boring.swift
[242/324] Compiling _CryptoExtras ChaCha20CTR_boring.swift
[243/324] Compiling _CryptoExtras ChaCha20CTR.swift
[244/324] Compiling _CryptoExtras ECToolbox_boring.swift
[245/324] Compiling _CryptoExtras ECToolbox.swift
[246/324] Compiling _CryptoExtras HashToField.swift
[265/324] Compiling _CryptoExtras VOPRFClient.swift
[266/324] Compiling _CryptoExtras VOPRFServer.swift
[267/324] Compiling _CryptoExtras RSA+BlindSigning.swift
[268/324] Compiling _CryptoExtras RSA.swift
[269/324] Compiling _CryptoExtras RSA_boring.swift
[270/324] Compiling NIOCore EventLoopFuture+AssumeIsolated.swift
[271/324] Compiling NIOCore EventLoopFuture+Deprecated.swift
[272/324] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[273/324] Compiling NIOCore EventLoopFuture.swift
[274/324] Compiling NIOCore FileDescriptor.swift
[275/324] Compiling NIOCore FileHandle.swift
[276/324] Compiling NIOCore FileRegion.swift
[277/324] Compiling _CryptoExtras VOPRF+API.swift
[283/324] Compiling _CryptoExtras DLEQ.swift
[285/324] Compiling _CryptoExtras Prover.swift
[286/324] Compiling _CryptoExtras Verifier.swift
[287/324] Compiling _CryptoExtras ZKPToolbox.swift
[288/324] Compiling _CryptoExtras resource_bundle_accessor.swift
[291/324] Compiling _CryptoExtras Scrypt.swift
[292/324] Compiling _CryptoExtras OPRF.swift
[293/324] Compiling _CryptoExtras OPRFClient.swift
[294/324] Compiling _CryptoExtras OPRFServer.swift
[306/324] Compiling NIOCore ByteBuffer-multi-int.swift
[307/324] Compiling NIOCore ByteBuffer-quicBinaryEncodingStrategy.swift
[308/324] Compiling NIOCore ByteBuffer-views.swift
[309/324] Emitting module NIOCore
[310/377] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[311/377] Compiling NIOEmbedded AsyncTestingChannel.swift
[312/377] Compiling NIOEmbedded Embedded.swift
[313/377] Emitting module NIOEmbedded
[314/377] Compiling NIOPosix BSDSocketAPICommon.swift
[315/377] Compiling NIOPosix BSDSocketAPIPosix.swift
[316/377] Compiling NIOPosix BSDSocketAPIWindows.swift
[317/377] Compiling NIOPosix BaseSocket.swift
[318/377] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[319/377] Compiling NIOPosix BaseSocketChannel.swift
[320/382] Compiling NIOPosix Pool.swift
[321/382] Compiling NIOPosix PosixSingletons+ConcurrencyTakeOver.swift
[322/382] Compiling NIOPosix PosixSingletons.swift
[323/382] Compiling NIOPosix RawSocketBootstrap.swift
[324/382] Compiling NIOPosix Resolver.swift
[325/382] Compiling NIOPosix GetaddrinfoResolver.swift
[326/382] Compiling NIOPosix HappyEyeballs.swift
[327/382] Compiling NIOPosix IO.swift
[328/382] Compiling NIOPosix IntegerBitPacking.swift
[329/382] Compiling NIOPosix IntegerTypes.swift
[330/382] Compiling NIOPosix Linux.swift
[331/382] Compiling NIOPosix SocketProtocols.swift
[332/382] Compiling NIOPosix System.swift
[333/382] Compiling NIOPosix Thread.swift
[334/382] Compiling NIOPosix ThreadPosix.swift
[335/382] Compiling NIOPosix ThreadWindows.swift
[336/382] Compiling NIOPosix LinuxCPUSet.swift
[337/382] Compiling NIOPosix LinuxUring.swift
[338/382] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[339/382] Compiling NIOPosix NIOPosixSendableMetatype.swift
[340/382] Compiling NIOPosix NIOThreadPool.swift
[341/382] Compiling NIOPosix SelectorKqueue.swift
[342/382] Compiling NIOPosix SelectorUring.swift
[343/382] Compiling NIOPosix ServerSocket.swift
[344/382] Compiling NIOPosix Socket.swift
[345/382] Compiling NIOPosix SocketChannel.swift
[346/382] Compiling NIOPosix BaseStreamSocketChannel.swift
[347/382] Compiling NIOPosix Bootstrap.swift
[348/382] Compiling NIOPosix ControlMessage.swift
[349/382] Compiling NIOPosix DatagramVectorReadManager.swift
[350/382] Compiling NIOPosix Errors+Any.swift
[351/382] Compiling NIOPosix FileDescriptor.swift
[352/382] Emitting module NIOPosix
[353/382] Compiling NIOPosix Selectable.swift
[354/382] Compiling NIOPosix SelectableChannel.swift
[355/382] Compiling NIOPosix SelectableEventLoop.swift
[356/382] Compiling NIOPosix SelectorEpoll.swift
[357/382] Compiling NIOPosix SelectorGeneric.swift
[358/382] Compiling NIOPosix NonBlockingFileIO.swift
[359/382] Compiling NIOPosix PendingDatagramWritesManager.swift
[360/382] Compiling NIOPosix PendingWritesManager.swift
[361/382] Compiling NIOPosix PipeChannel.swift
[362/382] Compiling NIOPosix PipePair.swift
[363/382] Compiling NIOPosix UnsafeTransfer.swift
[364/382] Compiling NIOPosix Utilities.swift
[365/382] Compiling NIOPosix VsockAddress.swift
[366/382] Compiling NIOPosix VsockChannelEvents.swift
[367/382] Compiling NIOPosix resource_bundle_accessor.swift
[368/384] Emitting module NIO
[369/384] Compiling NIO Exports.swift
[370/389] Compiling NIOFoundationCompat Codable+ByteBuffer.swift
[371/389] Compiling NIOFoundationCompat JSONSerialization+ByteBuffer.swift
[372/389] Compiling NIOFoundationCompat WaitSpinningRunLoop.swift
[373/389] Emitting module NIOFoundationCompat
[374/389] Compiling NIOFoundationCompat ByteBuffer-foundation.swift
[375/450] Compiling NIOSSH NIOSSHError.swift
[376/450] Compiling NIOSSH NIOSSHHandler.swift
[377/450] Compiling NIOSSH NIOSSHSendable.swift
[378/450] Compiling NIOSSH ECDHCompatibleKey.swift
[379/450] Compiling NIOSSH EllipticCurveKeyExchange.swift
[380/450] Compiling NIOSSH SSHKeyExchangeResult.swift
[381/450] Compiling NIOSSH SSHKeyExchangeStateMachine.swift
[382/450] Compiling NIOSSH ClientServerAuthenticationDelegate.swift
[383/450] Compiling NIOSSH CustomKeys.swift
[384/450] Compiling NIOSSH NIOSSHCertifiedPublicKey.swift
[385/450] Compiling NIOSSH SSHChannelType.swift
[386/450] Compiling NIOSSH SSHChildChannel.swift
[387/450] Compiling NIOSSH AcceptsChannelMessages.swift
[388/450] Compiling NIOSSH ActiveState.swift
[389/450] Compiling NIOSSH IdleState.swift
[390/450] Compiling NIOSSH RekeyingState.swift
[391/450] Compiling NIOSSH SentKexInitWhenActiveState.swift
[392/450] Compiling NIOSSH SentNewKeysState.swift
[393/450] Compiling NIOSSH SentVersionState.swift
[394/450] Compiling NIOSSH UserAuthenticationState.swift
[395/450] Compiling NIOSSH Constants.swift
[396/450] Compiling NIOSSH GlobalRequestDelegate.swift
[397/456] Emitting module NIOSSH
[398/456] Compiling NIOSSH ByteBuffer+SSH.swift
[399/456] Compiling NIOSSH CSPRNG.swift
[400/456] Compiling NIOSSH ChildChannelOptions.swift
[401/456] Compiling NIOSSH ChildChannelStateMachine.swift
[402/456] Compiling NIOSSH ChildChannelUserEvents.swift
[403/456] Compiling NIOSSH ChildChannelWindowManager.swift
[404/456] Compiling NIOSSH ChildChannelWritabilityManager.swift
[405/456] Compiling NIOSSH SSHServerConfiguration.swift
[406/456] Compiling NIOSSH SSHTerminalModes.swift
[407/456] Compiling NIOSSH AESGCM.swift
[408/456] Compiling NIOSSH SSHTransportProtection.swift
[409/456] Compiling NIOSSH ClientUserAuthenticationDelegate.swift
[410/456] Compiling NIOSSH DenyAllServerAuthDelegate.swift
[413/456] Compiling NIOSSH KeyExchangeState.swift
[414/456] Compiling NIOSSH ReceivedKexInitWhenActiveState.swift
[415/456] Compiling NIOSSH ReceivedNewKeysState.swift
[416/456] Compiling NIOSSH RekeyingReceivedNewKeysState.swift
[417/456] Compiling NIOSSH RekeyingSentNewKeysState.swift
[418/456] Compiling NIOSSH AcceptsKeyExchangeMessages.swift
[419/456] Compiling NIOSSH AcceptsUserAuthMessages.swift
[420/456] Compiling NIOSSH AcceptsVersionMessages.swift
[421/456] Compiling NIOSSH SendsChannelMessages.swift
[422/456] Compiling NIOSSH SendsKeyExchangeMessages.swift
[423/456] Compiling NIOSSH SendsUserAuthMessages.swift
[424/456] Compiling NIOSSH SSHConnectionStateMachine.swift
[425/456] Compiling NIOSSH ServerUserAuthenticationDelegate.swift
[426/456] Compiling NIOSSH SimplePasswordDelegate.swift
[427/456] Compiling NIOSSH UserAuthDelegate.swift
[428/456] Compiling NIOSSH UserAuthSignablePayload.swift
[429/456] Compiling NIOSSH UserAuthenticationMethod.swift
[430/456] Compiling NIOSSH UserAuthenticationStateMachine.swift
[431/456] Compiling NIOSSH NIOSSHPrivateKey.swift
[432/456] Compiling NIOSSH NIOSSHPublicKey.swift
[433/456] Compiling NIOSSH NIOSSHSignature.swift
[444/456] Compiling NIOSSH OutboundFlowController.swift
[445/456] Compiling NIOSSH SSHChannelData.swift
[446/456] Compiling NIOSSH SSHChannelIdentifier.swift
[447/456] Compiling NIOSSH SSHChannelMultiplexer.swift
[451/456] Compiling NIOSSH Role.swift
[452/456] Compiling NIOSSH SSHClientConfiguration.swift
[453/456] Compiling NIOSSH SSHEncryptablePacketPayload.swift
[454/456] Compiling NIOSSH SSHMessages.swift
[455/456] Compiling NIOSSH SSHPacketParser.swift
[456/456] Compiling NIOSSH SSHPacketSerializer.swift
[457/489] Emitting module Citadel
[458/492] Compiling Citadel SFTPFile.swift
[459/492] Compiling Citadel SFTPBasicEnums.swift
[460/492] Compiling Citadel SFTPFileFlags.swift
[461/492] Compiling Citadel SFTPServer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:110:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
108 | SSHChannelDataUnwrapper(),
109 | SSHOutboundChannelDataWrapper(),
110 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
111 | serializeHandler,
112 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:111:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
109 | SSHOutboundChannelDataWrapper(),
110 | deserializeHandler,
111 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
112 | sftpInboundHandler,
113 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[462/492] Compiling Citadel SFTPServerInboundHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:110:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
108 | SSHChannelDataUnwrapper(),
109 | SSHOutboundChannelDataWrapper(),
110 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
111 | serializeHandler,
112 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:111:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
109 | SSHOutboundChannelDataWrapper(),
110 | deserializeHandler,
111 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
112 | sftpInboundHandler,
113 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[463/492] Compiling Citadel SSHAuthenticationMethod.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:110:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
108 | SSHChannelDataUnwrapper(),
109 | SSHOutboundChannelDataWrapper(),
110 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
111 | serializeHandler,
112 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Server/SFTPServer.swift:111:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
109 | SSHOutboundChannelDataWrapper(),
110 | deserializeHandler,
111 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
112 | sftpInboundHandler,
113 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[464/492] Compiling Citadel Errors.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Exec/Server/ExecHandler.swift:143:19: warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
141 | .channelInitializer { pipeChannel in
142 | pipeChannel.pipeline.addHandlers(SSHInboundChannelDataWrapper(), theirs)
143 | }.withPipes(
| |- warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
| `- note: use 'takingOwnershipOfDescriptors(input:output:)' instead
144 | inputDescriptor: dup(handler.stdoutPipe.fileHandleForReading.fileDescriptor),
145 | outputDescriptor: dup(handler.stdinPipe.fileHandleForWriting.fileDescriptor)
[465/492] Compiling Citadel ExecClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Exec/Server/ExecHandler.swift:143:19: warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
141 | .channelInitializer { pipeChannel in
142 | pipeChannel.pipeline.addHandlers(SSHInboundChannelDataWrapper(), theirs)
143 | }.withPipes(
| |- warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
| `- note: use 'takingOwnershipOfDescriptors(input:output:)' instead
144 | inputDescriptor: dup(handler.stdoutPipe.fileHandleForReading.fileDescriptor),
145 | outputDescriptor: dup(handler.stdinPipe.fileHandleForWriting.fileDescriptor)
[466/492] Compiling Citadel ExecDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Exec/Server/ExecHandler.swift:143:19: warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
141 | .channelInitializer { pipeChannel in
142 | pipeChannel.pipeline.addHandlers(SSHInboundChannelDataWrapper(), theirs)
143 | }.withPipes(
| |- warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
| `- note: use 'takingOwnershipOfDescriptors(input:output:)' instead
144 | inputDescriptor: dup(handler.stdoutPipe.fileHandleForReading.fileDescriptor),
145 | outputDescriptor: dup(handler.stdinPipe.fileHandleForWriting.fileDescriptor)
[467/492] Compiling Citadel ExecHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Exec/Server/ExecHandler.swift:143:19: warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
141 | .channelInitializer { pipeChannel in
142 | pipeChannel.pipeline.addHandlers(SSHInboundChannelDataWrapper(), theirs)
143 | }.withPipes(
| |- warning: 'withPipes(inputDescriptor:outputDescriptor:)' is deprecated: renamed to 'takingOwnershipOfDescriptors(input:output:)'
| `- note: use 'takingOwnershipOfDescriptors(input:output:)' instead
144 | inputDescriptor: dup(handler.stdoutPipe.fileHandleForReading.fileDescriptor),
145 | outputDescriptor: dup(handler.stdinPipe.fileHandleForWriting.fileDescriptor)
[468/492] Compiling Citadel Client.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:180:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
178 | ).get()
179 |
180 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:183:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
183 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
184 | }.get()
185 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:210:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
208 | }
209 |
210 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:213:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
213 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
214 | }.get()
215 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:247:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
245 | ).get()
246 |
247 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
248 | let session = SSHClientSession(channel: channel, sshHandler: sshHandler)
249 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:159:17: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
157 | let bootstrap = ClientBootstrap(group: eventLoop).channelInitializer { channel in
158 | channel.pipeline.addHandlers(settings.channelHandlers + [
159 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
160 | role: .client(clientConfiguration),
161 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:173:51: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
171 |
172 | return try await bootstrap.connect(host: settings.host, port: settings.port).flatMap { channel in
173 | return handshakeHandler.authenticated.flatMap {
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
174 | channel.pipeline.handler(type: NIOSSHHandler.self)
175 | }.map { sshHandler in
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
[469/492] Compiling Citadel ClientSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:180:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
178 | ).get()
179 |
180 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:183:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
183 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
184 | }.get()
185 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:210:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
208 | }
209 |
210 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:213:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
213 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
214 | }.get()
215 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:247:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
245 | ).get()
246 |
247 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
248 | let session = SSHClientSession(channel: channel, sshHandler: sshHandler)
249 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:159:17: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
157 | let bootstrap = ClientBootstrap(group: eventLoop).channelInitializer { channel in
158 | channel.pipeline.addHandlers(settings.channelHandlers + [
159 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
160 | role: .client(clientConfiguration),
161 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:173:51: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
171 |
172 | return try await bootstrap.connect(host: settings.host, port: settings.port).flatMap { channel in
173 | return handshakeHandler.authenticated.flatMap {
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
174 | channel.pipeline.handler(type: NIOSSHHandler.self)
175 | }.map { sshHandler in
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
[470/492] Compiling Citadel DirectTCPIP+Client.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:180:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
178 | ).get()
179 |
180 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:183:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
183 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
184 | }.get()
185 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:210:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
208 | }
209 |
210 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:213:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
213 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
214 | }.get()
215 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:247:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
245 | ).get()
246 |
247 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
248 | let session = SSHClientSession(channel: channel, sshHandler: sshHandler)
249 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:159:17: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
157 | let bootstrap = ClientBootstrap(group: eventLoop).channelInitializer { channel in
158 | channel.pipeline.addHandlers(settings.channelHandlers + [
159 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
160 | role: .client(clientConfiguration),
161 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:173:51: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
171 |
172 | return try await bootstrap.connect(host: settings.host, port: settings.port).flatMap { channel in
173 | return handshakeHandler.authenticated.flatMap {
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
174 | channel.pipeline.handler(type: NIOSSHHandler.self)
175 | }.map { sshHandler in
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
[471/492] Compiling Citadel DirectTCPIP+Server.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:180:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
178 | ).get()
179 |
180 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:183:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
181 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
182 | let session = try await handshakeHandler.authenticated.map {
183 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
184 | }.get()
185 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:210:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
208 | }
209 |
210 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:213:60: warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
211 | let handshakeHandler = try await channel.pipeline.handler(type: ClientHandshakeHandler.self).get()
212 | let session = try await handshakeHandler.authenticated.map {
213 | SSHClientSession(channel: channel, sshHandler: sshHandler)
| `- warning: capture of 'sshHandler' with non-sendable type 'NIOSSHHandler' in a '@Sendable' closure
214 | }.get()
215 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/Sources/NIOSSH/NIOSSHHandler.swift:26:20: note: class 'NIOSSHHandler' does not conform to the 'Sendable' protocol
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 }
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Client.swift:247:87: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
245 | ).get()
246 |
247 | let sshHandler = try await channel.pipeline.handler(type: NIOSSHHandler.self).get()
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
248 | let session = SSHClientSession(channel: channel, sshHandler: sshHandler)
249 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:159:17: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
157 | let bootstrap = ClientBootstrap(group: eventLoop).channelInitializer { channel in
158 | channel.pipeline.addHandlers(settings.channelHandlers + [
159 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
160 | role: .client(clientConfiguration),
161 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/ClientSession.swift:173:51: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
171 |
172 | return try await bootstrap.connect(host: settings.host, port: settings.port).flatMap { channel in
173 | return handshakeHandler.authenticated.flatMap {
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable
174 | channel.pipeline.handler(type: NIOSSHHandler.self)
175 | }.map { sshHandler in
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
[472/492] Compiling Citadel SSHCert.swift
[473/492] Compiling Citadel SSHConnectionPoolSettings.swift
[474/492] Compiling Citadel SSHKeyTypeDetection.swift
[475/492] Compiling Citadel SFTPMessage.swift
[476/492] Compiling Citadel SFTPMessageParser.swift
[477/492] Compiling Citadel SFTPSerializer.swift
[478/492] Compiling Citadel RSA.swift
[479/492] Compiling Citadel BCrypt.swift
[480/492] Compiling Citadel ByteBufferHelpers.swift
[481/492] Compiling Citadel ChannelUnwrapper.swift
[482/492] Compiling Citadel AES.swift
[483/492] Compiling Citadel DH-Helpers.swift
[484/492] Compiling Citadel DiffieHellmanGroup14Sha1.swift
[485/492] Compiling Citadel DiffieHellmanGroup14Sha256.swift
[486/492] Compiling Citadel NIOGlueHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:50:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
48 | SSHChannelDataUnwrapper(),
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
51 | serializeHandler,
52 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:51:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
51 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
52 | sftpInboundHandler,
53 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[487/492] Compiling Citadel OpenSSHKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:50:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
48 | SSHChannelDataUnwrapper(),
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
51 | serializeHandler,
52 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:51:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
51 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
52 | sftpInboundHandler,
53 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[488/492] Compiling Citadel SFTPClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:50:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
48 | SSHChannelDataUnwrapper(),
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
51 | serializeHandler,
52 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:51:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
51 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
52 | sftpInboundHandler,
53 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[489/492] Compiling Citadel SFTPClientInboundHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:50:13: warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
48 | SSHChannelDataUnwrapper(),
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
| `- warning: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
51 | serializeHandler,
52 | sftpInboundHandler,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:507:1: note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
505 |
506 | @available(*, unavailable)
507 | extension ByteToMessageHandler: Sendable {}
| `- note: conformance of 'ByteToMessageHandler<Decoder>' to 'Sendable' has been explicitly marked unavailable here
508 |
509 | // MARK: ByteToMessageHandler: Test Helpers
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/SFTP/Client/SFTPClient.swift:51:13: warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
49 | SSHOutboundChannelDataWrapper(),
50 | deserializeHandler,
51 | serializeHandler,
| `- warning: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
52 | sftpInboundHandler,
53 | CloseErrorHandler(logger: logger)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/Codec.swift:810:1: note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
808 |
809 | @available(*, unavailable)
810 | extension MessageToByteHandler: Sendable {}
| `- note: conformance of 'MessageToByteHandler<Encoder>' to 'Sendable' has been explicitly marked unavailable here
811 |
812 | extension MessageToByteHandler {
[490/492] Compiling Citadel Server.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:261:21: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
259 |
260 | return channel.pipeline.addHandlers([
261 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
262 | role: .server(server),
263 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:278:11: warning: type 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
:
276 | return try await bootstrap.bind(host: host, port: port).map { channel in
277 | SSHServer(channel: channel, logger: logger, delegate: delegate)
278 | }.get()
| `- warning: type 'SSHServer' does not conform to the 'Sendable' protocol
279 | }
280 | }
[491/492] Compiling Citadel ShellDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:261:21: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
259 |
260 | return channel.pipeline.addHandlers([
261 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
262 | role: .server(server),
263 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:278:11: warning: type 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
:
276 | return try await bootstrap.bind(host: host, port: port).map { channel in
277 | SSHServer(channel: channel, logger: logger, delegate: delegate)
278 | }.get()
| `- warning: type 'SSHServer' does not conform to the 'Sendable' protocol
279 | }
280 | }
[492/492] Compiling Citadel TTY.swift
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:261:21: warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
259 |
260 | return channel.pipeline.addHandlers([
261 | NIOSSHHandler(
| `- warning: conformance of 'NIOSSHHandler' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
262 | role: .server(server),
263 | allocator: channel.allocator,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio-ssh/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 {
/Users/admin/builder/spi-builder-workspace/Sources/Citadel/Server.swift:278:11: warning: type 'SSHServer' does not conform to the 'Sendable' protocol
184 | /// The server can be closed using the `close()` method.
185 | /// - Note: This class is not thread safe.
186 | public final class SSHServer {
| `- note: class 'SSHServer' does not conform to the 'Sendable' protocol
187 | let channel: Channel
188 | let delegate: CitadelServerDelegate
:
276 | return try await bootstrap.bind(host: host, port: port).map { channel in
277 | SSHServer(channel: channel, logger: logger, delegate: delegate)
278 | }.get()
| `- warning: type 'SSHServer' does not conform to the 'Sendable' protocol
279 | }
280 | }
Build of target: 'Citadel' complete! (11.98s)
1532
9 /Users/admin/builder/spi-builder-workspace/.docs/orlandos-nl/citadel/0.11.1
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/orlandos-nl/citadel/0.11.1
File count: 1532
Doc size: 9.0MB
Preparing doc bundle ...
Uploading prod-orlandos-nl-citadel-0.11.1-80c2a5bd.zip to s3://spi-docs-inbox/prod-orlandos-nl-citadel-0.11.1-80c2a5bd.zip
Copying... [13%]
Copying... [23%]
Copying... [33%]
Copying... [43%]
Copying... [53%]
Copying... [63%]
Copying... [73%]
Copying... [82%]
Copying... [92%]
Copying... [100%]
Done.