The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of NIOAsyncWebSockets, reference main (308eff), with Swift 6.0 for Linux on 12 Oct 2024 12:02:05 UTC.

Swift 6 data race errors: 4

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.55.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/samalone/nio-async-websockets.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/samalone/nio-async-websockets
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 308eff3 Add link to API documentation
Cloned https://github.com/samalone/nio-async-websockets.git
Revision (git rev-parse @):
308eff3b3b05d492398e8b2d775bf804c64ec138
SUCCESS checkout https://github.com/samalone/nio-async-websockets.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/samalone/nio-async-websockets.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:b1f5b321a5d74ef5eaf6f5f3afbfebaaa54c7954de6f859009c18a90e0e1c3b4
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/apple/swift-collections.git
Fetching https://github.com/apple/swift-docc-symbolkit
Fetching https://github.com/apple/swift-atomics.git
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-nio.git
[1/2038] Fetching swift-docc-plugin
[491/3607] Fetching swift-docc-plugin, swift-atomics
[2950/6750] Fetching swift-docc-plugin, swift-atomics, swift-docc-symbolkit
Fetched https://github.com/apple/swift-atomics.git from cache (0.37s)
[1/15445] Fetching swift-collections
Fetched https://github.com/apple/swift-docc-symbolkit from cache (0.38s)
[14365/85762] Fetching swift-collections, swift-nio
Fetched https://github.com/apple/swift-docc-plugin from cache (4.11s)
Fetched https://github.com/apple/swift-collections.git from cache (4.13s)
Fetched https://github.com/apple/swift-nio.git from cache (4.18s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.3.0 (1.88s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.62.0 (0.53s)
Computing version for https://github.com/apple/swift-docc-symbolkit
Computed https://github.com/apple/swift-docc-symbolkit at 1.0.0 (0.49s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.0.5 (0.45s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (0.40s)
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.3.0
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/apple/swift-docc-symbolkit
Working copy of https://github.com/apple/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.62.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.0.5
/host/spi-builder-workspace/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Convert/Symbolic Links/SharedPackagePluginExtensions/PackageExtensions.swift:31:17: warning: switch covers known cases, but 'TargetDependency' may have additional unknown values; this is an error in the Swift 6 language mode
 29 |         func addTargetDependencies(_ target: Target) {
 30 |             for dependency in target.dependencies {
 31 |                 switch dependency {
    |                 |- warning: switch covers known cases, but 'TargetDependency' may have additional unknown values; this is an error in the Swift 6 language mode
    |                 `- note: handle unknown values using "@unknown default"
 32 |                 case .product(let product):
 33 |                     addTargets(product.targets)
[1/1] Compiling plugin Swift-DocC
/host/spi-builder-workspace/.build/checkouts/swift-docc-plugin/Plugins/Swift-DocC Preview/Symbolic Links/SharedPackagePluginExtensions/PackageExtensions.swift:31:17: warning: switch covers known cases, but 'TargetDependency' may have additional unknown values; this is an error in the Swift 6 language mode
 29 |         func addTargetDependencies(_ target: Target) {
 30 |             for dependency in target.dependencies {
 31 |                 switch dependency {
    |                 |- warning: switch covers known cases, but 'TargetDependency' may have additional unknown values; this is an error in the Swift 6 language mode
    |                 `- note: handle unknown values using "@unknown default"
 32 |                 case .product(let product):
 33 |                     addTargets(product.targets)
[2/2] Compiling plugin Swift-DocC Preview
Building for debugging...
[2/27] Write sources
[13/27] Compiling CNIOLinux liburing_shims.c
[14/27] Compiling CNIOWindows WSAStartup.c
[15/27] Compiling CNIOWindows shim.c
[16/27] Compiling CNIOSHA1 c_nio_sha1.c
[17/27] Compiling CNIOLLHTTP c_nio_http.c
[18/27] Compiling CNIODarwin shim.c
[19/27] Write sources
[20/27] Compiling CNIOLinux shim.c
[21/27] Compiling CNIOLLHTTP c_nio_api.c
[22/27] Compiling _AtomicsShims.c
[22/27] Write swift-version-24593BA9C3E375BF.txt
[24/27] Compiling CNIOLLHTTP c_nio_llhttp.c
[26/70] Emitting module _NIODataStructures
[26/70] Compiling c-nioatomics.c
[27/70] Compiling c-atomics.c
[29/76] Emitting module Atomics
[30/78] Emitting module NIOConcurrencyHelpers
[31/78] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[32/78] Compiling Atomics ManagedAtomicLazyReference.swift
[33/78] Compiling Atomics AtomicMemoryOrderings.swift
[34/80] Compiling Atomics ManagedAtomic.swift
[37/80] Compiling Atomics DoubleWord.swift
[38/80] Compiling DequeModule _UnsafeWrappedBuffer.swift
[39/80] Compiling Atomics Unmanaged extensions.swift
[40/80] Compiling _NIODataStructures PriorityQueue.swift
[42/80] Compiling Atomics UnsafeAtomic.swift
[43/80] Compiling Atomics Primitives.shims.swift
[44/80] Compiling Atomics AtomicInteger.swift
[45/80] Compiling Atomics AtomicOptionalWrappable.swift
[46/80] Compiling _NIOBase64 Base64.swift
[47/80] Emitting module _NIOBase64
[48/80] Compiling _NIODataStructures _TinyArray.swift
[49/81] Emitting module DequeModule
[51/81] Compiling DequeModule _DequeSlot.swift
[52/81] Compiling Atomics OptionalRawRepresentable.swift
[53/81] Compiling Atomics RawRepresentable.swift
[54/81] Compiling Atomics AtomicBool.swift
[61/81] Compiling Atomics AtomicReference.swift
[62/81] Compiling Atomics AtomicStorage.swift
[63/81] Compiling Atomics AtomicValue.swift
[64/81] Compiling Atomics IntegerConformances.swift
[65/81] Compiling Atomics PointerConformances.swift
[66/81] Compiling Atomics Primitives.native.swift
[79/83] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[80/83] Compiling NIOConcurrencyHelpers NIOLock.swift
[81/83] Compiling NIOConcurrencyHelpers lock.swift
[82/83] Compiling NIOConcurrencyHelpers atomics.swift
[83/84] Compiling _NIODataStructures Heap.swift
[86/142] Compiling NIOCore MarkedCircularBuffer.swift
[87/142] Compiling NIOCore MulticastChannel.swift
[88/142] Compiling NIOCore NIOAny.swift
[89/142] Compiling NIOCore NIOCloseOnErrorHandler.swift
[90/142] Compiling NIOCore NIOLoopBound.swift
[91/142] Compiling NIOCore NIOSendable.swift
[92/142] Compiling NIOCore PointerHelpers.swift
[93/142] Compiling NIOCore RecvByteBufferAllocator.swift
[94/142] Compiling NIOCore EventLoop+SerialExecutor.swift
[95/142] Compiling NIOCore EventLoop.swift
[96/142] Compiling NIOCore EventLoopFuture+Deprecated.swift
[97/142] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[98/142] Compiling NIOCore EventLoopFuture.swift
[99/142] Compiling NIOCore FileDescriptor.swift
[100/142] Compiling NIOCore FileHandle.swift
[101/142] Compiling NIOCore FileRegion.swift
[102/150] Compiling NIOCore ChannelOption.swift
[103/150] Compiling NIOCore ChannelPipeline.swift
[104/150] Compiling NIOCore CircularBuffer.swift
[105/150] Compiling NIOCore Codec.swift
[106/150] Compiling NIOCore ConvenienceOptionSupport.swift
[107/150] Compiling NIOCore DeadChannel.swift
[108/150] Compiling NIOCore DispatchQueue+WithFuture.swift
[109/150] Compiling NIOCore EventLoop+Deprecated.swift
[110/150] Compiling NIOCore NIOAsyncSequenceProducerStrategies.swift
[111/150] Compiling NIOCore NIOAsyncWriter.swift
[112/150] Compiling NIOCore NIOThrowingAsyncSequenceProducer.swift
[113/150] Compiling NIOCore BSDSocketAPI.swift
[114/150] Compiling NIOCore ByteBuffer-aux.swift
[115/150] Compiling NIOCore ByteBuffer-conversions.swift
[116/150] Compiling NIOCore ByteBuffer-core.swift
[117/150] Compiling NIOCore ByteBuffer-hexdump.swift
[118/150] Compiling NIOCore GlobalSingletons.swift
[119/150] Compiling NIOCore IO.swift
[120/150] Compiling NIOCore IOData.swift
[121/150] Compiling NIOCore IPProtocol.swift
[122/150] Compiling NIOCore IntegerBitPacking.swift
[123/150] Compiling NIOCore IntegerTypes.swift
[124/150] Compiling NIOCore Interfaces.swift
[125/150] Compiling NIOCore Linux.swift
[126/150] Compiling NIOCore SingleStepByteToMessageDecoder.swift
[127/150] Compiling NIOCore SocketAddresses.swift
[128/150] Compiling NIOCore SocketOptionProvider.swift
[129/150] Compiling NIOCore SystemCallHelpers.swift
[130/150] Compiling NIOCore TimeAmount+Duration.swift
[131/150] Compiling NIOCore TypeAssistedChannelHandler.swift
[132/150] Compiling NIOCore UniversalBootstrapSupport.swift
[133/150] Compiling NIOCore Utilities.swift
[134/150] Compiling NIOCore ByteBuffer-int.swift
[135/150] Compiling NIOCore ByteBuffer-lengthPrefix.swift
[136/150] Compiling NIOCore ByteBuffer-multi-int.swift
[137/150] Compiling NIOCore ByteBuffer-views.swift
[138/150] Compiling NIOCore Channel.swift
[139/150] Compiling NIOCore ChannelHandler.swift
[140/150] Compiling NIOCore ChannelHandlers.swift
[141/150] Compiling NIOCore ChannelInvoker.swift
[142/150] Emitting module NIOCore
[143/150] Compiling NIOCore AddressedEnvelope.swift
[144/150] Compiling NIOCore AsyncAwaitSupport.swift
[145/150] Compiling NIOCore AsyncChannel.swift
[146/150] Compiling NIOCore AsyncChannelInboundStream.swift
[147/150] Compiling NIOCore AsyncChannelInboundStreamChannelHandler.swift
[148/150] Compiling NIOCore AsyncChannelOutboundWriter.swift
[149/150] Compiling NIOCore AsyncChannelOutboundWriterHandler.swift
[150/150] Compiling NIOCore NIOAsyncSequenceProducer.swift
[152/200] Compiling NIOEmbedded AsyncTestingChannel.swift
[153/200] Compiling NIOEmbedded Embedded.swift
[154/200] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[155/200] Emitting module NIOEmbedded
[157/201] Compiling NIOPosix PointerHelpers.swift
[158/201] Compiling NIOPosix Pool.swift
[159/201] Compiling NIOPosix PooledRecvBufferAllocator.swift
[160/201] Compiling NIOPosix PosixSingletons.swift
[161/201] Compiling NIOPosix RawSocketBootstrap.swift
[162/201] Compiling NIOPosix Resolver.swift
[163/207] Compiling NIOPosix SelectorUring.swift
[164/207] Compiling NIOPosix ServerSocket.swift
[165/207] Compiling NIOPosix Socket.swift
[166/207] Compiling NIOPosix SocketChannel.swift
[167/207] Compiling NIOPosix SocketProtocols.swift
[168/207] Compiling NIOPosix System.swift
[169/207] Emitting module NIOPosix
[170/207] Compiling NIOPosix Thread.swift
[171/207] Compiling NIOPosix ThreadPosix.swift
[172/207] Compiling NIOPosix ThreadWindows.swift
[173/207] Compiling NIOPosix Utilities.swift
[174/207] Compiling NIOPosix VsockAddress.swift
[175/207] Compiling NIOPosix VsockChannelEvents.swift
[176/207] Compiling NIOPosix IntegerBitPacking.swift
[177/207] Compiling NIOPosix IntegerTypes.swift
[178/207] Compiling NIOPosix Linux.swift
[179/207] Compiling NIOPosix LinuxCPUSet.swift
[180/207] Compiling NIOPosix LinuxUring.swift
[181/207] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[182/207] Compiling NIOPosix Selectable.swift
[183/207] Compiling NIOPosix SelectableChannel.swift
[184/207] Compiling NIOPosix SelectableEventLoop.swift
[185/207] Compiling NIOPosix SelectorEpoll.swift
[186/207] Compiling NIOPosix SelectorGeneric.swift
[187/207] Compiling NIOPosix SelectorKqueue.swift
[188/207] Compiling NIOPosix BSDSocketAPICommon.swift
[189/207] Compiling NIOPosix BSDSocketAPIPosix.swift
[190/207] Compiling NIOPosix BSDSocketAPIWindows.swift
[191/207] Compiling NIOPosix BaseSocket.swift
[192/207] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[193/207] Compiling NIOPosix BaseSocketChannel.swift
[194/207] Compiling NIOPosix BaseStreamSocketChannel.swift
[195/207] Compiling NIOPosix NIOThreadPool.swift
[196/207] Compiling NIOPosix NonBlockingFileIO.swift
[197/207] Compiling NIOPosix PendingDatagramWritesManager.swift
[198/207] Compiling NIOPosix PendingWritesManager.swift
[199/207] Compiling NIOPosix PipeChannel.swift
[200/207] Compiling NIOPosix PipePair.swift
[201/207] Compiling NIOPosix Bootstrap.swift
[202/207] Compiling NIOPosix ControlMessage.swift
[203/207] Compiling NIOPosix DatagramVectorReadManager.swift
[204/207] Compiling NIOPosix FileDescriptor.swift
[205/207] Compiling NIOPosix GetaddrinfoResolver.swift
[206/207] Compiling NIOPosix HappyEyeballs.swift
[207/207] Compiling NIOPosix IO.swift
[209/210] Emitting module NIO
[210/210] Compiling NIO Exports.swift
[212/227] Emitting module NIOHTTP1
[213/229] Compiling NIOHTTP1 HTTPServerProtocolErrorHandler.swift
[214/229] Compiling NIOHTTP1 HTTPServerUpgradeHandler.swift
[215/229] Compiling NIOHTTP1 HTTPHeaderValidator.swift
[216/229] Compiling NIOHTTP1 HTTPHeaders+Validation.swift
[217/229] Compiling NIOHTTP1 NIOTypedHTTPClientUpgradeHandler.swift
[218/229] Compiling NIOHTTP1 NIOTypedHTTPClientUpgraderStateMachine.swift
[219/229] Compiling NIOHTTP1 HTTPPipelineSetup.swift
[220/229] Compiling NIOHTTP1 HTTPServerPipelineHandler.swift
[221/229] Compiling NIOHTTP1 HTTPTypedPipelineSetup.swift
[222/229] Compiling NIOHTTP1 HTTPTypes.swift
[223/229] Compiling NIOHTTP1 NIOHTTPClientUpgradeHandler.swift
[224/229] Compiling NIOHTTP1 NIOHTTPObjectAggregator.swift
[225/229] Compiling NIOHTTP1 NIOTypedHTTPServerUpgradeHandler.swift
[226/229] Compiling NIOHTTP1 NIOTypedHTTPServerUpgraderStateMachine.swift
[227/229] Compiling NIOHTTP1 ByteCollectionUtils.swift
[228/229] Compiling NIOHTTP1 HTTPDecoder.swift
[229/229] Compiling NIOHTTP1 HTTPEncoder.swift
[231/240] Compiling NIOWebSocket WebSocketOpcode.swift
[232/241] Compiling NIOWebSocket WebSocketFrameEncoder.swift
[233/241] Compiling NIOWebSocket WebSocketFrameDecoder.swift
[234/241] Compiling NIOWebSocket WebSocketFrame.swift
[235/241] Emitting module NIOWebSocket
[236/241] Compiling NIOWebSocket NIOWebSocketServerUpgrader.swift
[237/241] Compiling NIOWebSocket SHA1.swift
[238/241] Compiling NIOWebSocket NIOWebSocketClientUpgrader.swift
[239/241] Compiling NIOWebSocket NIOWebSocketFrameAggregator.swift
[240/241] Compiling NIOWebSocket WebSocketErrorCodes.swift
[241/241] Compiling NIOWebSocket WebSocketProtocolErrorHandler.swift
[243/251] Compiling NIOAsyncWebSockets NIOWebSocketServerUpgrader.swift
[244/252] Compiling NIOAsyncWebSockets NIOWebSocketClientUpgrader.swift
[245/252] Compiling NIOAsyncWebSockets NIOTypedHTTPServerUpgradeHandler.swift
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:162:21: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
160 |                 .hop(to: context.eventLoop)
161 |                 .whenComplete { result in
162 |                     self.upgradingHandlerCompleted(context: context, result, requestHeadAndProtocol: nil)
    |                     `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
163 |                 }
164 |
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:162:61: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 |                 .hop(to: context.eventLoop)
161 |                 .whenComplete { result in
162 |                     self.upgradingHandlerCompleted(context: context, result, requestHeadAndProtocol: nil)
    |                                                             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
163 |                 }
164 |
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:174:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
172 |                 connectionHeader: connectionHeader
173 |             ).whenComplete { result in
174 |                 context.eventLoop.assertInEventLoop()
    |                 `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
175 |                 self.findingUpgradeCompleted(context: context, requestHead: head, result)
176 |             }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:175:17: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
173 |             ).whenComplete { result in
174 |                 context.eventLoop.assertInEventLoop()
175 |                 self.findingUpgradeCompleted(context: context, requestHead: head, result)
    |                 `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
176 |             }
177 |
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:260:17: warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPServerProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 17 | /// An object that implements `NIOTypedHTTPServerProtocolUpgrader` knows how to handle HTTP upgrade to
 18 | /// a protocol on a server-side channel.
 19 | public protocol NIOTypedHTTPServerProtocolUpgrader<UpgradeResult> {
    |                 `- note: protocol 'NIOTypedHTTPServerProtocolUpgrader' does not conform to the 'Sendable' protocol
 20 |     associatedtype UpgradeResult
 21 |
    :
258 |         )
259 |         .hop(to: context.eventLoop)
260 |         .map { (upgrader, $0, proto) }
    |                 `- warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPServerProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
261 |         .flatMapError { error in
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:263:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
261 |         .flatMapError { error in
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
263 |             context.fireErrorCaught(error)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
264 |             return self.handleUpgradeForProtocol(context: context, protocolIterator: protocolIterator, request: request, allHeaderNames: allHeaderNames, connectionHeader: connectionHeader)
265 |         }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:264:20: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
263 |             context.fireErrorCaught(error)
264 |             return self.handleUpgradeForProtocol(context: context, protocolIterator: protocolIterator, request: request, allHeaderNames: allHeaderNames, connectionHeader: connectionHeader)
    |                    `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
265 |         }
266 |     }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:264:86: warning: reference to captured var 'protocolIterator' in concurrently-executing code; this is an error in the Swift 6 language mode
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
263 |             context.fireErrorCaught(error)
264 |             return self.handleUpgradeForProtocol(context: context, protocolIterator: protocolIterator, request: request, allHeaderNames: allHeaderNames, connectionHeader: connectionHeader)
    |                                                                                      `- warning: reference to captured var 'protocolIterator' in concurrently-executing code; this is an error in the Swift 6 language mode
265 |         }
266 |     }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:287:21: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
285 |                 .hop(to: context.eventLoop)
286 |                 .whenComplete { result in
287 |                     self.upgradingHandlerCompleted(context: context, result, requestHeadAndProtocol: nil)
    |                     `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
