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 LCLPing, reference main (436006), with Swift 6.1 for Linux on 1 May 2025 07:39:23 UTC.

Swift 6 data race errors: 1

Build Command

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

Build Log

[670/749] Compiling cpu_aarch64_sysreg.cc
[671/749] Compiling cpu_aarch64_openbsd.cc
[672/749] Compiling cpu_aarch64_fuchsia.cc
[673/749] Compiling cpu_aarch64_linux.cc
[674/749] Compiling cpu_aarch64_apple.cc
[675/749] Compiling tls_cbc.cc
[676/749] Compiling conf.cc
[677/749] Compiling curve25519_64_adx.cc
[678/749] Compiling e_tls.cc
[679/749] Compiling e_rc4.cc
[680/749] Compiling get_cipher.cc
[681/749] Compiling e_des.cc
[682/749] Compiling e_rc2.cc
[683/749] Compiling e_null.cc
[684/749] Compiling e_chacha20poly1305.cc
[685/749] Compiling e_aesgcmsiv.cc
[686/749] Compiling derive_key.cc
[687/749] Compiling e_aesctrhmac.cc
[688/749] Compiling chacha.cc
[689/749] Compiling unicode.cc
[690/749] Compiling buf.cc
[691/749] Compiling ber.cc
[692/749] Compiling cbs.cc
[693/749] Compiling cbb.cc
[694/749] Compiling asn1_compat.cc
[695/749] Compiling blake2.cc
[696/749] Compiling bn_asn1.cc
[697/749] Compiling convert.cc
[698/749] Compiling printf.cc
[699/749] Compiling socket_helper.cc
[700/749] Compiling socket.cc
[701/749] Compiling pair.cc
[702/749] Compiling hexdump.cc
[703/749] Compiling file.cc
[704/749] Compiling errno.cc
[705/749] Compiling bio_mem.cc
[706/749] Compiling fd.cc
[707/749] Compiling connect.cc
[708/749] Compiling base64.cc
[709/749] Compiling bio.cc
[710/749] Compiling posix_time.cc
[711/749] Compiling tasn_typ.cc
[712/749] Compiling tasn_enc.cc
[713/749] Compiling tasn_fre.cc
[714/749] Compiling tasn_new.cc
[715/749] Compiling f_string.cc
[716/749] Compiling tasn_utl.cc
[717/749] Compiling tasn_dec.cc
[718/749] Compiling f_int.cc
[719/749] Compiling asn1_par.cc
[720/749] Compiling asn_pack.cc
[721/749] Compiling a_utctm.cc
[722/749] Compiling a_type.cc
[723/749] Compiling a_octet.cc
[724/749] Write sources
[725/749] Compiling a_time.cc
[726/749] Write sources
[727/749] Compiling asn1_lib.cc
[728/772] Compiling a_strnid.cc
[729/781] Compiling a_strex.cc
[730/821] Compiling a_object.cc
[731/821] Compiling a_mbstr.cc
[733/821] Compiling Atomics AtomicMemoryOrderings.swift
[734/821] Compiling Atomics DoubleWord.swift
[735/821] Compiling Atomics UnsafeAtomic.swift
[736/821] Compiling Atomics UnsafeAtomicLazyReference.swift
[737/821] Compiling Atomics ManagedAtomic.swift
[738/821] Compiling Atomics ManagedAtomicLazyReference.swift
[739/823] Compiling BitCollections BitSet+CustomDebugStringConvertible.swift
[740/823] Compiling BitCollections BitSet+CustomReflectable.swift
[741/823] Compiling BitCollections BitSet+CustomStringConvertible.swift
[742/823] Compiling BitCollections BitSet+Equatable.swift
[743/823] Compiling BitCollections BitSet+ExpressibleByArrayLiteral.swift
[744/823] Compiling BitCollections BitSet+Extras.swift
[745/823] Compiling BitCollections BitSet+Hashable.swift
[746/830] Compiling Atomics Primitives.shims.swift
[747/830] Compiling Atomics AtomicInteger.swift
[748/830] Compiling Atomics AtomicOptionalWrappable.swift
[749/830] Compiling Atomics AtomicReference.swift
[750/830] Compiling Atomics AtomicStorage.swift
[751/830] Compiling Atomics AtomicValue.swift
[752/830] Compiling BitCollections BitSet+SetAlgebra isSuperset.swift
[753/830] Compiling BitCollections BitSet+SetAlgebra subtract.swift
[754/830] Compiling BitCollections BitSet+SetAlgebra subtracting.swift
[755/830] Compiling BitCollections BitSet+SetAlgebra symmetricDifference.swift
[756/830] Compiling BitCollections BitSet+SetAlgebra union.swift
[757/830] Compiling BitCollections BitSet+Sorted Collection APIs.swift
[758/830] Compiling BitCollections BitSet.Counted.swift
[759/830] Compiling Atomics IntegerOperations.swift
[760/830] Compiling Atomics Unmanaged extensions.swift
[761/830] Emitting module BitCollections
[765/830] Compiling Atomics OptionalRawRepresentable.swift
[766/830] Compiling Atomics RawRepresentable.swift
[767/830] Compiling Atomics AtomicBool.swift
[770/830] Compiling BitCollections BitSet+Initializers.swift
[771/830] Compiling BitCollections BitSet+Invariants.swift
[772/830] Compiling BitCollections BitSet+Random.swift
[773/830] Compiling BitCollections BitSet+SetAlgebra basics.swift
[774/830] Compiling BitCollections BitSet+SetAlgebra conformance.swift
[775/830] Compiling BitCollections BitSet+SetAlgebra formIntersection.swift
[776/830] Compiling BitCollections BitSet+SetAlgebra formSymmetricDifference.swift
[777/830] Compiling BitCollections BitSet+SetAlgebra formUnion.swift
[778/830] Compiling BitCollections BitSet+SetAlgebra intersection.swift
[779/830] Compiling BitCollections BitSet+SetAlgebra isDisjoint.swift
[780/830] Compiling BitCollections BitSet+SetAlgebra isEqualSet.swift
[781/830] Compiling BitCollections BitSet+SetAlgebra isStrictSubset.swift
[782/830] Compiling BitCollections BitSet+SetAlgebra isStrictSuperset.swift
[783/830] Compiling BitCollections BitSet+SetAlgebra isSubset.swift
[785/830] Compiling Atomics IntegerConformances.swift
[786/830] Compiling Atomics PointerConformances.swift
[787/830] Compiling Atomics Primitives.native.swift
[796/830] Compiling BitCollections BitArray._UnsafeHandle.swift
[797/830] Compiling BitCollections BitArray.swift
[798/830] Compiling BitCollections BitSet+BidirectionalCollection.swift
[799/830] Compiling BitCollections BitSet+Codable.swift
[800/830] Compiling BitCollections BitSet.Index.swift
[801/830] Compiling BitCollections BitSet._UnsafeHandle.swift
[802/830] Compiling BitCollections BitSet.swift
[803/830] Compiling BitCollections Range+Utilities.swift
[804/830] Compiling BitCollections Slice+Utilities.swift
[805/830] Compiling BitCollections UInt+Tricks.swift
[806/830] Compiling BitCollections _Word.swift
[807/831] Wrapping AST for BitCollections for debugging
[809/833] Compiling Collections Collections.swift
[810/833] Emitting module Collections
[815/834] Emitting module Atomics
[818/835] Compiling c-atomics.c
[820/841] Wrapping AST for Atomics for debugging
[821/841] Wrapping AST for Collections for debugging
[823/841] Compiling NIOConcurrencyHelpers lock.swift
[824/841] Emitting module NIOConcurrencyHelpers
[825/841] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[826/841] Compiling NIOConcurrencyHelpers NIOLock.swift
[827/841] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[828/841] Compiling NIOConcurrencyHelpers atomics.swift
[829/842] Wrapping AST for NIOConcurrencyHelpers for debugging
[831/901] Compiling NIOCore MarkedCircularBuffer.swift
[832/901] Compiling NIOCore MulticastChannel.swift
[833/901] Compiling NIOCore NIOAny.swift
[834/901] Compiling NIOCore NIOCloseOnErrorHandler.swift
[835/901] Compiling NIOCore NIOLoopBound.swift
[836/901] Compiling NIOCore NIOScheduledCallback.swift
[837/901] Compiling NIOCore NIOSendable.swift
[838/901] Compiling NIOCore RecvByteBufferAllocator.swift
[839/909] Compiling NIOCore GlobalSingletons.swift
[840/909] Compiling NIOCore IO.swift
[841/909] Compiling NIOCore IOData.swift
[842/909] Compiling NIOCore IPProtocol.swift
[843/909] Compiling NIOCore IntegerBitPacking.swift
[844/909] Compiling NIOCore IntegerTypes.swift
[845/909] Compiling NIOCore Interfaces.swift
[846/909] Compiling NIOCore Linux.swift
[847/909] Compiling NIOCore SingleStepByteToMessageDecoder.swift
[848/909] Compiling NIOCore SocketAddresses.swift
[849/909] Compiling NIOCore SocketOptionProvider.swift
[850/909] Compiling NIOCore SystemCallHelpers.swift
[851/909] Compiling NIOCore TimeAmount+Duration.swift
[852/909] Compiling NIOCore TypeAssistedChannelHandler.swift
[853/909] Compiling NIOCore UniversalBootstrapSupport.swift
[854/909] Compiling NIOCore Utilities.swift
[855/909] Compiling NIOCore ChannelPipeline.swift
[856/909] Compiling NIOCore CircularBuffer.swift
[857/909] Compiling NIOCore Codec.swift
[858/909] Compiling NIOCore ConvenienceOptionSupport.swift
[859/909] Compiling NIOCore DeadChannel.swift
[860/909] Compiling NIOCore DispatchQueue+WithFuture.swift
[861/909] Compiling NIOCore EventLoop+Deprecated.swift
[862/909] Compiling NIOCore EventLoop+SerialExecutor.swift
[863/909] Compiling NIOCore ByteBuffer-multi-int.swift
[864/909] Compiling NIOCore ByteBuffer-quicBinaryEncodingStrategy.swift
[865/909] Compiling NIOCore ByteBuffer-views.swift
[866/909] Compiling NIOCore Channel.swift
[867/909] Compiling NIOCore ChannelHandler.swift
[868/909] Compiling NIOCore ChannelHandlers.swift
[869/909] Compiling NIOCore ChannelInvoker.swift
[870/909] Compiling NIOCore ChannelOption.swift
[871/909] Emitting module NIOCore
[872/909] Compiling NIOCore EventLoop.swift
[873/909] Compiling NIOCore EventLoopFuture+AssumeIsolated.swift
[874/909] Compiling NIOCore EventLoopFuture+Deprecated.swift
[875/909] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[876/909] Compiling NIOCore EventLoopFuture.swift
[877/909] Compiling NIOCore FileDescriptor.swift
[878/909] Compiling NIOCore FileHandle.swift
[879/909] Compiling NIOCore FileRegion.swift
[880/909] Compiling NIOCore NIOThrowingAsyncSequenceProducer.swift
[881/909] Compiling NIOCore BSDSocketAPI.swift
[882/909] Compiling NIOCore ByteBuffer-aux.swift
[883/909] Compiling NIOCore ByteBuffer-binaryEncodedLengthPrefix.swift
[884/909] Compiling NIOCore ByteBuffer-conversions.swift
[885/909] Compiling NIOCore ByteBuffer-core.swift
[886/909] Compiling NIOCore ByteBuffer-hex.swift
[887/909] Compiling NIOCore ByteBuffer-int.swift
[888/909] Compiling NIOCore ByteBuffer-lengthPrefix.swift
[889/909] Compiling NIOCore AddressedEnvelope.swift
[890/909] Compiling NIOCore AsyncAwaitSupport.swift
[891/909] Compiling NIOCore AsyncChannel.swift
[892/909] Compiling NIOCore AsyncChannelHandler.swift
[893/909] Compiling NIOCore AsyncChannelInboundStream.swift
[894/909] Compiling NIOCore AsyncChannelOutboundWriter.swift
[895/909] Compiling NIOCore NIOAsyncSequenceProducer.swift
[896/909] Compiling NIOCore NIOAsyncSequenceProducerStrategies.swift
[897/909] Compiling NIOCore NIOAsyncWriter.swift
[898/910] Wrapping AST for NIOCore for debugging
[900/961] Emitting module NIOEmbedded
[901/961] Compiling NIOEmbedded AsyncTestingChannel.swift
[902/961] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[903/961] Compiling NIOEmbedded Embedded.swift
[904/962] Wrapping AST for NIOEmbedded for debugging
[906/962] Compiling NIOPosix SelectableChannel.swift
[907/962] Compiling NIOPosix SelectableEventLoop.swift
[908/962] Compiling NIOPosix SelectorEpoll.swift
[909/962] Compiling NIOPosix SelectorGeneric.swift
[910/962] Compiling NIOPosix SelectorKqueue.swift
[911/962] Compiling NIOPosix SelectorUring.swift
[912/962] Compiling NIOPosix PooledRecvBufferAllocator.swift
[913/962] Compiling NIOPosix PosixSingletons+ConcurrencyTakeOver.swift
[914/962] Compiling NIOPosix PosixSingletons.swift
[915/962] Compiling NIOPosix RawSocketBootstrap.swift
[916/962] Compiling NIOPosix Resolver.swift
[917/962] Compiling NIOPosix Selectable.swift
[918/962] Compiling NIOPosix ServerSocket.swift
[919/962] Compiling NIOPosix Socket.swift
[920/962] Compiling NIOPosix SocketChannel.swift
[921/962] Compiling NIOPosix SocketProtocols.swift
[922/962] Compiling NIOPosix System.swift
[923/962] Compiling NIOPosix Thread.swift
[924/968] Emitting module NIOPosix
[925/968] Compiling NIOPosix BSDSocketAPICommon.swift
[926/968] Compiling NIOPosix BSDSocketAPIPosix.swift
[927/968] Compiling NIOPosix BSDSocketAPIWindows.swift
[928/968] Compiling NIOPosix BaseSocket.swift
[929/968] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[930/968] Compiling NIOPosix BaseSocketChannel.swift
[931/968] Compiling NIOPosix BaseStreamSocketChannel.swift
[932/968] Compiling NIOPosix Bootstrap.swift
[933/968] Compiling NIOPosix ControlMessage.swift
[934/968] Compiling NIOPosix DatagramVectorReadManager.swift
[935/968] Compiling NIOPosix Errors+Any.swift
[936/968] Compiling NIOPosix FileDescriptor.swift
[937/968] Compiling NIOPosix GetaddrinfoResolver.swift
[938/968] Compiling NIOPosix HappyEyeballs.swift
[939/968] Compiling NIOPosix ThreadPosix.swift
[940/968] Compiling NIOPosix ThreadWindows.swift
[941/968] Compiling NIOPosix UnsafeTransfer.swift
[942/968] Compiling NIOPosix Utilities.swift
[943/968] Compiling NIOPosix VsockAddress.swift
[944/968] Compiling NIOPosix VsockChannelEvents.swift
[945/968] Compiling NIOPosix NIOThreadPool.swift
[946/968] Compiling NIOPosix NonBlockingFileIO.swift
[947/968] Compiling NIOPosix PendingDatagramWritesManager.swift
[948/968] Compiling NIOPosix PendingWritesManager.swift
[949/968] Compiling NIOPosix PipeChannel.swift
[950/968] Compiling NIOPosix PipePair.swift
[951/968] Compiling NIOPosix Pool.swift
[952/968] Compiling NIOPosix IO.swift
[953/968] Compiling NIOPosix IntegerBitPacking.swift
[954/968] Compiling NIOPosix IntegerTypes.swift
[955/968] Compiling NIOPosix Linux.swift
[956/968] Compiling NIOPosix LinuxCPUSet.swift
[957/968] Compiling NIOPosix LinuxUring.swift
[958/968] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[959/971] Wrapping AST for NIOPosix for debugging
[961/971] Compiling NIO Exports.swift
[962/971] Emitting module NIO
[963/975] Wrapping AST for NIO for debugging
[965/994] Compiling NIOTLS ApplicationProtocolNegotiationHandler.swift
[966/994] Compiling NIOTLS TLSEvents.swift
[967/994] Emitting module NIOTLS
[968/994] Compiling NIOTLS NIOTypedApplicationProtocolNegotiationHandler.swift
[969/994] Compiling NIOHTTP1 HTTPHeaderValidator.swift
[970/994] Compiling NIOHTTP1 HTTPHeaders+Validation.swift
[971/996] Compiling NIOTLS ProtocolNegotiationHandlerStateMachine.swift
[972/996] Compiling NIOTLS SNIHandler.swift
[974/997] Compiling NIOHTTP1 NIOTypedHTTPClientUpgradeHandler.swift
[975/997] Compiling NIOHTTP1 NIOTypedHTTPClientUpgraderStateMachine.swift
[975/997] Wrapping AST for NIOTLS for debugging
[977/997] Compiling NIOHTTP1 HTTPPipelineSetup.swift
[978/997] Compiling NIOHTTP1 HTTPServerPipelineHandler.swift
[979/1018] Compiling NIOSSL ObjectIdentifier.swift
[980/1018] Compiling NIOSSL PosixPort.swift
[981/1026] Compiling NIOSSL NIOSSLHandler.swift
[982/1026] Compiling NIOSSL NIOSSLServerHandler.swift
[983/1026] Compiling NIOSSL SSLCertificateExtensions.swift
[984/1026] Compiling NIOSSL SSLConnection.swift
[985/1026] Compiling NIOSSL SSLContext.swift
[986/1026] Compiling NIOSSL SSLErrors.swift
[987/1026] Emitting module NIOHTTP1
[988/1026] Compiling NIOSSL AndroidCABundle.swift
[989/1026] Compiling NIOSSL ByteBufferBIO.swift
[990/1026] Compiling NIOSSL CustomPrivateKey.swift
[991/1027] Wrapping AST for NIOHTTP1 for debugging
[994/1027] Compiling NIOSSL SSLInit.swift
[995/1027] Compiling NIOSSL SSLPKCS12Bundle.swift
[996/1027] Compiling NIOSSL SSLPrivateKey.swift
[997/1030] Emitting module NIOSSL
[998/1034] Compiling NIOSSL SSLPublicKey.swift
[999/1034] Compiling NIOSSL SecurityFrameworkCertificateVerification.swift
[1000/1034] Compiling NIOSSL String+unsafeUninitializedCapacity.swift
[1001/1034] Compiling NIOSSL SubjectAlternativeName.swift
[1002/1034] Compiling NIOSSL NIOSSLSecureBytes.swift
[1003/1034] Compiling NIOSSL RNG.swift
[1004/1034] Compiling NIOSSL SafeCompare.swift
[1005/1034] Compiling NIOSSL Zeroization.swift
[1009/1034] Compiling NIOSSL IdentityVerification.swift
[1010/1034] Compiling NIOTestUtils EventCounterHandler.swift
[1011/1034] Emitting module NIOTestUtils
[1012/1034] Compiling NIOTestUtils ByteToMessageDecoderVerifier.swift
[1013/1034] Compiling NIOTestUtils NIOHTTP1TestServer.swift
[1015/1035] Compiling NIOSSL LinuxCABundle.swift
[1016/1035] Compiling NIOSSL NIOSSLClientHandler.swift
[1017/1035] Compiling NIOSSL NIOSSLHandler+Configuration.swift
[1019/1035] Compiling NIOSSL SSLCertificate.swift
[1026/1035] Compiling NIOSSL SSLCallbacks.swift
[1026/1035] Wrapping AST for NIOTestUtils for debugging
[1028/1035] Compiling NIOSSL TLSConfiguration.swift
[1029/1035] Compiling NIOSSL UniversalBootstrapSupport.swift
[1030/1035] Compiling NIOSSL UnsafeKeyAndChainTarget.swift
[1031/1036] Wrapping AST for NIOSSL for debugging
[1033/1065] Compiling LCLPing LCLPing+Array.swift
[1034/1065] Compiling LCLPing LCLPing+ChannelOption.swift
[1035/1065] Compiling LCLPing LCLPing+Double.swift
[1036/1065] Compiling LCLPing LCLPing+SocketOption.swift
[1037/1069] Compiling LCLPing PingResponse.swift
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:83:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
    :
 81 |
 82 |     /// An empty summary.
 83 |     static let empty = PingSummary(
    |                |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1038/1069] Compiling LCLPing PingResult.swift
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:83:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
    :
 81 |
 82 |     /// An empty summary.
 83 |     static let empty = PingSummary(
    |                |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1039/1069] Compiling LCLPing PingState.swift
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:83:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
    :
 81 |
 82 |     /// An empty summary.
 83 |     static let empty = PingSummary(
    |                |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1040/1069] Compiling LCLPing PingSummary.swift
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:83:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
    :
 81 |
 82 |     /// An empty summary.
 83 |     static let empty = PingSummary(
    |                |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1041/1069] Compiling LCLPing Rewritable.swift
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |                                     `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                 `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:39: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                                       `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
197 |         }
198 |     }
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
197 |         }
198 |     }
[1042/1069] Compiling LCLPing TrafficControllerChannelHandler.swift
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |                                     `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                 `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:39: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                                       `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
197 |         }
198 |     }
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
197 |         }
198 |     }
[1043/1069] Compiling LCLPing Constants.swift
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |                                     `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                 `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:39: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                                       `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
197 |         }
198 |     }
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
197 |         }
198 |     }
[1044/1069] Compiling LCLPing Hex.swift
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:13: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |             `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:172:37: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
170 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to read data in \(self.networkLinkConfig.inDelay) ms. Should duplicate: \(shouldDuplicatePacket)")
171 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.inDelay)) {
172 |             context.fireChannelRead(data)
    |                                     `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
173 |             if shouldDuplicatePacket {
174 |                 context.fireChannelRead(data)
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:176:97: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
174 |                 context.fireChannelRead(data)
175 |             }
176 |             logger.debug("[\(#fileID)][\(#line)][\(#function)] fireChannelRead after delaying \(self.networkLinkConfig.inDelay) ms")
    |                                                                                                 `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
177 |         }
178 |
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:17: warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                 `- warning: capture of 'context' with non-sendable type 'ChannelHandlerContext' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelPipeline.swift:1786:20: note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1784 | /// at the right point in time. Often, the right behaviour is to react to an event and then forward it to the next
1785 | /// `ChannelHandler`.
1786 | public final class ChannelHandlerContext: ChannelInvoker {
     |                    `- note: class 'ChannelHandlerContext' does not conform to the 'Sendable' protocol
