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 1.0.4 (436006), with Swift 6.0 for Linux on 14 Apr 2025 10:14:39 UTC.

Swift 6 data race errors: 1

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -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/756] Compiling cpu_aarch64_win.cc
[671/756] Compiling bcm.cc
[672/756] Compiling curve25519.cc
[673/756] Compiling cpu_aarch64_openbsd.cc
[674/756] Compiling cpu_aarch64_sysreg.cc
[675/756] Compiling cpu_aarch64_fuchsia.cc
[676/756] Compiling cpu_aarch64_linux.cc
[677/756] Compiling cpu_aarch64_apple.cc
[678/756] Compiling curve25519_64_adx.cc
[679/756] Compiling conf.cc
[680/756] Compiling tls_cbc.cc
[681/756] Compiling e_tls.cc
[682/756] Compiling e_rc2.cc
[683/756] Compiling e_null.cc
[684/756] Compiling e_rc4.cc
[685/756] Compiling e_des.cc
[686/756] Compiling e_chacha20poly1305.cc
[687/756] Compiling derive_key.cc
[688/756] Compiling e_aesgcmsiv.cc
[689/756] Compiling e_aesctrhmac.cc
[690/756] Compiling unicode.cc
[690/756] Compiling cipher_extra.cc
[692/756] Compiling chacha.cc
[693/756] Compiling cbs.cc
[694/756] Compiling cbb.cc
[695/756] Compiling ber.cc
[696/756] Compiling buf.cc
[697/756] Compiling bn_asn1.cc
[698/756] Compiling asn1_compat.cc
[699/756] Compiling blake2.cc
[700/756] Compiling convert.cc
[701/756] Compiling fd.cc
[702/756] Compiling socket_helper.cc
[703/756] Compiling socket.cc
[704/756] Compiling printf.cc
[705/756] Compiling pair.cc
[706/756] Compiling file.cc
[707/756] Compiling hexdump.cc
[708/756] Compiling errno.cc
[709/756] Compiling connect.cc
[710/756] Compiling bio_mem.cc
[711/756] Compiling base64.cc
[712/756] Compiling tasn_utl.cc
[713/756] Compiling bio.cc
[714/756] Compiling tasn_fre.cc
[715/756] Compiling tasn_typ.cc
[716/756] Compiling tasn_new.cc
[717/756] Compiling tasn_enc.cc
[718/756] Compiling f_string.cc
[719/756] Compiling posix_time.cc
[720/756] Compiling f_int.cc
[721/756] Compiling tasn_dec.cc
[722/756] Compiling asn_pack.cc
[723/756] Compiling asn1_par.cc
[724/756] Compiling a_utctm.cc
[725/756] Compiling asn1_lib.cc
[726/756] Compiling a_type.cc
[727/756] Compiling a_octet.cc
[728/756] Compiling a_time.cc
[729/756] Compiling a_strex.cc
[730/756] Compiling a_mbstr.cc
[731/756] Compiling a_object.cc
[732/756] Write sources
[734/756] Compiling a_strnid.cc
[735/756] Compiling a_i2d_fp.cc
[736/756] Compiling a_d2i_fp.cc
[737/756] Compiling a_int.cc
[738/781] Compiling a_gentm.cc
[739/822] Compiling a_dup.cc
[740/828] Compiling a_bool.cc
[742/828] Compiling Atomics ManagedAtomic.swift
[743/828] Compiling Atomics ManagedAtomicLazyReference.swift
[744/828] Compiling Atomics UnsafeAtomic.swift
[745/828] Compiling Atomics UnsafeAtomicLazyReference.swift
[746/830] Compiling Atomics AtomicMemoryOrderings.swift
[747/830] Compiling Atomics DoubleWord.swift
[748/830] Compiling Atomics OptionalRawRepresentable.swift
[749/830] Compiling Atomics RawRepresentable.swift
[750/830] Compiling Atomics AtomicBool.swift
[751/830] Compiling Atomics AtomicReference.swift
[752/830] Compiling Atomics AtomicStorage.swift
[753/830] Compiling Atomics AtomicValue.swift
[754/830] Compiling Atomics Primitives.shims.swift
[755/830] Compiling Atomics AtomicInteger.swift
[756/830] Compiling Atomics AtomicOptionalWrappable.swift
[763/830] Compiling Atomics IntegerConformances.swift
[764/830] Compiling Atomics PointerConformances.swift
[765/830] Compiling Atomics IntegerOperations.swift
[766/830] Compiling Atomics Unmanaged extensions.swift
[767/837] Compiling BitCollections BitSet+CustomDebugStringConvertible.swift
[768/837] Compiling BitCollections BitSet+CustomReflectable.swift
[769/837] Compiling BitCollections BitSet+CustomStringConvertible.swift
[770/837] Compiling BitCollections BitSet+Equatable.swift
[771/837] Compiling BitCollections BitSet+ExpressibleByArrayLiteral.swift
[772/837] Compiling BitCollections BitSet+Extras.swift
[773/837] Compiling BitCollections BitSet+Hashable.swift
[774/837] Compiling BitCollections BitSet+SetAlgebra formUnion.swift
[775/837] Compiling BitCollections BitSet+SetAlgebra intersection.swift
[776/837] Compiling BitCollections BitSet+SetAlgebra isDisjoint.swift
[777/837] Compiling BitCollections BitSet+SetAlgebra isEqualSet.swift
[778/837] Compiling BitCollections BitSet+SetAlgebra isStrictSubset.swift
[779/837] Compiling BitCollections BitSet+SetAlgebra isStrictSuperset.swift
[780/837] Compiling BitCollections BitSet+SetAlgebra isSubset.swift
[781/837] Compiling BitCollections BitSet+SetAlgebra isSuperset.swift
[782/837] Compiling BitCollections BitSet+SetAlgebra subtract.swift
[783/837] Compiling BitCollections BitSet+SetAlgebra subtracting.swift
[784/837] Compiling BitCollections BitSet+SetAlgebra symmetricDifference.swift
[785/837] Compiling BitCollections BitSet+SetAlgebra union.swift
[786/837] Compiling BitCollections BitSet+Sorted Collection APIs.swift
[787/837] Compiling BitCollections BitSet.Counted.swift
[788/837] Compiling BitCollections BitSet+Initializers.swift
[789/837] Compiling BitCollections BitSet+Invariants.swift
[790/837] Compiling BitCollections BitSet+Random.swift
[791/837] Compiling BitCollections BitSet+SetAlgebra basics.swift
[792/837] Compiling BitCollections BitSet+SetAlgebra conformance.swift
[793/837] Compiling BitCollections BitSet+SetAlgebra formIntersection.swift
[794/837] Compiling BitCollections BitSet+SetAlgebra formSymmetricDifference.swift
[795/837] Emitting module BitCollections
[800/837] Compiling BitCollections BitArray._UnsafeHandle.swift
[801/837] Compiling BitCollections BitArray.swift
[802/837] Compiling BitCollections BitSet+BidirectionalCollection.swift
[803/837] Compiling BitCollections BitSet+Codable.swift
[804/837] Compiling Atomics Primitives.native.swift
[812/837] Compiling BitCollections BitSet.Index.swift
[813/837] Compiling BitCollections BitSet._UnsafeHandle.swift
[814/837] Compiling BitCollections BitSet.swift
[815/837] Compiling BitCollections Range+Utilities.swift
[816/837] Compiling BitCollections Slice+Utilities.swift
[817/837] Compiling BitCollections UInt+Tricks.swift
[818/837] Compiling BitCollections _Word.swift
[819/838] Wrapping AST for BitCollections for debugging
[821/840] Emitting module Collections
[822/840] Compiling Collections Collections.swift
[823/841] Wrapping AST for Collections for debugging
[825/841] Emitting module Atomics
[829/842] Wrapping AST for Atomics 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 EventLoop.swift
[848/909] Compiling NIOCore EventLoopFuture+AssumeIsolated.swift
[849/909] Compiling NIOCore EventLoopFuture+Deprecated.swift
[850/909] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[851/909] Compiling NIOCore EventLoopFuture.swift
[852/909] Compiling NIOCore FileDescriptor.swift
[853/909] Compiling NIOCore FileHandle.swift
[854/909] Compiling NIOCore FileRegion.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 SingleStepByteToMessageDecoder.swift
[864/909] Compiling NIOCore SocketAddresses.swift
[865/909] Compiling NIOCore SocketOptionProvider.swift
[866/909] Compiling NIOCore SystemCallHelpers.swift
[867/909] Compiling NIOCore TimeAmount+Duration.swift
[868/909] Compiling NIOCore TypeAssistedChannelHandler.swift
[869/909] Compiling NIOCore UniversalBootstrapSupport.swift
[870/909] Compiling NIOCore Utilities.swift
[871/909] Compiling NIOCore AddressedEnvelope.swift
[872/909] Compiling NIOCore AsyncAwaitSupport.swift
[873/909] Compiling NIOCore AsyncChannel.swift
[874/909] Compiling NIOCore AsyncChannelHandler.swift
[875/909] Compiling NIOCore AsyncChannelInboundStream.swift
[876/909] Compiling NIOCore AsyncChannelOutboundWriter.swift
[877/909] Compiling NIOCore NIOAsyncSequenceProducer.swift
[878/909] Compiling NIOCore NIOAsyncSequenceProducerStrategies.swift
[879/909] Compiling NIOCore NIOAsyncWriter.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 ByteBuffer-multi-int.swift
[890/909] Compiling NIOCore ByteBuffer-quicBinaryEncodingStrategy.swift
[891/909] Compiling NIOCore ByteBuffer-views.swift
[892/909] Compiling NIOCore Channel.swift
[893/909] Compiling NIOCore ChannelHandler.swift
[894/909] Compiling NIOCore ChannelHandlers.swift
[895/909] Compiling NIOCore ChannelInvoker.swift
[896/909] Compiling NIOCore ChannelOption.swift
[897/909] Emitting module NIOCore
[898/910] Wrapping AST for NIOCore for debugging
[900/961] Emitting module NIOEmbedded
[901/961] Compiling NIOEmbedded AsyncTestingChannel.swift
[902/961] Compiling NIOPosix PooledRecvBufferAllocator.swift
[903/961] Compiling NIOPosix PosixSingletons+ConcurrencyTakeOver.swift
[904/961] Compiling NIOPosix PosixSingletons.swift
[905/961] Compiling NIOPosix RawSocketBootstrap.swift
[906/961] Compiling NIOPosix Resolver.swift
[907/961] Compiling NIOPosix Selectable.swift
[908/967] Compiling NIOPosix IO.swift
[909/967] Compiling NIOPosix IntegerBitPacking.swift
[910/967] Compiling NIOPosix IntegerTypes.swift
[911/967] Compiling NIOPosix Linux.swift
[912/967] Compiling NIOPosix LinuxCPUSet.swift
[913/967] Compiling NIOPosix LinuxUring.swift
[914/967] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[915/967] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[916/967] Compiling NIOEmbedded Embedded.swift
[918/968] Compiling NIOPosix ThreadPosix.swift
[919/968] Compiling NIOPosix ThreadWindows.swift
[920/968] Compiling NIOPosix UnsafeTransfer.swift
[921/968] Compiling NIOPosix Utilities.swift
[922/968] Compiling NIOPosix VsockAddress.swift
[923/968] Compiling NIOPosix VsockChannelEvents.swift
[924/968] Compiling NIOPosix ServerSocket.swift
[925/968] Compiling NIOPosix Socket.swift
[926/968] Compiling NIOPosix SocketChannel.swift
[927/968] Compiling NIOPosix SocketProtocols.swift
[928/968] Compiling NIOPosix System.swift
[929/968] Compiling NIOPosix Thread.swift
[929/968] Wrapping AST for NIOEmbedded for debugging
[931/968] Compiling NIOPosix SelectableChannel.swift
[932/968] Compiling NIOPosix SelectableEventLoop.swift
[933/968] Compiling NIOPosix SelectorEpoll.swift
[934/968] Compiling NIOPosix SelectorGeneric.swift
[935/968] Compiling NIOPosix SelectorKqueue.swift
[936/968] Compiling NIOPosix SelectorUring.swift
[937/968] Compiling NIOPosix BSDSocketAPICommon.swift
[938/968] Compiling NIOPosix BSDSocketAPIPosix.swift
[939/968] Compiling NIOPosix BSDSocketAPIWindows.swift
[940/968] Compiling NIOPosix BaseSocket.swift
[941/968] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[942/968] Compiling NIOPosix BaseSocketChannel.swift
[943/968] Compiling NIOPosix BaseStreamSocketChannel.swift
[944/968] Emitting module NIOPosix
[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 Bootstrap.swift
[953/968] Compiling NIOPosix ControlMessage.swift
[954/968] Compiling NIOPosix DatagramVectorReadManager.swift
[955/968] Compiling NIOPosix Errors+Any.swift
[956/968] Compiling NIOPosix FileDescriptor.swift
[957/968] Compiling NIOPosix GetaddrinfoResolver.swift
[958/968] Compiling NIOPosix HappyEyeballs.swift
[959/969] Wrapping AST for NIOPosix for debugging
[961/971] Compiling NIO Exports.swift
[962/971] Emitting module NIO
[963/972] Wrapping AST for NIO for debugging
[965/994] Emitting module NIOTLS
[966/994] Compiling NIOTLS TLSEvents.swift
[967/994] Compiling NIOTLS ProtocolNegotiationHandlerStateMachine.swift
[968/994] Compiling NIOTLS NIOTypedApplicationProtocolNegotiationHandler.swift
[969/994] Compiling NIOTLS ApplicationProtocolNegotiationHandler.swift
[970/994] Compiling NIOTLS SNIHandler.swift
[971/995] Compiling NIOHTTP1 NIOTypedHTTPClientUpgradeHandler.swift
[972/995] Compiling NIOHTTP1 NIOTypedHTTPClientUpgraderStateMachine.swift
[973/997] Wrapping AST for NIOTLS for debugging
[975/997] Compiling NIOHTTP1 NIOHTTPClientUpgradeHandler.swift
[976/997] Compiling NIOHTTP1 NIOHTTPObjectAggregator.swift
[977/997] Emitting module NIOHTTP1
[978/997] Compiling NIOHTTP1 HTTPPipelineSetup.swift
[979/997] Compiling NIOHTTP1 HTTPServerPipelineHandler.swift
[980/997] Compiling NIOHTTP1 HTTPHeaderValidator.swift
[981/997] Compiling NIOHTTP1 HTTPHeaders+Validation.swift
[982/1026] Compiling NIOSSL SSLCallbacks.swift
[983/1026] Compiling NIOSSL SSLErrors.swift
[984/1026] Compiling NIOSSL SSLPrivateKey.swift
[985/1026] Compiling NIOSSL SSLCertificate.swift
[986/1026] Compiling NIOSSL SSLContext.swift
[987/1026] Compiling NIOSSL SSLPublicKey.swift
[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
[993/1031] Emitting module NIOSSL
[994/1034] Emitting module NIOTestUtils
[995/1034] Compiling NIOSSL NIOSSLSecureBytes.swift
[996/1034] Compiling NIOSSL RNG.swift
[997/1034] Compiling NIOSSL SafeCompare.swift
[998/1034] Compiling NIOSSL Zeroization.swift
[999/1034] Compiling NIOSSL LinuxCABundle.swift
[1000/1034] Compiling NIOSSL NIOSSLClientHandler.swift
[1001/1034] Compiling NIOSSL NIOSSLHandler+Configuration.swift
[1002/1034] Compiling NIOSSL NIOSSLHandler.swift
[1004/1034] Compiling NIOSSL SecurityFrameworkCertificateVerification.swift
[1005/1034] Compiling NIOSSL String+unsafeUninitializedCapacity.swift
[1006/1034] Compiling NIOSSL SubjectAlternativeName.swift
[1007/1034] Compiling NIOSSL NIOSSLServerHandler.swift
[1008/1034] Compiling NIOSSL ObjectIdentifier.swift
[1009/1034] Compiling NIOSSL PosixPort.swift
[1014/1034] Compiling NIOSSL IdentityVerification.swift
[1016/1034] Compiling NIOSSL SSLInit.swift
[1017/1034] Compiling NIOSSL SSLPKCS12Bundle.swift
[1019/1034] Compiling NIOTestUtils EventCounterHandler.swift
[1020/1034] Compiling NIOTestUtils NIOHTTP1TestServer.swift
[1021/1034] Compiling NIOTestUtils ByteToMessageDecoderVerifier.swift
[1022/1035] Wrapping AST for NIOTestUtils for debugging
[1025/1035] Compiling NIOSSL SSLCertificateExtensions.swift
[1026/1035] Compiling NIOSSL SSLConnection.swift
[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] 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: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1034/1069] Compiling LCLPing LCLPing+Time.swift
[1035/1069] Compiling LCLPing LCLPing+TimeInterval.swift
[1036/1069] Compiling LCLPing ObjectDecoder.swift
[1037/1069] Compiling LCLPing Utilities.swift
[1038/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: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1039/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: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1040/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: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1041/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: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         min: .zero,
 85 |         max: .zero,
[1042/1069] Compiling LCLPing LCLPing+Array.swift
[1043/1069] Compiling LCLPing LCLPing+ChannelOption.swift
[1044/1069] Compiling LCLPing LCLPing+Double.swift
[1045/1069] Compiling LCLPing LCLPing+SocketOption.swift
[1046/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 |         }
[1047/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 |         }
[1048/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 |         }
[1049/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 |         }
[1050/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
[1051/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
[1052/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
[1053/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
[1054/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 |     }
[1055/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 |     }
[1056/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 |     }
[1057/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 |     }
[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] 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
[1069/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
[1070/1073] Wrapping AST for Demo for debugging
[1071/1073] Write Objects.LinkFileList
[1072/1073] Linking Demo
Build complete! (149.38s)
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.0-latest: Pulling from finestructure/spi-images
Digest: sha256:9029076bb687edc160a3d5201c89e92dd9fa7309f33f090c4234365c83366c31
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.