288 |                 }
289 |
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:287:61: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
285 |                 .hop(to: context.eventLoop)
286 |                 .whenComplete { result in
287 |                     self.upgradingHandlerCompleted(context: context, result, requestHeadAndProtocol: nil)
    |                                                             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
288 |                 }
289 |
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:322:13: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
320 |         // then remove ourselves from the pipeline.
321 |         self.removeExtraHandlers(context: context).flatMap {
322 |             self.sendUpgradeResponse(context: context, responseHeaders: responseHeaders)
    |             `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
323 |         }.flatMap {
324 |             context.pipeline.removeHandler(self.httpEncoder)
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:322:47: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
320 |         // then remove ourselves from the pipeline.
321 |         self.removeExtraHandlers(context: context).flatMap {
322 |             self.sendUpgradeResponse(context: context, responseHeaders: responseHeaders)
    |                                               `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
323 |         }.flatMap {
324 |             context.pipeline.removeHandler(self.httpEncoder)
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:324:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
322 |             self.sendUpgradeResponse(context: context, responseHeaders: responseHeaders)
323 |         }.flatMap {
324 |             context.pipeline.removeHandler(self.httpEncoder)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
325 |         }.flatMap { () -> EventLoopFuture<UpgradeResult> in
326 |             return upgrader.upgrade(channel: context.channel, upgradeRequest: requestHead)
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:324:44: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
322 |             self.sendUpgradeResponse(context: context, responseHeaders: responseHeaders)
323 |         }.flatMap {
324 |             context.pipeline.removeHandler(self.httpEncoder)
    |                                            `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
325 |         }.flatMap { () -> EventLoopFuture<UpgradeResult> in
326 |             return upgrader.upgrade(channel: context.channel, upgradeRequest: requestHead)
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:326:20: warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPServerProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 17 | /// An object that implements `NIOTypedHTTPServerProtocolUpgrader` knows how to handle HTTP upgrade to
 18 | /// a protocol on a server-side channel.
 19 | public protocol NIOTypedHTTPServerProtocolUpgrader<UpgradeResult> {
    |                 `- note: protocol 'NIOTypedHTTPServerProtocolUpgrader' does not conform to the 'Sendable' protocol
 20 |     associatedtype UpgradeResult
 21 |
    :
324 |             context.pipeline.removeHandler(self.httpEncoder)
325 |         }.flatMap { () -> EventLoopFuture<UpgradeResult> in
326 |             return upgrader.upgrade(channel: context.channel, upgradeRequest: requestHead)
    |                    `- warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPServerProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
327 |         }.hop(to: context.eventLoop)
328 |         .whenComplete { result in
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:326:46: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
324 |             context.pipeline.removeHandler(self.httpEncoder)
325 |         }.flatMap { () -> EventLoopFuture<UpgradeResult> in
326 |             return upgrader.upgrade(channel: context.channel, upgradeRequest: requestHead)
    |                                              `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
327 |         }.hop(to: context.eventLoop)
328 |         .whenComplete { result in
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:329:13: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
327 |         }.hop(to: context.eventLoop)
328 |         .whenComplete { result in
329 |             self.upgradingHandlerCompleted(context: context, result, requestHeadAndProtocol: (requestHead, proto))
    |             `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
330 |         }
331 |     }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:329:53: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
327 |         }.hop(to: context.eventLoop)
328 |         .whenComplete { result in
329 |             self.upgradingHandlerCompleted(context: context, result, requestHeadAndProtocol: (requestHead, proto))
    |                                                     `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
330 |         }
331 |     }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
[246/252] Compiling NIOAsyncWebSockets SHA1.swift
[247/252] Compiling NIOAsyncWebSockets NIOTypedHTTPClientUpgraderStateMachine.swift
[248/252] Emitting module NIOAsyncWebSockets
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:260:17: warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPServerProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 17 | /// An object that implements `NIOTypedHTTPServerProtocolUpgrader` knows how to handle HTTP upgrade to
 18 | /// a protocol on a server-side channel.
 19 | public protocol NIOTypedHTTPServerProtocolUpgrader<UpgradeResult> {
    |                 `- note: protocol 'NIOTypedHTTPServerProtocolUpgrader' does not conform to the 'Sendable' protocol
 20 |     associatedtype UpgradeResult
 21 |
    :
258 |         )
259 |         .hop(to: context.eventLoop)
260 |         .map { (upgrader, $0, proto) }
    |                 `- warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPServerProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
261 |         .flatMapError { error in
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:263:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
261 |         .flatMapError { error in
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
263 |             context.fireErrorCaught(error)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
264 |             return self.handleUpgradeForProtocol(context: context, protocolIterator: protocolIterator, request: request, allHeaderNames: allHeaderNames, connectionHeader: connectionHeader)
265 |         }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:264:20: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// requests that we choose to punt on it entirely and not allow it. As it happens this is mostly fine:
 75 | /// the odds of someone needing to upgrade midway through the lifetime of a connection are very low.
 76 | public final class NIOTypedHTTPServerUpgradeHandler<UpgradeResult: Sendable>: ChannelInboundHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPServerUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias InboundIn = HTTPServerRequestPart
 78 |     public typealias InboundOut = HTTPServerRequestPart
    :
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
263 |             context.fireErrorCaught(error)
264 |             return self.handleUpgradeForProtocol(context: context, protocolIterator: protocolIterator, request: request, allHeaderNames: allHeaderNames, connectionHeader: connectionHeader)
    |                    `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPServerUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
265 |         }
266 |     }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPServerUpgradeHandler.swift:264:86: warning: reference to captured var 'protocolIterator' in concurrently-executing code; this is an error in the Swift 6 language mode
262 |             // No upgrade here. We want to fire the error down the pipeline, and then try another loop iteration.
263 |             context.fireErrorCaught(error)
264 |             return self.handleUpgradeForProtocol(context: context, protocolIterator: protocolIterator, request: request, allHeaderNames: allHeaderNames, connectionHeader: connectionHeader)
    |                                                                                      `- warning: reference to captured var 'protocolIterator' in concurrently-executing code; this is an error in the Swift 6 language mode
265 |         }
266 |     }
[249/252] Compiling NIOAsyncWebSockets HTTPTypedPipelineSetup.swift
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/HTTPTypedPipelineSetup.swift:86:36: warning: capture of 'configuration' with non-sendable type 'NIOUpgradableHTTPServerPipelineConfiguration<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 18 |
 19 | /// Configuration for an upgradable HTTP pipeline.
 20 | public struct NIOUpgradableHTTPServerPipelineConfiguration<UpgradeResult: Sendable> {
    |               `- note: consider making generic struct 'NIOUpgradableHTTPServerPipelineConfiguration' conform to the 'Sendable' protocol
 21 |     /// Whether to provide assistance handling HTTP clients that pipeline
 22 |     /// their requests. Defaults to `true`. If `false`, users will need to handle clients that pipeline themselves.
    :
 84 |             future = self.eventLoop.submit {
 85 |                 try self.syncOperations.configureUpgradableHTTPServerPipeline(
 86 |                     configuration: configuration
    |                                    `- warning: capture of 'configuration' with non-sendable type 'NIOUpgradableHTTPServerPipelineConfiguration<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 87 |                 )
 88 |             }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:200:21: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// It will only upgrade to the protocol that is returned first in the list and does not currently
 75 | /// have the capability to upgrade to multiple simultaneous layered protocols.
 76 | public final class NIOTypedHTTPClientUpgradeHandler<UpgradeResult: Sendable>: ChannelDuplexHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPClientUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias OutboundIn = HTTPClientRequestPart
 78 |     public typealias OutboundOut = HTTPClientRequestPart
    :