1787 |     // visible for ChannelPipeline to modify
1788 |     fileprivate var next: Optional<ChannelHandlerContext>
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:195:39: warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
193 |         logger.debug("[\(#fileID)][\(#line)][\(#function)]: schedule to send data in \(self.networkLinkConfig.outDelay) ms")
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
    |                                       `- warning: capture of 'data' with non-sendable type 'NIOAny' in a '@Sendable' closure
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
197 |         }
/host/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
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: capture of 'self' with non-sendable type 'TrafficControllerChannelHandler' in a '@Sendable' closure
197 |         }
198 |     }
/host/spi-builder-workspace/Sources/LCLPing/TestUtils/TrafficControllerChannelHandler.swift:196:96: warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 19 | ///
 20 | /// - Note: This channel handler should usually be placed at the first position in the channel handlers pipeline.
 21 | final class TrafficControllerChannelHandler: ChannelDuplexHandler {
    |             `- note: class 'TrafficControllerChannelHandler' does not conform to the 'Sendable' protocol
 22 |
 23 |     /// The configuration to simulate different network conditions.
    :
194 |         context.eventLoop.scheduleTask(in: .milliseconds(self.networkLinkConfig.outDelay)) {
195 |             _ = context.writeAndFlush(data)
196 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: writeAndFlush after delaying \(self.networkLinkConfig.outDelay) ms")
    |                                                                                                `- warning: implicit capture of 'self' requires that 'TrafficControllerChannelHandler' conforms to 'Sendable'; this is an error in the Swift 6 language mode
197 |         }
198 |     }
[1045/1069] Compiling LCLPing PingHandler.swift
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:40:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
38 |         let httpConfig = try HTTPPingClient.Configuration(url: host, count: strategy.count)
39 |         let client = HTTPPingClient(configuration: httpConfig)
40 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
41 |         return result.isSimpleMajority()
42 |     case .icmp:
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:45:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
43 |         let icmpConfig = try ICMPPingClient.Configuration(endpoint: .ipv4(host, 0), count: strategy.count)
44 |         let client = ICMPPingClient(configuration: icmpConfig)
45 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
46 |         return result.isSimpleMajority()
47 |     }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
[1046/1069] Compiling LCLPing Pingable.swift
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:40:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
38 |         let httpConfig = try HTTPPingClient.Configuration(url: host, count: strategy.count)
39 |         let client = HTTPPingClient(configuration: httpConfig)
40 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
41 |         return result.isSimpleMajority()
42 |     case .icmp:
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:45:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
43 |         let icmpConfig = try ICMPPingClient.Configuration(endpoint: .ipv4(host, 0), count: strategy.count)
44 |         let client = ICMPPingClient(configuration: icmpConfig)
45 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
46 |         return result.isSimpleMajority()
47 |     }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
[1047/1069] Compiling LCLPing Reachability.swift
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:40:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
38 |         let httpConfig = try HTTPPingClient.Configuration(url: host, count: strategy.count)
39 |         let client = HTTPPingClient(configuration: httpConfig)
40 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
41 |         return result.isSimpleMajority()
42 |     case .icmp:
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:45:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
43 |         let icmpConfig = try ICMPPingClient.Configuration(endpoint: .ipv4(host, 0), count: strategy.count)
44 |         let client = ICMPPingClient(configuration: icmpConfig)
45 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
46 |         return result.isSimpleMajority()
47 |     }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
[1048/1069] Compiling LCLPing InboundHeaderRewriter.swift
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:40:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
38 |         let httpConfig = try HTTPPingClient.Configuration(url: host, count: strategy.count)
39 |         let client = HTTPPingClient(configuration: httpConfig)
40 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
41 |         return result.isSimpleMajority()
42 |     case .icmp:
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/Reachability.swift:45:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
43 |         let icmpConfig = try ICMPPingClient.Configuration(endpoint: .ipv4(host, 0), count: strategy.count)
44 |         let client = ICMPPingClient(configuration: icmpConfig)
45 |         let result = try client.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
46 |         return result.isSimpleMajority()
47 |     }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
[1049/1069] Compiling LCLPing HTTPSchema.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:85:41: warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
 85 |                                 channel.write(request, promise: nil)
    |                                         `- warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 86 |                             }
 87 |                         case .failure(let error):
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:106:56: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
107 |                                 }
108 |                             }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:78:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 76 |                         switch result {
 77 |                         case .success(let channel):
 78 |                             self.channels.withLockedValue { channels in
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 79 |                                 channels.append(channel)
 80 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:84:47: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 82 |                             logger.debug("Scheduled #\(cnt) request")
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
    |                                               `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 85 |                                 channel.write(request, promise: nil)
 86 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:90:33: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 88 |                             promise.fail(error)
 89 |                             self.stateLock.withLockVoid {
 90 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 91 |                             }
 92 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:96:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 94 |
 95 |                     promise.futureResult.whenComplete { res in
 96 |                         self.channels.withLockedValue { channels in
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 97 |                             if !channels.isEmpty {
 98 |                                 channels.removeFirst()
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:105:48: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
103 |                             self.responses.withLockedValue {
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
    |                                                `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
107 |                                 }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:118:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
116 |                     switch result {
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
119 |                             self.state = .finished
120 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:119:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
119 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
120 |                         }
121 |                     case .failure:
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:123:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
121 |                     case .failure:
122 |                         self.stateLock.withLockVoid {
123 |                             self.state = .error
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
124 |                         }
125 |                     }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:146:40: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
144 |                 }
145 |                 self.responses.withLockedValue {
146 |                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
147 |                 }
148 |                 shutdown()
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:170:20: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
168 |             .connectTimeout(self.configuration.connectionTimeout)
169 |             .channelInitializer { channel in
170 |                 if self.configuration.schema.enableTLS {
    |                    `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
171 |                     do {
172 |                         let tlsConfiguration = TLSConfiguration.makeClientConfiguration()
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPChannelHandlers.swift:71:13: warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 15 | import NIOCore
 16 |
 17 | internal final class ICMPDuplexer: ChannelDuplexHandler {
    |                      `- note: class 'ICMPDuplexer' does not conform to the 'Sendable' protocol
 18 |     typealias InboundIn = ICMPPingClient.ICMPHeader
 19 |     typealias InboundOut = PingResponse
    :
 69 |         let scheduledTimer = context.eventLoop.scheduleTask(in: self.configuration.timeout) {
 70 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: timer for \(request.sequenceNum) is invoked => time out!")
 71 |             self.timer.removeValue(forKey: request.sequenceNum)
    |             `- warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 72 |             self.handler.handleTimeout(sequenceNumber: Int(request.sequenceNum))
 73 |         }
[1050/1069] Compiling LCLPing NIOHTTPClient.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:85:41: warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
 85 |                                 channel.write(request, promise: nil)
    |                                         `- warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 86 |                             }
 87 |                         case .failure(let error):
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:106:56: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
107 |                                 }
108 |                             }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:78:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 76 |                         switch result {
 77 |                         case .success(let channel):
 78 |                             self.channels.withLockedValue { channels in
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 79 |                                 channels.append(channel)
 80 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:84:47: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 82 |                             logger.debug("Scheduled #\(cnt) request")
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
    |                                               `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 85 |                                 channel.write(request, promise: nil)
 86 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:90:33: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 88 |                             promise.fail(error)
 89 |                             self.stateLock.withLockVoid {
 90 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 91 |                             }
 92 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:96:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 94 |
 95 |                     promise.futureResult.whenComplete { res in
 96 |                         self.channels.withLockedValue { channels in
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 97 |                             if !channels.isEmpty {
 98 |                                 channels.removeFirst()
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:105:48: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
103 |                             self.responses.withLockedValue {
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
    |                                                `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
107 |                                 }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:118:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
116 |                     switch result {
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
119 |                             self.state = .finished
120 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:119:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
119 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
120 |                         }
121 |                     case .failure:
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:123:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
121 |                     case .failure:
122 |                         self.stateLock.withLockVoid {
123 |                             self.state = .error
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
124 |                         }
125 |                     }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:146:40: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
144 |                 }
145 |                 self.responses.withLockedValue {
146 |                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
147 |                 }
148 |                 shutdown()
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:170:20: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
168 |             .connectTimeout(self.configuration.connectionTimeout)
169 |             .channelInitializer { channel in
170 |                 if self.configuration.schema.enableTLS {
    |                    `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
171 |                     do {
172 |                         let tlsConfiguration = TLSConfiguration.makeClientConfiguration()
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPChannelHandlers.swift:71:13: warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 15 | import NIOCore
 16 |
 17 | internal final class ICMPDuplexer: ChannelDuplexHandler {
    |                      `- note: class 'ICMPDuplexer' does not conform to the 'Sendable' protocol
 18 |     typealias InboundIn = ICMPPingClient.ICMPHeader
 19 |     typealias InboundOut = PingResponse
    :
 69 |         let scheduledTimer = context.eventLoop.scheduleTask(in: self.configuration.timeout) {
 70 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: timer for \(request.sequenceNum) is invoked => time out!")
 71 |             self.timer.removeValue(forKey: request.sequenceNum)
    |             `- warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 72 |             self.handler.handleTimeout(sequenceNumber: Int(request.sequenceNum))
 73 |         }
[1051/1069] Compiling LCLPing URLSessionClient.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:85:41: warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
 85 |                                 channel.write(request, promise: nil)
    |                                         `- warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 86 |                             }
 87 |                         case .failure(let error):
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:106:56: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
107 |                                 }
108 |                             }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:78:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 76 |                         switch result {
 77 |                         case .success(let channel):
 78 |                             self.channels.withLockedValue { channels in
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 79 |                                 channels.append(channel)
 80 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:84:47: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 82 |                             logger.debug("Scheduled #\(cnt) request")
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
    |                                               `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 85 |                                 channel.write(request, promise: nil)
 86 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:90:33: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 88 |                             promise.fail(error)
 89 |                             self.stateLock.withLockVoid {
 90 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 91 |                             }
 92 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:96:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 94 |
 95 |                     promise.futureResult.whenComplete { res in
 96 |                         self.channels.withLockedValue { channels in
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 97 |                             if !channels.isEmpty {
 98 |                                 channels.removeFirst()
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:105:48: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
103 |                             self.responses.withLockedValue {
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
    |                                                `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
107 |                                 }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:118:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
116 |                     switch result {
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
119 |                             self.state = .finished
120 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:119:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
119 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
120 |                         }
121 |                     case .failure:
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:123:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
121 |                     case .failure:
122 |                         self.stateLock.withLockVoid {
123 |                             self.state = .error
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
124 |                         }
125 |                     }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:146:40: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
144 |                 }
145 |                 self.responses.withLockedValue {
146 |                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
147 |                 }
148 |                 shutdown()
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:170:20: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
168 |             .connectTimeout(self.configuration.connectionTimeout)
169 |             .channelInitializer { channel in
170 |                 if self.configuration.schema.enableTLS {
    |                    `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
171 |                     do {
172 |                         let tlsConfiguration = TLSConfiguration.makeClientConfiguration()
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPChannelHandlers.swift:71:13: warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 15 | import NIOCore
 16 |
 17 | internal final class ICMPDuplexer: ChannelDuplexHandler {
    |                      `- note: class 'ICMPDuplexer' does not conform to the 'Sendable' protocol
 18 |     typealias InboundIn = ICMPPingClient.ICMPHeader
 19 |     typealias InboundOut = PingResponse
    :
 69 |         let scheduledTimer = context.eventLoop.scheduleTask(in: self.configuration.timeout) {
 70 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: timer for \(request.sequenceNum) is invoked => time out!")
 71 |             self.timer.removeValue(forKey: request.sequenceNum)
    |             `- warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 72 |             self.handler.handleTimeout(sequenceNumber: Int(request.sequenceNum))
 73 |         }
[1052/1069] Compiling LCLPing ICMPChannelHandlers.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:85:41: warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
 85 |                                 channel.write(request, promise: nil)
    |                                         `- warning: type 'HTTPPingClient.Request' does not conform to the 'Sendable' protocol
 86 |                             }
 87 |                         case .failure(let error):
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:106:56: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
107 |                                 }
108 |                             }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:78:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 76 |                         switch result {
 77 |                         case .success(let channel):
 78 |                             self.channels.withLockedValue { channels in
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 79 |                                 channels.append(channel)
 80 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:84:47: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 82 |                             logger.debug("Scheduled #\(cnt) request")
 83 |                             channel.eventLoop.scheduleTask(in: self.configuration.readTimeout * cnt) {
 84 |                                 let request = self.configuration.makeHTTPRequest(for: cnt)
    |                                               `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 85 |                                 channel.write(request, promise: nil)
 86 |                             }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:90:33: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 88 |                             promise.fail(error)
 89 |                             self.stateLock.withLockVoid {
 90 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 91 |                             }
 92 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:96:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
 94 |
 95 |                     promise.futureResult.whenComplete { res in
 96 |                         self.channels.withLockedValue { channels in
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 97 |                             if !channels.isEmpty {
 98 |                                 channels.removeFirst()
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:105:48: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
103 |                             self.responses.withLockedValue {
104 |                                 $0.append(response)
105 |                                 if $0.count == self.configuration.count {
    |                                                `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
106 |                                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
107 |                                 }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:118:25: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
116 |                     switch result {
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
    |                         `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
119 |                             self.state = .finished
120 |                         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:119:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
117 |                     case .success:
118 |                         self.stateLock.withLockVoid {
119 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
120 |                         }
121 |                     case .failure:
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:123:29: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
121 |                     case .failure:
122 |                         self.stateLock.withLockVoid {
123 |                             self.state = .error
    |                             `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in an isolated closure; this is an error in the Swift 6 language mode
124 |                         }
125 |                     }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:146:40: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
144 |                 }
145 |                 self.responses.withLockedValue {
146 |                     self.resultPromise.succeed($0.summarize(host: resolvedAddress))
    |                                        `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
147 |                 }
148 |                 shutdown()
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/HTTP/NIOHTTPClient.swift:170:20: warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
 18 | import NIOConcurrencyHelpers
 19 |
 20 | final class NIOHTTPClient: Pingable {
    |             `- note: class 'NIOHTTPClient' does not conform to the 'Sendable' protocol
 21 |     private let eventLoopGroup: EventLoopGroup
 22 |     private let configuration: HTTPPingClient.Configuration
    :
168 |             .connectTimeout(self.configuration.connectionTimeout)
169 |             .channelInitializer { channel in
170 |                 if self.configuration.schema.enableTLS {
    |                    `- warning: capture of 'self' with non-sendable type 'NIOHTTPClient' in a '@Sendable' closure
171 |                     do {
172 |                         let tlsConfiguration = TLSConfiguration.makeClientConfiguration()
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPChannelHandlers.swift:71:13: warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 15 | import NIOCore
 16 |
 17 | internal final class ICMPDuplexer: ChannelDuplexHandler {
    |                      `- note: class 'ICMPDuplexer' does not conform to the 'Sendable' protocol
 18 |     typealias InboundIn = ICMPPingClient.ICMPHeader
 19 |     typealias InboundOut = PingResponse
    :
 69 |         let scheduledTimer = context.eventLoop.scheduleTask(in: self.configuration.timeout) {
 70 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: timer for \(request.sequenceNum) is invoked => time out!")
 71 |             self.timer.removeValue(forKey: request.sequenceNum)
    |             `- warning: capture of 'self' with non-sendable type 'ICMPDuplexer' in a '@Sendable' closure
 72 |             self.handler.handleTimeout(sequenceNumber: Int(request.sequenceNum))
 73 |         }
[1053/1069] Emitting module LCLPing
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:83:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
    :
 81 |
 82 |     /// An empty summary.
 83 |     static let empty = PingSummary(
    |                |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'PingSummary' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1054/1069] Compiling LCLPing LCLPing+Time.swift
[1055/1069] Compiling LCLPing LCLPing+TimeInterval.swift
[1056/1069] Compiling LCLPing ObjectDecoder.swift
[1057/1069] Compiling LCLPing Utilities.swift
[1058/1069] Compiling LCLPing ICMPHandler.swift
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:69:77: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 67 |                 self.state = .running
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
    |                                                                             `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 70 |                     self.channel = channel
 71 |                     channel.closeFuture.whenComplete { result in
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:103:84: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
101 |                     send(0)
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
    |                                                                                    `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:108:50: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
106 |                             self.state = .finished
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
    |                                                  `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
109 |                     }
110 |                 }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:70:21: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
 70 |                     self.channel = channel
    |                     `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 71 |                     channel.closeFuture.whenComplete { result in
 72 |                         switch result {
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:76:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 74 |                             ()
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 77 |                                 self.state = .error
 78 |                             }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:77:33: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
 77 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 78 |                             }
 79 |                         }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:86:35: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 84 |
 85 |                     func send(_ cnt: Int) {
 86 |                         if cnt == self.configuration.count {
    |                                   `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 87 |                             sendPromise.succeed()
 88 |                             return
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:94:112: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 92 |                         logger.debug("Scheduled #\(cnt) request")
 93 |                         channel.eventLoop.scheduleTask(in: cnt * self.configuration.interval) {
 94 |                             channel.writeAndFlush(ICMPPingClient.Request(sequenceNum: UInt16(cnt), identifier: self.identifier), promise: p)
    |                                                                                                                `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 95 |                         }.futureResult.hop(to: el).cascadeFailure(to: sendPromise)
 96 |
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:104:68: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
    |                                                                    `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:106:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:166:49: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
164 |                     IPDecoder(),
165 |                     ICMPDecoder(),
166 |                     ICMPDuplexer(configuration: self.configuration, promise: self.promise)
    |                                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
167 |                 ]
168 |                 #endif
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:173:25: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
171 |                 } catch {
172 |                     self.stateLock.withLockVoid {
173 |                         self.state = .error
    |                         `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
174 |                     }
175 |                     return channel.eventLoop.makeFailedFuture(error)
[1059/1069] Compiling LCLPing ICMPPingClient.swift
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:69:77: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 67 |                 self.state = .running
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
    |                                                                             `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 70 |                     self.channel = channel
 71 |                     channel.closeFuture.whenComplete { result in
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:103:84: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
101 |                     send(0)
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
    |                                                                                    `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:108:50: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
106 |                             self.state = .finished
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
    |                                                  `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
109 |                     }
110 |                 }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:70:21: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
 70 |                     self.channel = channel
    |                     `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 71 |                     channel.closeFuture.whenComplete { result in
 72 |                         switch result {
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:76:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 74 |                             ()
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 77 |                                 self.state = .error
 78 |                             }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:77:33: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
 77 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 78 |                             }
 79 |                         }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:86:35: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 84 |
 85 |                     func send(_ cnt: Int) {
 86 |                         if cnt == self.configuration.count {
    |                                   `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 87 |                             sendPromise.succeed()
 88 |                             return
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:94:112: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 92 |                         logger.debug("Scheduled #\(cnt) request")
 93 |                         channel.eventLoop.scheduleTask(in: cnt * self.configuration.interval) {
 94 |                             channel.writeAndFlush(ICMPPingClient.Request(sequenceNum: UInt16(cnt), identifier: self.identifier), promise: p)
    |                                                                                                                `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 95 |                         }.futureResult.hop(to: el).cascadeFailure(to: sendPromise)
 96 |
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:104:68: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
    |                                                                    `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:106:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:166:49: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
164 |                     IPDecoder(),
165 |                     ICMPDecoder(),
166 |                     ICMPDuplexer(configuration: self.configuration, promise: self.promise)
    |                                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
167 |                 ]
168 |                 #endif
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:173:25: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
171 |                 } catch {
172 |                     self.stateLock.withLockVoid {
173 |                         self.state = .error
    |                         `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
174 |                     }
175 |                     return channel.eventLoop.makeFailedFuture(error)
[1060/1069] Compiling LCLPing Errors+LCLPing.swift
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:69:77: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 67 |                 self.state = .running
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
    |                                                                             `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 70 |                     self.channel = channel
 71 |                     channel.closeFuture.whenComplete { result in
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:103:84: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
101 |                     send(0)
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
    |                                                                                    `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:108:50: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
106 |                             self.state = .finished
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
    |                                                  `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
109 |                     }
110 |                 }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:70:21: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
 70 |                     self.channel = channel
    |                     `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 71 |                     channel.closeFuture.whenComplete { result in
 72 |                         switch result {
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:76:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 74 |                             ()
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 77 |                                 self.state = .error
 78 |                             }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:77:33: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
 77 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 78 |                             }
 79 |                         }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:86:35: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 84 |
 85 |                     func send(_ cnt: Int) {
 86 |                         if cnt == self.configuration.count {
    |                                   `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 87 |                             sendPromise.succeed()
 88 |                             return
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:94:112: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 92 |                         logger.debug("Scheduled #\(cnt) request")
 93 |                         channel.eventLoop.scheduleTask(in: cnt * self.configuration.interval) {
 94 |                             channel.writeAndFlush(ICMPPingClient.Request(sequenceNum: UInt16(cnt), identifier: self.identifier), promise: p)
    |                                                                                                                `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 95 |                         }.futureResult.hop(to: el).cascadeFailure(to: sendPromise)
 96 |
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:104:68: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
    |                                                                    `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:106:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:166:49: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
164 |                     IPDecoder(),
165 |                     ICMPDecoder(),
166 |                     ICMPDuplexer(configuration: self.configuration, promise: self.promise)
    |                                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
167 |                 ]
168 |                 #endif
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:173:25: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
171 |                 } catch {
172 |                     self.stateLock.withLockVoid {
173 |                         self.state = .error
    |                         `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
174 |                     }
175 |                     return channel.eventLoop.makeFailedFuture(error)
[1061/1069] Compiling LCLPing HTTPLatency.swift
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:69:77: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 67 |                 self.state = .running
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
    |                                                                             `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
 70 |                     self.channel = channel
 71 |                     channel.closeFuture.whenComplete { result in
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:103:84: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
101 |                     send(0)
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
    |                                                                                    `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:108:50: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
106 |                             self.state = .finished
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
    |                                                  `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
109 |                     }
110 |                 }
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: consider making struct 'PingSummary' conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:70:21: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 68 |
 69 |                 return self.connect(to: self.configuration.resolvedAddress).flatMap { channel in
 70 |                     self.channel = channel
    |                     `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 71 |                     channel.closeFuture.whenComplete { result in
 72 |                         switch result {
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:76:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 74 |                             ()
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 77 |                                 self.state = .error
 78 |                             }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:77:33: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 75 |                         case .failure:
 76 |                             self.stateLock.withLockVoid {
 77 |                                 self.state = .error
    |                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 78 |                             }
 79 |                         }
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:86:35: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 84 |
 85 |                     func send(_ cnt: Int) {
 86 |                         if cnt == self.configuration.count {
    |                                   `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated local function; this is an error in the Swift 6 language mode
 87 |                             sendPromise.succeed()
 88 |                             return
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:94:112: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
 92 |                         logger.debug("Scheduled #\(cnt) request")
 93 |                         channel.eventLoop.scheduleTask(in: cnt * self.configuration.interval) {
 94 |                             channel.writeAndFlush(ICMPPingClient.Request(sequenceNum: UInt16(cnt), identifier: self.identifier), promise: p)
    |                                                                                                                `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 95 |                         }.futureResult.hop(to: el).cascadeFailure(to: sendPromise)
 96 |
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:104:68: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
102 |
103 |                     return sendPromise.futureResult.and(self.promise.futureResult).flatMap { (_, pingResponse) in
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
    |                                                                    `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:106:29: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
104 |                         let summary = pingResponse.summarize(host: self.configuration.resolvedAddress)
105 |                         self.stateLock.withLock {
106 |                             self.state = .finished
    |                             `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
107 |                         }
108 |                         return channel.eventLoop.makeSucceededFuture(summary)
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:166:49: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
164 |                     IPDecoder(),
165 |                     ICMPDecoder(),
166 |                     ICMPDuplexer(configuration: self.configuration, promise: self.promise)
    |                                                 `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in a '@Sendable' closure
167 |                 ]
168 |                 #endif
/host/spi-builder-workspace/Sources/LCLPing/ICMP/ICMPPingClient.swift:173:25: warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
 19 | /// Caller needs to provide a configuration that set the way the ICMP client initiates tests.
 20 | /// Caller can also cancel the test via `cancel()`.
 21 | public final class ICMPPingClient: Pingable {
    |                    `- note: class 'ICMPPingClient' does not conform to the 'Sendable' protocol
 22 |
 23 |     private let eventLoopGroup: EventLoopGroup
    :
171 |                 } catch {
172 |                     self.stateLock.withLockVoid {
173 |                         self.state = .error
    |                         `- warning: capture of 'self' with non-sendable type 'ICMPPingClient' in an isolated closure; this is an error in the Swift 6 language mode
174 |                     }
175 |                     return channel.eventLoop.makeFailedFuture(error)
[1062/1069] Compiling LCLPing Configuration.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:86:13: warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 17 | import NIOHTTP1
 18 |
 19 | internal final class HTTPTracingHandler: ChannelDuplexHandler {
    |                      `- note: class 'HTTPTracingHandler' does not conform to the 'Sendable' protocol
 20 |     typealias InboundIn = HTTPClientResponsePart
 21 |     typealias InboundOut = PingResponse
    :
 84 |         self.handler.handleWrite(request: request)
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
    |             `- warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:93:21: warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 22 | /// Caller needs to provide a configuration that set the way the HTTP client initiates tests.
 23 | /// Caller can cancel the test via `cancel()`.
 24 | public final class HTTPPingClient: Pingable {
    |                    `- note: class 'HTTPPingClient' does not conform to the 'Sendable' protocol
 25 |
 26 |     private enum State {
    :
 91 |                 state = .running
 92 |                 return try self.pingClient.start().always { _ in
 93 |                     self.state.withLockedValue { state in
    |                     `- warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 94 |                         state = .idle
 95 |                     }
[1063/1069] Compiling LCLPing HTTPChannelHandlers.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:86:13: warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 17 | import NIOHTTP1
 18 |
 19 | internal final class HTTPTracingHandler: ChannelDuplexHandler {
    |                      `- note: class 'HTTPTracingHandler' does not conform to the 'Sendable' protocol
 20 |     typealias InboundIn = HTTPClientResponsePart
 21 |     typealias InboundOut = PingResponse
    :
 84 |         self.handler.handleWrite(request: request)
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
    |             `- warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:93:21: warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 22 | /// Caller needs to provide a configuration that set the way the HTTP client initiates tests.
 23 | /// Caller can cancel the test via `cancel()`.
 24 | public final class HTTPPingClient: Pingable {
    |                    `- note: class 'HTTPPingClient' does not conform to the 'Sendable' protocol
 25 |
 26 |     private enum State {
    :
 91 |                 state = .running
 92 |                 return try self.pingClient.start().always { _ in
 93 |                     self.state.withLockedValue { state in
    |                     `- warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 94 |                         state = .idle
 95 |                     }
[1064/1069] Compiling LCLPing HTTPHandler.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:86:13: warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 17 | import NIOHTTP1
 18 |
 19 | internal final class HTTPTracingHandler: ChannelDuplexHandler {
    |                      `- note: class 'HTTPTracingHandler' does not conform to the 'Sendable' protocol
 20 |     typealias InboundIn = HTTPClientResponsePart
 21 |     typealias InboundOut = PingResponse
    :
 84 |         self.handler.handleWrite(request: request)
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
    |             `- warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:93:21: warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 22 | /// Caller needs to provide a configuration that set the way the HTTP client initiates tests.
 23 | /// Caller can cancel the test via `cancel()`.
 24 | public final class HTTPPingClient: Pingable {
    |                    `- note: class 'HTTPPingClient' does not conform to the 'Sendable' protocol
 25 |
 26 |     private enum State {
    :
 91 |                 state = .running
 92 |                 return try self.pingClient.start().always { _ in
 93 |                     self.state.withLockedValue { state in
    |                     `- warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 94 |                         state = .idle
 95 |                     }
[1065/1069] Compiling LCLPing HTTPPingClient.swift
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:86:13: warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 17 | import NIOHTTP1
 18 |
 19 | internal final class HTTPTracingHandler: ChannelDuplexHandler {
    |                      `- note: class 'HTTPTracingHandler' does not conform to the 'Sendable' protocol
 20 |     typealias InboundIn = HTTPClientResponsePart
 21 |     typealias InboundOut = PingResponse
    :
 84 |         self.handler.handleWrite(request: request)
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
    |             `- warning: capture of 'self' with non-sendable type 'HTTPTracingHandler' in a '@Sendable' closure
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: capture of 'request' with non-sendable type 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') in a '@Sendable' closure
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPChannelHandlers.swift:87:67: warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 85 |         self.timer = context.eventLoop.scheduleTask(in: self.configuration.readTimeout) {
 86 |             self.timer = nil
 87 |             logger.debug("[\(#fileID)][\(#line)][\(#function)]: \(request.sequenceNumber) timeout!")
    |                                                                   `- warning: implicit capture of 'request' requires that 'HTTPTracingHandler.OutboundIn' (aka 'HTTPPingClient.Request') conforms to 'Sendable'; this is an error in the Swift 6 language mode
 88 |             self.handler.handleTimeout(sequenceNumber: request.sequenceNumber)
 89 |         }
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:124:19: note: consider making struct 'Request' conform to the 'Sendable' protocol
122 |     ///
123 |     /// The information in this data will be used to construct the corresponding HTTP request.
124 |     public struct Request {
    |                   `- note: consider making struct 'Request' conform to the 'Sendable' protocol
125 |         /// The sequence number of the ICMP test. This number should be monotonically increasing.
126 |         let sequenceNumber: Int
/host/spi-builder-workspace/Sources/LCLPing/HTTP/HTTPPingClient.swift:93:21: warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 22 | /// Caller needs to provide a configuration that set the way the HTTP client initiates tests.
 23 | /// Caller can cancel the test via `cancel()`.
 24 | public final class HTTPPingClient: Pingable {
    |                    `- note: class 'HTTPPingClient' does not conform to the 'Sendable' protocol
 25 |
 26 |     private enum State {
    :
 91 |                 state = .running
 92 |                 return try self.pingClient.start().always { _ in
 93 |                     self.state.withLockedValue { state in
    |                     `- warning: capture of 'self' with non-sendable type 'HTTPPingClient' in a '@Sendable' closure
 94 |                         state = .idle
 95 |                     }
[1066/1070] Wrapping AST for LCLPing for debugging
[1068/1072] Compiling Demo main.swift
/host/spi-builder-workspace/Sources/Demo/main.swift:27:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
25 | do {
26 |     // run the test using SwiftNIO EventLoopFuture
27 |     let result = try icmpClient.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
28 |     print(result)
29 | } catch {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/Demo/main.swift:15:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LCLPing'
13 |
14 | import Foundation
15 | import LCLPing
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LCLPing'
16 |
17 | // create ping configuration for each run
/host/spi-builder-workspace/Sources/Demo/main.swift:34:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
32 |
33 | do {
34 |     let result = try httpClient.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
35 |     print(result)
36 | } catch {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
[1069/1072] Emitting module Demo
/host/spi-builder-workspace/Sources/Demo/main.swift:27:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
25 | do {
26 |     // run the test using SwiftNIO EventLoopFuture
27 |     let result = try icmpClient.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
28 |     print(result)
29 | } catch {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
/host/spi-builder-workspace/Sources/Demo/main.swift:15:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LCLPing'
13 |
14 | import Foundation
15 | import LCLPing
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'LCLPing'
16 |
17 | // create ping configuration for each run
/host/spi-builder-workspace/Sources/Demo/main.swift:34:41: warning: type 'PingSummary' does not conform to the 'Sendable' protocol
32 |
33 | do {
34 |     let result = try httpClient.start().wait()
   |                                         `- warning: type 'PingSummary' does not conform to the 'Sendable' protocol
35 |     print(result)
36 | } catch {
/host/spi-builder-workspace/Sources/LCLPing/Models/PingSummary.swift:18:15: note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 16 | /// A summary of the ping test, including the min, max, average, median, standard deviation,
 17 | /// and detailed view of each test result.
 18 | public struct PingSummary: Equatable, Encodable {
    |               `- note: struct 'PingSummary' does not conform to the 'Sendable' protocol
 19 |     /// The minimum in the test results.
 20 |     public let min: Double
[1070/1073] Wrapping AST for Demo for debugging
[1071/1073] Write Objects.LinkFileList
[1072/1073] Linking Demo
Build complete! (130.22s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-nio",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.81.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.5.3",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "swift-nio-ssl",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.25.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio-ssl.git"
    },
    {
      "identity" : "swift-collections",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-collections.git"
    }
  ],
  "manifest_display_name" : "LCLPing",
  "name" : "LCLPing",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "LCLPing",
      "targets" : [
        "LCLPing"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "Demo",
      "targets" : [
        "Demo"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "UtilitiesTests",
      "module_type" : "SwiftTarget",
      "name" : "UtilitiesTests",
      "path" : "Tests/UtilitiesTests",
      "sources" : [
        "ArrayTests.swift",
        "Common.swift",
        "DoubleTests.swift",
        "MatchServerTimingTests.swift",
        "ObjectDecoderTests.swift",
        "SummarizePingResponseTests.swift",
        "TimeTests.swift"
      ],
      "target_dependencies" : [
        "LCLPing"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ModelTests",
      "module_type" : "SwiftTarget",
      "name" : "ModelTests",
      "path" : "Tests/ModelTests",
      "sources" : [
        "HTTPConfigurationTest.swift",
        "ICMPChecksumTests.swift"
      ],
      "target_dependencies" : [
        "LCLPing"
      ],
      "type" : "test"
    },
    {
      "c99name" : "LCLPing",
      "module_type" : "SwiftTarget",
      "name" : "LCLPing",
      "path" : "Sources/LCLPing",
      "product_dependencies" : [
        "NIO",
        "NIOCore",
        "NIOPosix",
        "NIOHTTP1",
        "NIOTestUtils",
        "NIOConcurrencyHelpers",
        "Logging",
        "NIOSSL",
        "Collections"
      ],
      "product_memberships" : [
        "LCLPing",
        "Demo"
      ],
      "sources" : [
        "Configuration.swift",
        "HTTP/HTTPChannelHandlers.swift",
        "HTTP/HTTPHandler.swift",
        "HTTP/HTTPPingClient.swift",
        "HTTP/HTTPSchema.swift",
        "HTTP/NIOHTTPClient.swift",
        "HTTP/URLSessionClient.swift",
        "ICMP/ICMPChannelHandlers.swift",
        "ICMP/ICMPHandler.swift",
        "ICMP/ICMPPingClient.swift",
        "Models/Errors+LCLPing.swift",
        "Models/HTTPLatency.swift",
        "Models/PingResponse.swift",
        "Models/PingResult.swift",
        "Models/PingState.swift",
        "Models/PingSummary.swift",
        "PingHandler.swift",
        "Pingable.swift",
        "Reachability.swift",
        "TestUtils/InboundHeaderRewriter.swift",
        "TestUtils/Rewritable.swift",
        "TestUtils/TrafficControllerChannelHandler.swift",
        "Utilities/Constants.swift",
        "Utilities/Hex.swift",
        "Utilities/LCLPing+Array.swift",
        "Utilities/LCLPing+ChannelOption.swift",
        "Utilities/LCLPing+Double.swift",
        "Utilities/LCLPing+SocketOption.swift",
        "Utilities/LCLPing+Time.swift",
        "Utilities/LCLPing+TimeInterval.swift",
        "Utilities/ObjectDecoder.swift",
        "Utilities/Utilities.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "IntegrationTests",
      "module_type" : "SwiftTarget",
      "name" : "IntegrationTests",
      "path" : "Tests/IntegrationTests",
      "sources" : [
        "HTTPIntegrationTests.swift",
        "ICMPIntegrationTests.swift"
      ],
      "target_dependencies" : [
        "LCLPing"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ICMPChannelTests",
      "module_type" : "SwiftTarget",
      "name" : "ICMPChannelTests",
      "path" : "Tests/ICMPChannelTests",
      "sources" : [
        "Common.swift",
        "ICMPDecoderTests.swift",
        "ICMPDuplexerTests.swift",
        "IPDecoderTests.swift"
      ],
      "target_dependencies" : [
        "LCLPing"
      ],
      "type" : "test"
    },
    {
      "c99name" : "HTTPChannelTests",
      "module_type" : "SwiftTarget",
      "name" : "HTTPChannelTests",
      "path" : "Tests/HTTPChannelTests",
      "sources" : [
        "HTTPTracingHandlerTests.swift"
      ],
      "target_dependencies" : [
        "LCLPing"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Demo",
      "module_type" : "SwiftTarget",
      "name" : "Demo",
      "path" : "Sources/Demo",
      "product_memberships" : [
        "Demo"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "LCLPing"
      ],
      "type" : "executable"
    }
  ],
  "tools_version" : "5.8"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.