198 |                 .hop(to: context.eventLoop)
199 |                 .whenComplete { result in
200 |                     self.upgradingHandlerCompleted(context: context, result)
    |                     `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
201 |                 }
202 |
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:200:61: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
198 |                 .hop(to: context.eventLoop)
199 |                 .whenComplete { result in
200 |                     self.upgradingHandlerCompleted(context: context, result)
    |                                                             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
201 |                 }
202 |
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:224:17: warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPClientProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 18 | /// a protocol on a client-side channel.
 19 | /// It has the option of denying this upgrade based upon the server response.
 20 | public protocol NIOTypedHTTPClientProtocolUpgrader<UpgradeResult> {
    |                 `- note: protocol 'NIOTypedHTTPClientProtocolUpgrader' does not conform to the 'Sendable' protocol
 21 |     associatedtype UpgradeResult: Sendable
 22 |
    :
222 |         self.removeHTTPHandlers(context: context)
223 |             .flatMap {
224 |                 upgrader.upgrade(channel: context.channel, upgradeResponse: responseHead)
    |                 `- warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPClientProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:224:43: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
222 |         self.removeHTTPHandlers(context: context)
223 |             .flatMap {
224 |                 upgrader.upgrade(channel: context.channel, upgradeResponse: responseHead)
    |                                           `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:227:17: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// It will only upgrade to the protocol that is returned first in the list and does not currently
 75 | /// have the capability to upgrade to multiple simultaneous layered protocols.
 76 | public final class NIOTypedHTTPClientUpgradeHandler<UpgradeResult: Sendable>: ChannelDuplexHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPClientUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias OutboundIn = HTTPClientRequestPart
 78 |     public typealias OutboundOut = HTTPClientRequestPart
    :
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
227 |                 self.upgradingHandlerCompleted(context: context, result)
    |                 `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
228 |             }
229 |     }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:227:57: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
227 |                 self.upgradingHandlerCompleted(context: context, result)
    |                                                         `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
228 |             }
229 |     }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
[250/252] Compiling NIOAsyncWebSockets NIOTypedHTTPClientUpgradeHandler.swift
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/HTTPTypedPipelineSetup.swift:86:36: warning: capture of 'configuration' with non-sendable type 'NIOUpgradableHTTPServerPipelineConfiguration<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 18 |
 19 | /// Configuration for an upgradable HTTP pipeline.
 20 | public struct NIOUpgradableHTTPServerPipelineConfiguration<UpgradeResult: Sendable> {
    |               `- note: consider making generic struct 'NIOUpgradableHTTPServerPipelineConfiguration' conform to the 'Sendable' protocol
 21 |     /// Whether to provide assistance handling HTTP clients that pipeline
 22 |     /// their requests. Defaults to `true`. If `false`, users will need to handle clients that pipeline themselves.
    :
 84 |             future = self.eventLoop.submit {
 85 |                 try self.syncOperations.configureUpgradableHTTPServerPipeline(
 86 |                     configuration: configuration
    |                                    `- warning: capture of 'configuration' with non-sendable type 'NIOUpgradableHTTPServerPipelineConfiguration<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 87 |                 )
 88 |             }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:200:21: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// It will only upgrade to the protocol that is returned first in the list and does not currently
 75 | /// have the capability to upgrade to multiple simultaneous layered protocols.
 76 | public final class NIOTypedHTTPClientUpgradeHandler<UpgradeResult: Sendable>: ChannelDuplexHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPClientUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias OutboundIn = HTTPClientRequestPart
 78 |     public typealias OutboundOut = HTTPClientRequestPart
    :
198 |                 .hop(to: context.eventLoop)
199 |                 .whenComplete { result in
200 |                     self.upgradingHandlerCompleted(context: context, result)
    |                     `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
201 |                 }
202 |
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:200:61: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
198 |                 .hop(to: context.eventLoop)
199 |                 .whenComplete { result in
200 |                     self.upgradingHandlerCompleted(context: context, result)
    |                                                             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
201 |                 }
202 |
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:224:17: warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPClientProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 18 | /// a protocol on a client-side channel.
 19 | /// It has the option of denying this upgrade based upon the server response.
 20 | public protocol NIOTypedHTTPClientProtocolUpgrader<UpgradeResult> {
    |                 `- note: protocol 'NIOTypedHTTPClientProtocolUpgrader' does not conform to the 'Sendable' protocol
 21 |     associatedtype UpgradeResult: Sendable
 22 |
    :
222 |         self.removeHTTPHandlers(context: context)
223 |             .flatMap {
224 |                 upgrader.upgrade(channel: context.channel, upgradeResponse: responseHead)
    |                 `- warning: capture of 'upgrader' with non-sendable type 'any NIOTypedHTTPClientProtocolUpgrader<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:224:43: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
222 |         self.removeHTTPHandlers(context: context)
223 |             .flatMap {
224 |                 upgrader.upgrade(channel: context.channel, upgradeResponse: responseHead)
    |                                           `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:227:17: warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 | /// It will only upgrade to the protocol that is returned first in the list and does not currently
 75 | /// have the capability to upgrade to multiple simultaneous layered protocols.
 76 | public final class NIOTypedHTTPClientUpgradeHandler<UpgradeResult: Sendable>: ChannelDuplexHandler, RemovableChannelHandler {
    |                    `- note: generic class 'NIOTypedHTTPClientUpgradeHandler' does not conform to the 'Sendable' protocol
 77 |     public typealias OutboundIn = HTTPClientRequestPart
 78 |     public typealias OutboundOut = HTTPClientRequestPart
    :
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
227 |                 self.upgradingHandlerCompleted(context: context, result)
    |                 `- warning: capture of 'self' with non-sendable type 'NIOTypedHTTPClientUpgradeHandler<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
228 |             }
229 |     }
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedHTTPClientUpgradeHandler.swift:227:57: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 |             }.hop(to: context.eventLoop)
226 |             .whenComplete { result in
227 |                 self.upgradingHandlerCompleted(context: context, result)
    |                                                         `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a `@Sendable` closure; this is an error in the Swift 6 language mode
228 |             }
229 |     }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1417:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1415 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1416 | /// `ChannelHandler`.
1417 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1418 |     // visible for ChannelPipeline to modify
1419 |     fileprivate var next: Optional<ChannelHandlerContext>
[251/252] Compiling NIOAsyncWebSockets NIOTypedHTTPServerUpgraderStateMachine.swift
[252/252] Compiling NIOAsyncWebSockets NIOTypedPipelineSetup.swift
/host/spi-builder-workspace/Sources/NIOAsyncWebSockets/NIOTypedPipelineSetup.swift:67:36: warning: capture of 'configuration' with non-sendable type 'NIOUpgradableHTTPClientPipelineConfiguration<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 12 | // MARK: - Client pipeline configuration
 13 | /// Configuration for an upgradable HTTP pipeline.
 14 | public struct NIOUpgradableHTTPClientPipelineConfiguration<UpgradeResult: Sendable> {
    |               `- note: consider making generic struct 'NIOUpgradableHTTPClientPipelineConfiguration' conform to the 'Sendable' protocol
 15 |     /// The strategy to use when dealing with leftover bytes after removing the ``HTTPDecoder`` from the pipeline.
 16 |     public var leftOverBytesStrategy = RemoveAfterUpgradeStrategy.dropBytes
    :
 65 |             future = self.eventLoop.submit {
 66 |                 try self.syncOperations.configureUpgradableHTTPClientPipeline(
 67 |                     configuration: configuration
    |                                    `- warning: capture of 'configuration' with non-sendable type 'NIOUpgradableHTTPClientPipelineConfiguration<UpgradeResult>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 68 |                 )
 69 |             }
Build complete! (70.28s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-nio",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.12.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "NIOAsyncWebSockets",
  "name" : "NIOAsyncWebSockets",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    },
    {
      "name" : "ios",
      "version" : "16.0"
    },
    {
      "name" : "watchos",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "17.0"
    }
  ],
  "products" : [
    {
      "name" : "NIOAsyncWebSockets",
      "targets" : [
        "NIOAsyncWebSockets"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "NIOAsyncWebSocketsTests",
      "module_type" : "SwiftTarget",
      "name" : "NIOAsyncWebSocketsTests",
      "path" : "Tests/NIOAsyncWebSocketsTests",
      "sources" : [
        "NIOAsyncWebSocketsTests.swift"
      ],
      "target_dependencies" : [
        "NIOAsyncWebSockets"
      ],
      "type" : "test"
    },
    {
      "c99name" : "NIOAsyncWebSockets",
      "module_type" : "SwiftTarget",
      "name" : "NIOAsyncWebSockets",
      "path" : "Sources/NIOAsyncWebSockets",
      "product_dependencies" : [
        "NIO",
        "NIOHTTP1",
        "NIOWebSocket",
        "NIOPosix"
      ],
      "product_memberships" : [
        "NIOAsyncWebSockets"
      ],
      "sources" : [
        "HTTPTypedPipelineSetup.swift",
        "NIOTypedHTTPClientUpgradeHandler.swift",
        "NIOTypedHTTPClientUpgraderStateMachine.swift",
        "NIOTypedHTTPServerUpgradeHandler.swift",
        "NIOTypedHTTPServerUpgraderStateMachine.swift",
        "NIOTypedPipelineSetup.swift",
        "NIOWebSocketClientUpgrader.swift",
        "NIOWebSocketServerUpgrader.swift",
        "SHA1.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:b1f5b321a5d74ef5eaf6f5f3afbfebaaa54c7954de6f859009c18a90e0e1c3b4
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.