The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of grpc-swift, reference release/1.x (664cc4), with Swift 6.1 for Linux on 3 Jun 2025 18:57:36 UTC.

Swift 6 data race errors: 22

Build Command

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

Build Log

 399 |       }
 400 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:428:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 426 |     } else {
 427 |       self.callEventLoop.execute {
 428 |         self._receiveFromChannel(initialMetadata: headers)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 429 |       }
 430 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:447:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 445 |     } else {
 446 |       self.callEventLoop.execute {
 447 |         self._receiveFromChannel(message: buffer)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 448 |       }
 449 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:473:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 471 |     } else {
 472 |       self.callEventLoop.execute {
 473 |         self.trailers = trailers
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 474 |       }
 475 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:484:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 482 |     } else {
 483 |       self.callEventLoop.execute {
 484 |         self._receiveFromChannel(status: status)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 485 |       }
 486 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:840:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 838 |       // hop.
 839 |       if error is GRPCStatus || error is GRPCStatusTransformable {
 840 |         self.handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 841 |       } else {
 842 |         // Fallback to something which will mark the RPC as 'unavailable'.
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:952:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 950 |     case let .metadata(headers):
 951 |       let head = self.makeRequestHead(with: headers)
 952 |       channel.write(self.wrapOutboundOut(.head(head)), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 953 |       // Messages are buffered by this class and in the async writer for async calls. Initially the
 954 |       // async writer is not allowed to emit messages; the call to 'onStart()' signals that messages
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:963:17: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 961 |         let bytes = try self.serializer.serialize(request, allocator: channel.allocator)
 962 |         let message = _MessageContext<ByteBuffer>(bytes, compressed: metadata.compress)
 963 |         channel.write(self.wrapOutboundOut(.message(message)), promise: promise)
     |                 `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 964 |       } catch {
 965 |         self.handleError(error)
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:969:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 967 |
 968 |     case .end:
 969 |       channel.write(self.wrapOutboundOut(.end), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 970 |     }
 971 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:260:23: warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
258 |         do {
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
    |                       `- warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
262 |             logger: transport.logger
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:38:22: note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:261:42: warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
185 |
186 | @usableFromInline
187 | internal struct HTTP2ClientTransportFactory<Request, Response> {
    |                 `- note: consider making generic struct 'HTTP2ClientTransportFactory' conform to the 'Sendable' protocol
188 |   /// The multiplexer providing an HTTP/2 stream for the call.
189 |   private var streamChannel: EventLoopFuture<Channel>
    :
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
    |                                          `- warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
262 |             logger: transport.logger
263 |           )
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:58: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                          `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:70: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                                      `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:363:13: warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
361 |           switch result {
362 |           case .success:
363 |             fakeResponse.activate()
    |             `- warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
364 |           case .failure:
365 |             ()
/host/spi-builder-workspace/Sources/GRPC/_FakeResponseStream.swift:43:14: note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 41 | /// Users may not interact with this class directly but may do so via one of its subclasses
 42 | /// `FakeUnaryResponse` and `FakeStreamingResponse`.
 43 | public class _FakeResponseStream<Request, Response> {
    |              `- note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 44 |   private enum StreamEvent {
 45 |     case responsePart(_GRPCClientResponsePart<Response>)
[1365/1407] Compiling GRPC ClientInterceptorProtocol.swift
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:125:23: warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 27 | /// configures the pipeline appropriately for the protocol negotiated via ALPN. If TLS is not
 28 | /// configured then the HTTP version is determined by parsing the inbound byte stream.
 29 | final class GRPCServerPipelineConfigurator: ChannelInboundHandler, RemovableChannelHandler {
    |             `- note: class 'GRPCServerPipelineConfigurator' does not conform to the 'Sendable' protocol
 30 |   internal typealias InboundIn = ByteBuffer
 31 |   internal typealias InboundOut = ByteBuffer
    :
123 |       do {
124 |         // TODO: provide user configuration for header normalization.
125 |         let handler = self.makeHTTP2ToRawGRPCHandler(normalizeHeaders: true, logger: logger)
    |                       `- warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
126 |         try stream.pipeline.syncOperations.addHandler(handler)
127 |         return stream.eventLoop.makeSucceededVoidFuture()
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:153:24: warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
151 |     switch result {
152 |     case .success:
153 |       context.pipeline.removeHandler(context: context, promise: nil)
    |                        `- warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
154 |     case let .failure(error):
155 |       self.errorCaught(context: context, error: error)
/host/spi-builder-workspace/Sources/GRPC/GRPCTLSConfiguration.swift:36:10: warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 34 |     #if canImport(NIOSSL)
 35 |     /// Configuration for NIOSSSL.
 36 |     case nio(NIOConfiguration)
    |          `- warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 37 |     #endif
 38 |     #if canImport(Network)
    :
218 | #if canImport(NIOSSL)
219 | extension GRPCTLSConfiguration {
220 |   internal struct NIOConfiguration {
    |                   `- note: consider making struct 'NIOConfiguration' conform to the 'Sendable' protocol
221 |     var configuration: TLSConfiguration
222 |     var customVerificationCallback: NIOSSLCustomVerificationCallback?
/host/spi-builder-workspace/Sources/GRPC/GRPCTimeout.swift:24:21: warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
 20 | ///
 21 | /// Timeouts must be positive and at most 8-digits long.
 22 | public struct GRPCTimeout: CustomStringConvertible, Equatable {
    |               `- note: consider making struct 'GRPCTimeout' conform to the 'Sendable' protocol
 23 |   /// Creates an infinite timeout. This is a sentinel value which must __not__ be sent to a gRPC service.
 24 |   public static let infinite = GRPCTimeout(
    |                     |- warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'infinite' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |     nanoseconds: Int64.max,
 26 |     wireEncoding: "infinite"
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:477:9: warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
 59 | /// ```
 60 | @usableFromInline
 61 | internal final class ClientInterceptorPipeline<Request, Response> {
    |                      `- note: generic class 'ClientInterceptorPipeline' does not conform to the 'Sendable' protocol
 62 |   /// A logger.
 63 |   @usableFromInline
    :
475 |         // When the error hits the tail we'll call 'close()', this will cancel the transport if
476 |         // necessary.
477 |         self.errorCaught(GRPCError.RPCTimedOut(timeLimit))
    |         `- warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
478 |       }
479 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:485:9: warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
483 |     } else {
484 |       self.eventLoop.execute {
485 |         setup()
    |         `- warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
486 |       }
487 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:463:10: warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
461 |   @inlinable
462 |   internal func _setupDeadline() {
463 |     func setup() {
    |          `- warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
464 |       self.eventLoop.assertInEventLoop()
465 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:324:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 322 |     } else {
 323 |       self.callEventLoop.execute {
 324 |         self._transportActivated(channel: channel)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 325 |       }
 326 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:356:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 354 |     } else {
 355 |       self.callEventLoop.execute {
 356 |         self._transportDeactivated()
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 357 |       }
 358 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:385:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 383 |     } else {
 384 |       self.callEventLoop.execute {
 385 |         self.channel = nil
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 386 |       }
 387 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:398:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 396 |     } else {
 397 |       self.callEventLoop.execute {
 398 |         self._handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 399 |       }
 400 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:428:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 426 |     } else {
 427 |       self.callEventLoop.execute {
 428 |         self._receiveFromChannel(initialMetadata: headers)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 429 |       }
 430 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:447:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 445 |     } else {
 446 |       self.callEventLoop.execute {
 447 |         self._receiveFromChannel(message: buffer)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 448 |       }
 449 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:473:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 471 |     } else {
 472 |       self.callEventLoop.execute {
 473 |         self.trailers = trailers
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 474 |       }
 475 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:484:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 482 |     } else {
 483 |       self.callEventLoop.execute {
 484 |         self._receiveFromChannel(status: status)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 485 |       }
 486 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:840:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 838 |       // hop.
 839 |       if error is GRPCStatus || error is GRPCStatusTransformable {
 840 |         self.handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 841 |       } else {
 842 |         // Fallback to something which will mark the RPC as 'unavailable'.
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:952:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 950 |     case let .metadata(headers):
 951 |       let head = self.makeRequestHead(with: headers)
 952 |       channel.write(self.wrapOutboundOut(.head(head)), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 953 |       // Messages are buffered by this class and in the async writer for async calls. Initially the
 954 |       // async writer is not allowed to emit messages; the call to 'onStart()' signals that messages
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:963:17: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 961 |         let bytes = try self.serializer.serialize(request, allocator: channel.allocator)
 962 |         let message = _MessageContext<ByteBuffer>(bytes, compressed: metadata.compress)
 963 |         channel.write(self.wrapOutboundOut(.message(message)), promise: promise)
     |                 `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 964 |       } catch {
 965 |         self.handleError(error)
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:969:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 967 |
 968 |     case .end:
 969 |       channel.write(self.wrapOutboundOut(.end), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 970 |     }
 971 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:260:23: warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
258 |         do {
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
    |                       `- warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
262 |             logger: transport.logger
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:38:22: note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:261:42: warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
185 |
186 | @usableFromInline
187 | internal struct HTTP2ClientTransportFactory<Request, Response> {
    |                 `- note: consider making generic struct 'HTTP2ClientTransportFactory' conform to the 'Sendable' protocol
188 |   /// The multiplexer providing an HTTP/2 stream for the call.
189 |   private var streamChannel: EventLoopFuture<Channel>
    :
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
    |                                          `- warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
262 |             logger: transport.logger
263 |           )
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:58: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                          `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:70: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                                      `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:363:13: warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
361 |           switch result {
362 |           case .success:
363 |             fakeResponse.activate()
    |             `- warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
364 |           case .failure:
365 |             ()
/host/spi-builder-workspace/Sources/GRPC/_FakeResponseStream.swift:43:14: note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 41 | /// Users may not interact with this class directly but may do so via one of its subclasses
 42 | /// `FakeUnaryResponse` and `FakeStreamingResponse`.
 43 | public class _FakeResponseStream<Request, Response> {
    |              `- note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 44 |   private enum StreamEvent {
 45 |     case responsePart(_GRPCClientResponsePart<Response>)
[1366/1407] Compiling GRPC ClientInterceptors.swift
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:125:23: warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 27 | /// configures the pipeline appropriately for the protocol negotiated via ALPN. If TLS is not
 28 | /// configured then the HTTP version is determined by parsing the inbound byte stream.
 29 | final class GRPCServerPipelineConfigurator: ChannelInboundHandler, RemovableChannelHandler {
    |             `- note: class 'GRPCServerPipelineConfigurator' does not conform to the 'Sendable' protocol
 30 |   internal typealias InboundIn = ByteBuffer
 31 |   internal typealias InboundOut = ByteBuffer
    :
123 |       do {
124 |         // TODO: provide user configuration for header normalization.
125 |         let handler = self.makeHTTP2ToRawGRPCHandler(normalizeHeaders: true, logger: logger)
    |                       `- warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
126 |         try stream.pipeline.syncOperations.addHandler(handler)
127 |         return stream.eventLoop.makeSucceededVoidFuture()
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:153:24: warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
151 |     switch result {
152 |     case .success:
153 |       context.pipeline.removeHandler(context: context, promise: nil)
    |                        `- warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
154 |     case let .failure(error):
155 |       self.errorCaught(context: context, error: error)
/host/spi-builder-workspace/Sources/GRPC/GRPCTLSConfiguration.swift:36:10: warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 34 |     #if canImport(NIOSSL)
 35 |     /// Configuration for NIOSSSL.
 36 |     case nio(NIOConfiguration)
    |          `- warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 37 |     #endif
 38 |     #if canImport(Network)
    :
218 | #if canImport(NIOSSL)
219 | extension GRPCTLSConfiguration {
220 |   internal struct NIOConfiguration {
    |                   `- note: consider making struct 'NIOConfiguration' conform to the 'Sendable' protocol
221 |     var configuration: TLSConfiguration
222 |     var customVerificationCallback: NIOSSLCustomVerificationCallback?
/host/spi-builder-workspace/Sources/GRPC/GRPCTimeout.swift:24:21: warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
 20 | ///
 21 | /// Timeouts must be positive and at most 8-digits long.
 22 | public struct GRPCTimeout: CustomStringConvertible, Equatable {
    |               `- note: consider making struct 'GRPCTimeout' conform to the 'Sendable' protocol
 23 |   /// Creates an infinite timeout. This is a sentinel value which must __not__ be sent to a gRPC service.
 24 |   public static let infinite = GRPCTimeout(
    |                     |- warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'infinite' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |     nanoseconds: Int64.max,
 26 |     wireEncoding: "infinite"
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:477:9: warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
 59 | /// ```
 60 | @usableFromInline
 61 | internal final class ClientInterceptorPipeline<Request, Response> {
    |                      `- note: generic class 'ClientInterceptorPipeline' does not conform to the 'Sendable' protocol
 62 |   /// A logger.
 63 |   @usableFromInline
    :
475 |         // When the error hits the tail we'll call 'close()', this will cancel the transport if
476 |         // necessary.
477 |         self.errorCaught(GRPCError.RPCTimedOut(timeLimit))
    |         `- warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
478 |       }
479 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:485:9: warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
483 |     } else {
484 |       self.eventLoop.execute {
485 |         setup()
    |         `- warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
486 |       }
487 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:463:10: warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
461 |   @inlinable
462 |   internal func _setupDeadline() {
463 |     func setup() {
    |          `- warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
464 |       self.eventLoop.assertInEventLoop()
465 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:324:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 322 |     } else {
 323 |       self.callEventLoop.execute {
 324 |         self._transportActivated(channel: channel)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 325 |       }
 326 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:356:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 354 |     } else {
 355 |       self.callEventLoop.execute {
 356 |         self._transportDeactivated()
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 357 |       }
 358 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:385:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 383 |     } else {
 384 |       self.callEventLoop.execute {
 385 |         self.channel = nil
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 386 |       }
 387 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:398:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 396 |     } else {
 397 |       self.callEventLoop.execute {
 398 |         self._handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 399 |       }
 400 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:428:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 426 |     } else {
 427 |       self.callEventLoop.execute {
 428 |         self._receiveFromChannel(initialMetadata: headers)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 429 |       }
 430 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:447:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 445 |     } else {
 446 |       self.callEventLoop.execute {
 447 |         self._receiveFromChannel(message: buffer)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 448 |       }
 449 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:473:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 471 |     } else {
 472 |       self.callEventLoop.execute {
 473 |         self.trailers = trailers
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 474 |       }
 475 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:484:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 482 |     } else {
 483 |       self.callEventLoop.execute {
 484 |         self._receiveFromChannel(status: status)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 485 |       }
 486 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:840:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 838 |       // hop.
 839 |       if error is GRPCStatus || error is GRPCStatusTransformable {
 840 |         self.handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 841 |       } else {
 842 |         // Fallback to something which will mark the RPC as 'unavailable'.
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:952:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 950 |     case let .metadata(headers):
 951 |       let head = self.makeRequestHead(with: headers)
 952 |       channel.write(self.wrapOutboundOut(.head(head)), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 953 |       // Messages are buffered by this class and in the async writer for async calls. Initially the
 954 |       // async writer is not allowed to emit messages; the call to 'onStart()' signals that messages
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:963:17: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 961 |         let bytes = try self.serializer.serialize(request, allocator: channel.allocator)
 962 |         let message = _MessageContext<ByteBuffer>(bytes, compressed: metadata.compress)
 963 |         channel.write(self.wrapOutboundOut(.message(message)), promise: promise)
     |                 `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 964 |       } catch {
 965 |         self.handleError(error)
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:969:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 967 |
 968 |     case .end:
 969 |       channel.write(self.wrapOutboundOut(.end), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 970 |     }
 971 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:260:23: warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
258 |         do {
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
    |                       `- warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
262 |             logger: transport.logger
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:38:22: note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:261:42: warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
185 |
186 | @usableFromInline
187 | internal struct HTTP2ClientTransportFactory<Request, Response> {
    |                 `- note: consider making generic struct 'HTTP2ClientTransportFactory' conform to the 'Sendable' protocol
188 |   /// The multiplexer providing an HTTP/2 stream for the call.
189 |   private var streamChannel: EventLoopFuture<Channel>
    :
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
    |                                          `- warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
262 |             logger: transport.logger
263 |           )
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:58: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                          `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:70: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                                      `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:363:13: warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
361 |           switch result {
362 |           case .success:
363 |             fakeResponse.activate()
    |             `- warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
364 |           case .failure:
365 |             ()
/host/spi-builder-workspace/Sources/GRPC/_FakeResponseStream.swift:43:14: note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 41 | /// Users may not interact with this class directly but may do so via one of its subclasses
 42 | /// `FakeUnaryResponse` and `FakeStreamingResponse`.
 43 | public class _FakeResponseStream<Request, Response> {
    |              `- note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 44 |   private enum StreamEvent {
 45 |     case responsePart(_GRPCClientResponsePart<Response>)
[1367/1407] Compiling GRPC ClientTransport.swift
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:125:23: warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 27 | /// configures the pipeline appropriately for the protocol negotiated via ALPN. If TLS is not
 28 | /// configured then the HTTP version is determined by parsing the inbound byte stream.
 29 | final class GRPCServerPipelineConfigurator: ChannelInboundHandler, RemovableChannelHandler {
    |             `- note: class 'GRPCServerPipelineConfigurator' does not conform to the 'Sendable' protocol
 30 |   internal typealias InboundIn = ByteBuffer
 31 |   internal typealias InboundOut = ByteBuffer
    :
123 |       do {
124 |         // TODO: provide user configuration for header normalization.
125 |         let handler = self.makeHTTP2ToRawGRPCHandler(normalizeHeaders: true, logger: logger)
    |                       `- warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
126 |         try stream.pipeline.syncOperations.addHandler(handler)
127 |         return stream.eventLoop.makeSucceededVoidFuture()
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:153:24: warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
151 |     switch result {
152 |     case .success:
153 |       context.pipeline.removeHandler(context: context, promise: nil)
    |                        `- warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
154 |     case let .failure(error):
155 |       self.errorCaught(context: context, error: error)
/host/spi-builder-workspace/Sources/GRPC/GRPCTLSConfiguration.swift:36:10: warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 34 |     #if canImport(NIOSSL)
 35 |     /// Configuration for NIOSSSL.
 36 |     case nio(NIOConfiguration)
    |          `- warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 37 |     #endif
 38 |     #if canImport(Network)
    :
218 | #if canImport(NIOSSL)
219 | extension GRPCTLSConfiguration {
220 |   internal struct NIOConfiguration {
    |                   `- note: consider making struct 'NIOConfiguration' conform to the 'Sendable' protocol
221 |     var configuration: TLSConfiguration
222 |     var customVerificationCallback: NIOSSLCustomVerificationCallback?
/host/spi-builder-workspace/Sources/GRPC/GRPCTimeout.swift:24:21: warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
 20 | ///
 21 | /// Timeouts must be positive and at most 8-digits long.
 22 | public struct GRPCTimeout: CustomStringConvertible, Equatable {
    |               `- note: consider making struct 'GRPCTimeout' conform to the 'Sendable' protocol
 23 |   /// Creates an infinite timeout. This is a sentinel value which must __not__ be sent to a gRPC service.
 24 |   public static let infinite = GRPCTimeout(
    |                     |- warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'infinite' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |     nanoseconds: Int64.max,
 26 |     wireEncoding: "infinite"
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:477:9: warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
 59 | /// ```
 60 | @usableFromInline
 61 | internal final class ClientInterceptorPipeline<Request, Response> {
    |                      `- note: generic class 'ClientInterceptorPipeline' does not conform to the 'Sendable' protocol
 62 |   /// A logger.
 63 |   @usableFromInline
    :
475 |         // When the error hits the tail we'll call 'close()', this will cancel the transport if
476 |         // necessary.
477 |         self.errorCaught(GRPCError.RPCTimedOut(timeLimit))
    |         `- warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
478 |       }
479 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:485:9: warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
483 |     } else {
484 |       self.eventLoop.execute {
485 |         setup()
    |         `- warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
486 |       }
487 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:463:10: warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
461 |   @inlinable
462 |   internal func _setupDeadline() {
463 |     func setup() {
    |          `- warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
464 |       self.eventLoop.assertInEventLoop()
465 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:324:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 322 |     } else {
 323 |       self.callEventLoop.execute {
 324 |         self._transportActivated(channel: channel)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 325 |       }
 326 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:356:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 354 |     } else {
 355 |       self.callEventLoop.execute {
 356 |         self._transportDeactivated()
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 357 |       }
 358 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:385:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 383 |     } else {
 384 |       self.callEventLoop.execute {
 385 |         self.channel = nil
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 386 |       }
 387 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:398:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 396 |     } else {
 397 |       self.callEventLoop.execute {
 398 |         self._handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 399 |       }
 400 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:428:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 426 |     } else {
 427 |       self.callEventLoop.execute {
 428 |         self._receiveFromChannel(initialMetadata: headers)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 429 |       }
 430 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:447:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 445 |     } else {
 446 |       self.callEventLoop.execute {
 447 |         self._receiveFromChannel(message: buffer)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 448 |       }
 449 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:473:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 471 |     } else {
 472 |       self.callEventLoop.execute {
 473 |         self.trailers = trailers
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 474 |       }
 475 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:484:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 482 |     } else {
 483 |       self.callEventLoop.execute {
 484 |         self._receiveFromChannel(status: status)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 485 |       }
 486 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:840:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 838 |       // hop.
 839 |       if error is GRPCStatus || error is GRPCStatusTransformable {
 840 |         self.handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 841 |       } else {
 842 |         // Fallback to something which will mark the RPC as 'unavailable'.
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:952:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 950 |     case let .metadata(headers):
 951 |       let head = self.makeRequestHead(with: headers)
 952 |       channel.write(self.wrapOutboundOut(.head(head)), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 953 |       // Messages are buffered by this class and in the async writer for async calls. Initially the
 954 |       // async writer is not allowed to emit messages; the call to 'onStart()' signals that messages
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:963:17: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 961 |         let bytes = try self.serializer.serialize(request, allocator: channel.allocator)
 962 |         let message = _MessageContext<ByteBuffer>(bytes, compressed: metadata.compress)
 963 |         channel.write(self.wrapOutboundOut(.message(message)), promise: promise)
     |                 `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 964 |       } catch {
 965 |         self.handleError(error)
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:969:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 967 |
 968 |     case .end:
 969 |       channel.write(self.wrapOutboundOut(.end), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 970 |     }
 971 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:260:23: warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
258 |         do {
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
    |                       `- warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
262 |             logger: transport.logger
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:38:22: note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:261:42: warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
185 |
186 | @usableFromInline
187 | internal struct HTTP2ClientTransportFactory<Request, Response> {
    |                 `- note: consider making generic struct 'HTTP2ClientTransportFactory' conform to the 'Sendable' protocol
188 |   /// The multiplexer providing an HTTP/2 stream for the call.
189 |   private var streamChannel: EventLoopFuture<Channel>
    :
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
    |                                          `- warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
262 |             logger: transport.logger
263 |           )
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:58: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                          `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:70: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                                      `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:363:13: warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
361 |           switch result {
362 |           case .success:
363 |             fakeResponse.activate()
    |             `- warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
364 |           case .failure:
365 |             ()
/host/spi-builder-workspace/Sources/GRPC/_FakeResponseStream.swift:43:14: note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 41 | /// Users may not interact with this class directly but may do so via one of its subclasses
 42 | /// `FakeUnaryResponse` and `FakeStreamingResponse`.
 43 | public class _FakeResponseStream<Request, Response> {
    |              `- note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 44 |   private enum StreamEvent {
 45 |     case responsePart(_GRPCClientResponsePart<Response>)
[1368/1407] Compiling GRPC ClientTransportFactory.swift
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:125:23: warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 27 | /// configures the pipeline appropriately for the protocol negotiated via ALPN. If TLS is not
 28 | /// configured then the HTTP version is determined by parsing the inbound byte stream.
 29 | final class GRPCServerPipelineConfigurator: ChannelInboundHandler, RemovableChannelHandler {
    |             `- note: class 'GRPCServerPipelineConfigurator' does not conform to the 'Sendable' protocol
 30 |   internal typealias InboundIn = ByteBuffer
 31 |   internal typealias InboundOut = ByteBuffer
    :
123 |       do {
124 |         // TODO: provide user configuration for header normalization.
125 |         let handler = self.makeHTTP2ToRawGRPCHandler(normalizeHeaders: true, logger: logger)
    |                       `- warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
126 |         try stream.pipeline.syncOperations.addHandler(handler)
127 |         return stream.eventLoop.makeSucceededVoidFuture()
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:153:24: warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
151 |     switch result {
152 |     case .success:
153 |       context.pipeline.removeHandler(context: context, promise: nil)
    |                        `- warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
154 |     case let .failure(error):
155 |       self.errorCaught(context: context, error: error)
/host/spi-builder-workspace/Sources/GRPC/GRPCTLSConfiguration.swift:36:10: warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 34 |     #if canImport(NIOSSL)
 35 |     /// Configuration for NIOSSSL.
 36 |     case nio(NIOConfiguration)
    |          `- warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 37 |     #endif
 38 |     #if canImport(Network)
    :
218 | #if canImport(NIOSSL)
219 | extension GRPCTLSConfiguration {
220 |   internal struct NIOConfiguration {
    |                   `- note: consider making struct 'NIOConfiguration' conform to the 'Sendable' protocol
221 |     var configuration: TLSConfiguration
222 |     var customVerificationCallback: NIOSSLCustomVerificationCallback?
/host/spi-builder-workspace/Sources/GRPC/GRPCTimeout.swift:24:21: warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
 20 | ///
 21 | /// Timeouts must be positive and at most 8-digits long.
 22 | public struct GRPCTimeout: CustomStringConvertible, Equatable {
    |               `- note: consider making struct 'GRPCTimeout' conform to the 'Sendable' protocol
 23 |   /// Creates an infinite timeout. This is a sentinel value which must __not__ be sent to a gRPC service.
 24 |   public static let infinite = GRPCTimeout(
    |                     |- warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'infinite' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |     nanoseconds: Int64.max,
 26 |     wireEncoding: "infinite"
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:477:9: warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
 59 | /// ```
 60 | @usableFromInline
 61 | internal final class ClientInterceptorPipeline<Request, Response> {
    |                      `- note: generic class 'ClientInterceptorPipeline' does not conform to the 'Sendable' protocol
 62 |   /// A logger.
 63 |   @usableFromInline
    :
475 |         // When the error hits the tail we'll call 'close()', this will cancel the transport if
476 |         // necessary.
477 |         self.errorCaught(GRPCError.RPCTimedOut(timeLimit))
    |         `- warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
478 |       }
479 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:485:9: warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
483 |     } else {
484 |       self.eventLoop.execute {
485 |         setup()
    |         `- warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
486 |       }
487 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:463:10: warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
461 |   @inlinable
462 |   internal func _setupDeadline() {
463 |     func setup() {
    |          `- warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
464 |       self.eventLoop.assertInEventLoop()
465 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:324:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 322 |     } else {
 323 |       self.callEventLoop.execute {
 324 |         self._transportActivated(channel: channel)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 325 |       }
 326 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:356:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 354 |     } else {
 355 |       self.callEventLoop.execute {
 356 |         self._transportDeactivated()
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 357 |       }
 358 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:385:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 383 |     } else {
 384 |       self.callEventLoop.execute {
 385 |         self.channel = nil
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 386 |       }
 387 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:398:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 396 |     } else {
 397 |       self.callEventLoop.execute {
 398 |         self._handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 399 |       }
 400 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:428:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 426 |     } else {
 427 |       self.callEventLoop.execute {
 428 |         self._receiveFromChannel(initialMetadata: headers)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 429 |       }
 430 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:447:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 445 |     } else {
 446 |       self.callEventLoop.execute {
 447 |         self._receiveFromChannel(message: buffer)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 448 |       }
 449 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:473:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 471 |     } else {
 472 |       self.callEventLoop.execute {
 473 |         self.trailers = trailers
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 474 |       }
 475 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:484:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 482 |     } else {
 483 |       self.callEventLoop.execute {
 484 |         self._receiveFromChannel(status: status)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 485 |       }
 486 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:840:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 838 |       // hop.
 839 |       if error is GRPCStatus || error is GRPCStatusTransformable {
 840 |         self.handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 841 |       } else {
 842 |         // Fallback to something which will mark the RPC as 'unavailable'.
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:952:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 950 |     case let .metadata(headers):
 951 |       let head = self.makeRequestHead(with: headers)
 952 |       channel.write(self.wrapOutboundOut(.head(head)), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 953 |       // Messages are buffered by this class and in the async writer for async calls. Initially the
 954 |       // async writer is not allowed to emit messages; the call to 'onStart()' signals that messages
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:963:17: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 961 |         let bytes = try self.serializer.serialize(request, allocator: channel.allocator)
 962 |         let message = _MessageContext<ByteBuffer>(bytes, compressed: metadata.compress)
 963 |         channel.write(self.wrapOutboundOut(.message(message)), promise: promise)
     |                 `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 964 |       } catch {
 965 |         self.handleError(error)
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:969:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 967 |
 968 |     case .end:
 969 |       channel.write(self.wrapOutboundOut(.end), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 970 |     }
 971 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:260:23: warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
258 |         do {
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
    |                       `- warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
262 |             logger: transport.logger
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:38:22: note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:261:42: warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
185 |
186 | @usableFromInline
187 | internal struct HTTP2ClientTransportFactory<Request, Response> {
    |                 `- note: consider making generic struct 'HTTP2ClientTransportFactory' conform to the 'Sendable' protocol
188 |   /// The multiplexer providing an HTTP/2 stream for the call.
189 |   private var streamChannel: EventLoopFuture<Channel>
    :
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
    |                                          `- warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
262 |             logger: transport.logger
263 |           )
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:58: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                          `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:70: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                                      `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:363:13: warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
361 |           switch result {
362 |           case .success:
363 |             fakeResponse.activate()
    |             `- warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
364 |           case .failure:
365 |             ()
/host/spi-builder-workspace/Sources/GRPC/_FakeResponseStream.swift:43:14: note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 41 | /// Users may not interact with this class directly but may do so via one of its subclasses
 42 | /// `FakeUnaryResponse` and `FakeStreamingResponse`.
 43 | public class _FakeResponseStream<Request, Response> {
    |              `- note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 44 |   private enum StreamEvent {
 45 |     case responsePart(_GRPCClientResponsePart<Response>)
[1369/1407] Compiling GRPC MessageParts.swift
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:125:23: warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 27 | /// configures the pipeline appropriately for the protocol negotiated via ALPN. If TLS is not
 28 | /// configured then the HTTP version is determined by parsing the inbound byte stream.
 29 | final class GRPCServerPipelineConfigurator: ChannelInboundHandler, RemovableChannelHandler {
    |             `- note: class 'GRPCServerPipelineConfigurator' does not conform to the 'Sendable' protocol
 30 |   internal typealias InboundIn = ByteBuffer
 31 |   internal typealias InboundOut = ByteBuffer
    :
123 |       do {
124 |         // TODO: provide user configuration for header normalization.
125 |         let handler = self.makeHTTP2ToRawGRPCHandler(normalizeHeaders: true, logger: logger)
    |                       `- warning: capture of 'self' with non-sendable type 'GRPCServerPipelineConfigurator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
126 |         try stream.pipeline.syncOperations.addHandler(handler)
127 |         return stream.eventLoop.makeSucceededVoidFuture()
/host/spi-builder-workspace/Sources/GRPC/GRPCServerPipelineConfigurator.swift:153:24: warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
151 |     switch result {
152 |     case .success:
153 |       context.pipeline.removeHandler(context: context, promise: nil)
    |                        `- warning: 'removeHandler(context:promise:)' is deprecated: Use .syncOperations.removeHandler(context:) instead, this method is not Sendable-safe.
154 |     case let .failure(error):
155 |       self.errorCaught(context: context, error: error)
/host/spi-builder-workspace/Sources/GRPC/GRPCTLSConfiguration.swift:36:10: warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 34 |     #if canImport(NIOSSL)
 35 |     /// Configuration for NIOSSSL.
 36 |     case nio(NIOConfiguration)
    |          `- warning: associated value 'nio' of 'Sendable'-conforming enum 'Backend' has non-sendable type 'GRPCTLSConfiguration.NIOConfiguration'; this is an error in the Swift 6 language mode
 37 |     #endif
 38 |     #if canImport(Network)
    :
218 | #if canImport(NIOSSL)
219 | extension GRPCTLSConfiguration {
220 |   internal struct NIOConfiguration {
    |                   `- note: consider making struct 'NIOConfiguration' conform to the 'Sendable' protocol
221 |     var configuration: TLSConfiguration
222 |     var customVerificationCallback: NIOSSLCustomVerificationCallback?
/host/spi-builder-workspace/Sources/GRPC/GRPCTimeout.swift:24:21: warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
 20 | ///
 21 | /// Timeouts must be positive and at most 8-digits long.
 22 | public struct GRPCTimeout: CustomStringConvertible, Equatable {
    |               `- note: consider making struct 'GRPCTimeout' conform to the 'Sendable' protocol
 23 |   /// Creates an infinite timeout. This is a sentinel value which must __not__ be sent to a gRPC service.
 24 |   public static let infinite = GRPCTimeout(
    |                     |- warning: static property 'infinite' is not concurrency-safe because non-'Sendable' type 'GRPCTimeout' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'infinite' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |     nanoseconds: Int64.max,
 26 |     wireEncoding: "infinite"
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:477:9: warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
 59 | /// ```
 60 | @usableFromInline
 61 | internal final class ClientInterceptorPipeline<Request, Response> {
    |                      `- note: generic class 'ClientInterceptorPipeline' does not conform to the 'Sendable' protocol
 62 |   /// A logger.
 63 |   @usableFromInline
    :
475 |         // When the error hits the tail we'll call 'close()', this will cancel the transport if
476 |         // necessary.
477 |         self.errorCaught(GRPCError.RPCTimedOut(timeLimit))
    |         `- warning: capture of 'self' with non-sendable type 'ClientInterceptorPipeline<Request, Response>' in a '@Sendable' closure
478 |       }
479 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:485:9: warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
483 |     } else {
484 |       self.eventLoop.execute {
485 |         setup()
    |         `- warning: capture of 'setup()' with non-sendable type '<Request, Response> () -> ()' in a '@Sendable' closure
486 |       }
487 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientInterceptorPipeline.swift:463:10: warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
461 |   @inlinable
462 |   internal func _setupDeadline() {
463 |     func setup() {
    |          `- warning: concurrently-executed local function 'setup()' must be marked as '@Sendable'
464 |       self.eventLoop.assertInEventLoop()
465 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:324:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 322 |     } else {
 323 |       self.callEventLoop.execute {
 324 |         self._transportActivated(channel: channel)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 325 |       }
 326 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:356:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 354 |     } else {
 355 |       self.callEventLoop.execute {
 356 |         self._transportDeactivated()
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 357 |       }
 358 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:385:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 383 |     } else {
 384 |       self.callEventLoop.execute {
 385 |         self.channel = nil
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 386 |       }
 387 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:398:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 396 |     } else {
 397 |       self.callEventLoop.execute {
 398 |         self._handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 399 |       }
 400 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:428:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 426 |     } else {
 427 |       self.callEventLoop.execute {
 428 |         self._receiveFromChannel(initialMetadata: headers)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 429 |       }
 430 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:447:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 445 |     } else {
 446 |       self.callEventLoop.execute {
 447 |         self._receiveFromChannel(message: buffer)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 448 |       }
 449 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:473:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 471 |     } else {
 472 |       self.callEventLoop.execute {
 473 |         self.trailers = trailers
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 474 |       }
 475 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:484:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 482 |     } else {
 483 |       self.callEventLoop.execute {
 484 |         self._receiveFromChannel(status: status)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 485 |       }
 486 |     }
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:840:9: warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
     :
 838 |       // hop.
 839 |       if error is GRPCStatus || error is GRPCStatusTransformable {
 840 |         self.handleError(error)
     |         `- warning: capture of 'self' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
 841 |       } else {
 842 |         // Fallback to something which will mark the RPC as 'unavailable'.
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:952:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 950 |     case let .metadata(headers):
 951 |       let head = self.makeRequestHead(with: headers)
 952 |       channel.write(self.wrapOutboundOut(.head(head)), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 953 |       // Messages are buffered by this class and in the async writer for async calls. Initially the
 954 |       // async writer is not allowed to emit messages; the call to 'onStart()' signals that messages
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:963:17: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 961 |         let bytes = try self.serializer.serialize(request, allocator: channel.allocator)
 962 |         let message = _MessageContext<ByteBuffer>(bytes, compressed: metadata.compress)
 963 |         channel.write(self.wrapOutboundOut(.message(message)), promise: promise)
     |                 `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 964 |       } catch {
 965 |         self.handleError(error)
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:969:15: warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 967 |
 968 |     case .end:
 969 |       channel.write(self.wrapOutboundOut(.end), promise: promise)
     |               `- warning: 'write(_:promise:)' is deprecated: NIOAny is not Sendable. Avoid wrapping the value in NIOAny to silence this warning.
 970 |     }
 971 |
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:260:23: warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
258 |         do {
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
    |                       `- warning: capture of 'transport' with non-sendable type 'ClientTransport<Request, Response>' in a '@Sendable' closure
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
262 |             logger: transport.logger
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransport.swift:38:22: note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  36 | /// This class is not thread safe. All methods **must** be executed on the transport's `callEventLoop`.
  37 | @usableFromInline
  38 | internal final class ClientTransport<Request, Response> {
     |                      `- note: generic class 'ClientTransport' does not conform to the 'Sendable' protocol
  39 |   /// The `EventLoop` the call is running on. State must be accessed from this event loop.
  40 |   @usableFromInline
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:261:42: warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
185 |
186 | @usableFromInline
187 | internal struct HTTP2ClientTransportFactory<Request, Response> {
    |                 `- note: consider making generic struct 'HTTP2ClientTransportFactory' conform to the 'Sendable' protocol
188 |   /// The multiplexer providing an HTTP/2 stream for the call.
189 |   private var streamChannel: EventLoopFuture<Channel>
    :
259 |           let clientHandler = GRPCClientChannelHandler(
260 |             callType: transport.callDetails.type,
261 |             maximumReceiveMessageLength: self.maximumReceiveMessageLength,
    |                                          `- warning: capture of 'self' with non-sendable type 'HTTP2ClientTransportFactory<Request, Response>' in a '@Sendable' closure
262 |             logger: transport.logger
263 |           )
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:58: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                          `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:360:70: warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
358 |     transport.configure { handler in
359 |       if let fakeResponse = self.fakeResponseStream {
360 |         return fakeResponse.channel.pipeline.addHandlers(self.codec, handler).always { result in
    |                                                                      `- warning: type 'any ChannelHandler' does not conform to the 'Sendable' protocol
361 |           switch result {
362 |           case .success:
/host/spi-builder-workspace/Sources/GRPC/Interceptor/ClientTransportFactory.swift:363:13: warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
361 |           switch result {
362 |           case .success:
363 |             fakeResponse.activate()
    |             `- warning: capture of 'fakeResponse' with non-sendable type '_FakeResponseStream<Request, Response>' in a '@Sendable' closure
364 |           case .failure:
365 |             ()
/host/spi-builder-workspace/Sources/GRPC/_FakeResponseStream.swift:43:14: note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 41 | /// Users may not interact with this class directly but may do so via one of its subclasses
 42 | /// `FakeUnaryResponse` and `FakeStreamingResponse`.
 43 | public class _FakeResponseStream<Request, Response> {
    |              `- note: generic class '_FakeResponseStream' does not conform to the 'Sendable' protocol
 44 |   private enum StreamEvent {
 45 |     case responsePart(_GRPCClientResponsePart<Response>)
[1370/1408] Wrapping AST for GRPC for debugging
[1372/1441] Compiling GRPCInteroperabilityTestModels test.pb.swift
[1373/1441] Compiling GRPCInteroperabilityTestModels empty.pb.swift
[1374/1441] Compiling GRPCReflectionService reflection-v1.grpc.swift
[1375/1441] Compiling GRPCReflectionService reflection-v1alpha.grpc.swift
[1376/1441] Compiling GRPCPerformanceTests echo.pb.swift
[1377/1442] Compiling EchoModel echo.pb.swift
[1378/1442] Compiling GRPCPerformanceTests MinimalEchoProvider.swift
/host/spi-builder-workspace/Sources/GRPCPerformanceTests/Benchmarks/MinimalEchoProvider.swift:59:30: warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
57 |     }
58 |
59 |     return context.eventLoop.makeSucceededFuture(onEvent(_:))
   |                              |- warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
   |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
60 |   }
61 |
/host/spi-builder-workspace/Sources/GRPCPerformanceTests/Benchmarks/MinimalEchoProvider.swift:74:30: warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
72 |     }
73 |
74 |     return context.eventLoop.makeSucceededFuture(onEvent(_:))
   |                              |- warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
   |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
75 |   }
76 | }
[1379/1442] Compiling GRPCPerformanceTests PercentEncoding.swift
/host/spi-builder-workspace/Sources/GRPCPerformanceTests/Benchmarks/MinimalEchoProvider.swift:59:30: warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
57 |     }
58 |
59 |     return context.eventLoop.makeSucceededFuture(onEvent(_:))
   |                              |- warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
   |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
60 |   }
61 |
/host/spi-builder-workspace/Sources/GRPCPerformanceTests/Benchmarks/MinimalEchoProvider.swift:74:30: warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
72 |     }
73 |
74 |     return context.eventLoop.makeSucceededFuture(onEvent(_:))
   |                              |- warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
   |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
75 |   }
76 | }
[1380/1442] Compiling HelloWorldModel helloworld.pb.swift
[1381/1442] Compiling GRPCPerformanceTests ServerProvidingBenchmark.swift
[1382/1442] Emitting module GRPCPerformanceTests
[1383/1442] Emitting module GRPCInteroperabilityTestModels
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestModels/Generated/messages.pb.swift:71:21: warning: static property 'allCases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 69 | extension Grpc_Testing_PayloadType: CaseIterable {
 70 |   // The compiler won't synthesize support with the UNRECOGNIZED case.
 71 |   public static var allCases: [Grpc_Testing_PayloadType] = [
    |                     |- warning: static property 'allCases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'allCases' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'allCases' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 72 |     .compressable,
 73 |   ]
[1384/1442] Compiling HelloWorldModel helloworld.grpc.swift
[1385/1442] Emitting module HelloWorldModel
[1386/1443] Compiling GRPCReflectionService ReflectionServiceV1Alpha.swift
[1387/1443] Compiling GRPCPerformanceTests EmbeddedClientThroughput.swift
[1388/1443] Compiling GRPCPerformanceTests EmbeddedServer.swift
[1389/1443] Compiling GRPCPerformanceTests Benchmark.swift
[1390/1443] Compiling GRPCPerformanceTests BenchmarkUtils.swift
[1391/1443] Compiling GRPCReflectionService ReflectionServiceV1.swift
[1392/1443] Compiling GRPCReflectionService ReflectionService.swift
[1393/1443] Emitting module GRPCReflectionService
[1395/1443] Compiling RouteGuideModel route_guide.pb.swift
[1395/1443] Wrapping AST for HelloWorldModel for debugging
[1397/1443] Emitting module RouteGuideModel
[1398/1443] Compiling RouteGuideModel route_guide.grpc.swift
[1399/1443] Compiling GRPCPerformanceTests UnaryThroughput.swift
[1400/1443] Compiling GRPCPerformanceTests echo.grpc.swift
[1401/1446] Compiling GRPCPerformanceTests main.swift
[1404/1450] Emitting module EchoModel
[1405/1450] Compiling EchoModel echo.grpc.swift
[1406/1451] Compiling HelloWorldServer GreeterProvider.swift
[1408/1451] Emitting module HelloWorldServer
[1408/1451] Wrapping AST for RouteGuideModel for debugging
[1410/1454] Compiling HelloWorldServer HelloWorldServer.swift
/host/spi-builder-workspace/Examples/v1/HelloWorld/Server/HelloWorldServer.swift:31:18: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
29 |     let group = MultiThreadedEventLoopGroup(numberOfThreads: 1)
30 |     defer {
31 |       try! group.syncShutdownGracefully()
   |                  `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
32 |     }
33 |
[1411/1454] Compiling GRPCReflectionService reflection-v1.pb.swift
[1412/1457] Compiling GRPCReflectionService reflection-v1alpha.pb.swift
[1412/1458] Wrapping AST for GRPCPerformanceTests for debugging
[1415/1462] Write Objects.LinkFileList
[1417/1462] Compiling HelloWorldClient HelloWorldClient.swift
/host/spi-builder-workspace/Examples/v1/HelloWorld/Client/HelloWorldClient.swift:39:18: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
37 |     // Make sure the group is shutdown when we're done with it.
38 |     defer {
39 |       try! group.syncShutdownGracefully()
   |                  `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
40 |     }
41 |
/host/spi-builder-workspace/Examples/v1/HelloWorld/Client/HelloWorldClient.swift:51:28: warning: instance method 'wait' is unavailable from asynchronous contexts; wait() can block indefinitely, prefer get(); this is an error in the Swift 6 language mode
49 |     // Close the connection when we're done with it.
50 |     defer {
51 |       try! channel.close().wait()
   |                            `- warning: instance method 'wait' is unavailable from asynchronous contexts; wait() can block indefinitely, prefer get(); this is an error in the Swift 6 language mode
52 |     }
53 |
[1418/1462] Emitting module HelloWorldClient
[1419/1462] Emitting module RouteGuideClient
[1420/1467] Compiling RouteGuideServer RouteGuideServer.swift
/host/spi-builder-workspace/Examples/v1/RouteGuide/Server/RouteGuideServer.swift:46:18: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
44 |     let group = MultiThreadedEventLoopGroup(numberOfThreads: System.coreCount)
45 |     defer {
46 |       try! group.syncShutdownGracefully()
   |                  `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
47 |     }
48 |
[1420/1467] Wrapping AST for GRPCReflectionService for debugging
[1421/1467] Wrapping AST for EchoModel for debugging
[1423/1468] Emitting module PacketCapture
[1424/1468] Compiling GRPCInteroperabilityTestModels test.grpc.swift
[1425/1468] Compiling GRPCInteroperabilityTestModels messages.pb.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestModels/Generated/messages.pb.swift:71:21: warning: static property 'allCases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 69 | extension Grpc_Testing_PayloadType: CaseIterable {
 70 |   // The compiler won't synthesize support with the UNRECOGNIZED case.
 71 |   public static var allCases: [Grpc_Testing_PayloadType] = [
    |                     |- warning: static property 'allCases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'allCases' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'allCases' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 72 |     .compressable,
 73 |   ]
[1425/1468] Wrapping AST for HelloWorldServer for debugging
[1426/1469] Write Objects.LinkFileList
[1429/1469] Emitting module RouteGuideServer
[1430/1469] Compiling EchoImplementation Interceptors.swift
[1431/1469] Compiling RouteGuideServer RouteGuideProvider.swift
[1432/1470] Compiling EchoImplementation HPACKHeaders+Prettify.swift
[1433/1470] Compiling EchoImplementation EchoProvider.swift
/host/spi-builder-workspace/Examples/v1/Echo/Implementation/EchoProvider.swift:56:30: warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
54 |   ) -> EventLoopFuture<(StreamEvent<Echo_EchoRequest>) -> Void> {
55 |     var parts: [String] = []
56 |     return context.eventLoop.makeSucceededFuture({ event in
   |                              |- warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
   |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
57 |       switch event {
58 |       case let .message(message):
/host/spi-builder-workspace/Examples/v1/Echo/Implementation/EchoProvider.swift:74:30: warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
72 |   ) -> EventLoopFuture<(StreamEvent<Echo_EchoRequest>) -> Void> {
73 |     var count = 0
74 |     return context.eventLoop.makeSucceededFuture({ event in
   |                              |- warning: type '(StreamEvent<Echo_EchoRequest>) -> Void' does not conform to the 'Sendable' protocol
   |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
75 |       switch event {
76 |       case let .message(message):
[1434/1470] Emitting module EchoImplementation
[1436/1470] Compiling EchoImplementation EchoAsyncProvider.swift
[1438/1470] Compiling PacketCapture Empty.swift
[1439/1470] Compiling PacketCapture PacketCapture.swift
/host/spi-builder-workspace/Examples/v1/PacketCapture/PacketCapture.swift:33:18: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
31 |     let group = MultiThreadedEventLoopGroup(numberOfThreads: 1)
32 |     defer {
33 |       try! group.syncShutdownGracefully()
   |                  `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
34 |     }
35 |
/host/spi-builder-workspace/Examples/v1/PacketCapture/PacketCapture.swift:46:21: warning: instance method 'syncClose' is unavailable from asynchronous contexts; syncClose() can block indefinitely, prefer close(); this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
44 |     // Ensure that we close the file sink when we're done with it.
45 |     defer {
46 |       try! fileSink.syncClose()
   |                     `- warning: instance method 'syncClose' is unavailable from asynchronous contexts; syncClose() can block indefinitely, prefer close(); this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
47 |     }
48 |
[1439/1470] Wrapping AST for HelloWorldClient for debugging
[1441/1484] Wrapping AST for RouteGuideServer for debugging
[1442/1484] Write Objects.LinkFileList
[1445/1484] Compiling GRPCInteroperabilityTestsImplementation InteroperabilityTestClientConnection.swift
[1446/1485] Compiling RouteGuideClient Empty.swift
[1447/1485] Compiling RouteGuideClient RouteGuideClient.swift
/host/spi-builder-workspace/Examples/v1/RouteGuide/Client/RouteGuideClient.swift:220:18: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
218 |     let group = PlatformSupport.makeEventLoopGroup(loopCount: 1)
219 |     defer {
220 |       try? group.syncShutdownGracefully()
    |                  `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
221 |     }
222 |
/host/spi-builder-workspace/Examples/v1/RouteGuide/Client/RouteGuideClient.swift:229:28: warning: instance method 'wait' is unavailable from asynchronous contexts; wait() can block indefinitely, prefer get(); this is an error in the Swift 6 language mode
227 |     )
228 |     defer {
229 |       try? channel.close().wait()
    |                            `- warning: instance method 'wait' is unavailable from asynchronous contexts; wait() can block indefinitely, prefer get(); this is an error in the Swift 6 language mode
230 |     }
231 |
[1448/1486] Emitting module GRPCConnectionBackoffInteropTest
[1449/1493] Compiling ReflectionServer resource_bundle_accessor.swift
[1450/1493] Compiling Echo Empty.swift
[1452/1493] Compiling GRPCConnectionBackoffInteropTest main.swift
[1453/1493] Compiling GRPCInteroperabilityTestsImplementation ServerFeatures.swift
[1454/1493] Compiling GRPCInteroperabilityTestsImplementation InteroperabilityTestServer.swift
[1455/1493] Compiling GRPCInteroperabilityTestsImplementation InteroperabilityTestCredentials.swift
[1456/1493] Compiling GRPCInteroperabilityTestsImplementation TestServiceAsyncProvider.swift
[1457/1493] Compiling GRPCInteroperabilityTestsImplementation TestServiceProvider.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/TestServiceProvider.swift:154:16: warning: capture of 'context' with non-sendable type 'StreamingResponseCallContext<Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
152 |         // explicitly requested; we'll do the same.
153 |         let compression: Compression = responseParameter.compressed.value ? .enabled : .disabled
154 |         return context.sendResponse(response, compression: compression)
    |                `- warning: capture of 'context' with non-sendable type 'StreamingResponseCallContext<Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
155 |       }
156 |     }
/host/spi-builder-workspace/Sources/GRPC/ServerCallContexts/StreamingResponseCallContext.swift:25:12: note: generic class 'StreamingResponseCallContext' does not conform to the 'Sendable' protocol
 23 | /// An abstract base class for a context provided to handlers for RPCs which may return multiple
 24 | /// responses, i.e. server streaming and bidirectional streaming RPCs.
 25 | open class StreamingResponseCallContext<ResponsePayload>: ServerCallContextBase {
    |            `- note: generic class 'StreamingResponseCallContext' does not conform to the 'Sendable' protocol
 26 |   /// A promise for the ``GRPCStatus``, the end of the response stream. This must be completed by
 27 |   /// bidirectional streaming RPC handlers to end the RPC.
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/TestServiceProvider.swift:17:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'GRPC'
 15 |  */
 16 |
 17 | import GRPC
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'GRPC'
 18 | import GRPCInteroperabilityTestModels
 19 | import NIOCore
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/TestServiceProvider.swift:169:30: warning: type '(StreamEvent<Grpc_Testing_StreamingInputCallRequest>) -> Void' does not conform to the 'Sendable' protocol
167 |     var aggregatePayloadSize = 0
168 |
169 |     return context.eventLoop.makeSucceededFuture({ event in
    |                              |- warning: type '(StreamEvent<Grpc_Testing_StreamingInputCallRequest>) -> Void' does not conform to the 'Sendable' protocol
    |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
170 |       switch event {
171 |       case let .message(request):
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/TestServiceProvider.swift:233:30: warning: type '(StreamEvent<Grpc_Testing_StreamingOutputCallRequest>) -> Void' does not conform to the 'Sendable' protocol
231 |     }
232 |
233 |     return context.eventLoop.makeSucceededFuture(streamHandler(_:))
    |                              |- warning: type '(StreamEvent<Grpc_Testing_StreamingOutputCallRequest>) -> Void' does not conform to the 'Sendable' protocol
    |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
234 |   }
235 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/TestServiceProvider.swift:223:15: warning: capture of 'context' with non-sendable type 'StreamingResponseCallContext<Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
221 |
222 |             sendQueue = sendQueue.flatMap {
223 |               context.sendResponse(response)
    |               `- warning: capture of 'context' with non-sendable type 'StreamingResponseCallContext<Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
224 |             }
225 |           }
/host/spi-builder-workspace/Sources/GRPC/ServerCallContexts/StreamingResponseCallContext.swift:25:12: note: generic class 'StreamingResponseCallContext' does not conform to the 'Sendable' protocol
 23 | /// An abstract base class for a context provided to handlers for RPCs which may return multiple
 24 | /// responses, i.e. server streaming and bidirectional streaming RPCs.
 25 | open class StreamingResponseCallContext<ResponsePayload>: ServerCallContextBase {
    |            `- note: generic class 'StreamingResponseCallContext' does not conform to the 'Sendable' protocol
 26 |   /// A promise for the ``GRPCStatus``, the end of the response stream. This must be completed by
 27 |   /// bidirectional streaming RPC handlers to end the RPC.
[1457/1493] Wrapping AST for PacketCapture for debugging
[1459/1493] Emitting module Echo
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:40:14: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 38 | @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
 39 | struct Echo: AsyncParsableCommand {
 40 |   static var configuration = CommandConfiguration(
    |              |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |     abstract: "An example to run and call a simple gRPC service for echoing messages.",
 42 |     subcommands: [Server.self, Client.self]
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:46:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 44 |
 45 |   struct Server: AsyncParsableCommand {
 46 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |       abstract: "Start a gRPC server providing the Echo service."
 48 |     )
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:70:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 68 |
 69 |   struct Client: AsyncParsableCommand {
 70 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 71 |       abstract: "Calls an RPC on the Echo server."
 72 |     )
[1460/1494] Compiling ReflectionServer GreeterProvider.swift
[1461/1494] Compiling ReflectionServer ReflectionServer.swift
[1462/1494] Emitting module ReflectionServer
[1463/1495] Wrapping AST for RouteGuideClient for debugging
[1464/1495] Write Objects.LinkFileList
[1468/1495] Wrapping AST for ReflectionServer for debugging
[1470/1495] Compiling GRPCInteroperabilityTestsImplementation Assertions.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:49:30: warning: type 'T' does not conform to the 'Sendable' protocol
41 | /// - Important: This should not be run on an event loop since this function calls `wait()` on the
42 | ///   given future.
43 | public func waitAndAssertEqual<T: Equatable>(
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
44 |   _ future: EventLoopFuture<T>,
45 |   _ value: T,
   :
47 |   line: UInt = #line
48 | ) throws {
49 |   try assertEqual(try future.wait(), value, file: file, line: line)
   |                              `- warning: type 'T' does not conform to the 'Sendable' protocol
50 | }
51 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:62:31: warning: type 'T' does not conform to the 'Sendable' protocol
54 | /// - Important: This should not be run on an event loop since this function calls `wait()` on the
55 | ///   given future.
56 | public func waitAndAssertEqual<T: Equatable>(
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
57 |   _ future1: EventLoopFuture<T>,
58 |   _ future2: EventLoopFuture<T>,
   :
60 |   line: UInt = #line
61 | ) throws {
62 |   try assertEqual(try future1.wait(), try future2.wait(), file: file, line: line)
   |                               `- warning: type 'T' does not conform to the 'Sendable' protocol
63 | }
64 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:62:51: warning: type 'T' does not conform to the 'Sendable' protocol
54 | /// - Important: This should not be run on an event loop since this function calls `wait()` on the
55 | ///   given future.
56 | public func waitAndAssertEqual<T: Equatable>(
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
57 |   _ future1: EventLoopFuture<T>,
58 |   _ future2: EventLoopFuture<T>,
   :
60 |   line: UInt = #line
61 | ) throws {
62 |   try assertEqual(try future1.wait(), try future2.wait(), file: file, line: line)
   |                                                   `- warning: type 'T' does not conform to the 'Sendable' protocol
63 | }
64 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:72:26: warning: type 'T' does not conform to the 'Sendable' protocol
63 | }
64 |
65 | public func waitAndAssert<T>(
   |                           `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
66 |   _ future: EventLoopFuture<T>,
67 |   file: StaticString = #fileID,
   :
70 |   verify: (T) -> Bool
71 | ) throws {
72 |   let value = try future.wait()
   |                          `- warning: type 'T' does not conform to the 'Sendable' protocol
73 |   guard verify(value) else {
74 |     throw AssertionError(message: message, file: file, line: line)
[1471/1495] Compiling GRPCInteroperabilityTestsImplementation GRPCTestingConvenienceMethods.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:49:30: warning: type 'T' does not conform to the 'Sendable' protocol
41 | /// - Important: This should not be run on an event loop since this function calls `wait()` on the
42 | ///   given future.
43 | public func waitAndAssertEqual<T: Equatable>(
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
44 |   _ future: EventLoopFuture<T>,
45 |   _ value: T,
   :
47 |   line: UInt = #line
48 | ) throws {
49 |   try assertEqual(try future.wait(), value, file: file, line: line)
   |                              `- warning: type 'T' does not conform to the 'Sendable' protocol
50 | }
51 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:62:31: warning: type 'T' does not conform to the 'Sendable' protocol
54 | /// - Important: This should not be run on an event loop since this function calls `wait()` on the
55 | ///   given future.
56 | public func waitAndAssertEqual<T: Equatable>(
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
57 |   _ future1: EventLoopFuture<T>,
58 |   _ future2: EventLoopFuture<T>,
   :
60 |   line: UInt = #line
61 | ) throws {
62 |   try assertEqual(try future1.wait(), try future2.wait(), file: file, line: line)
   |                               `- warning: type 'T' does not conform to the 'Sendable' protocol
63 | }
64 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:62:51: warning: type 'T' does not conform to the 'Sendable' protocol
54 | /// - Important: This should not be run on an event loop since this function calls `wait()` on the
55 | ///   given future.
56 | public func waitAndAssertEqual<T: Equatable>(
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
57 |   _ future1: EventLoopFuture<T>,
58 |   _ future2: EventLoopFuture<T>,
   :
60 |   line: UInt = #line
61 | ) throws {
62 |   try assertEqual(try future1.wait(), try future2.wait(), file: file, line: line)
   |                                                   `- warning: type 'T' does not conform to the 'Sendable' protocol
63 | }
64 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/Assertions.swift:72:26: warning: type 'T' does not conform to the 'Sendable' protocol
63 | }
64 |
65 | public func waitAndAssert<T>(
   |                           `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
66 |   _ future: EventLoopFuture<T>,
67 |   file: StaticString = #fileID,
   :
70 |   verify: (T) -> Bool
71 | ) throws {
72 |   let value = try future.wait()
   |                          `- warning: type 'T' does not conform to the 'Sendable' protocol
73 |   guard verify(value) else {
74 |     throw AssertionError(message: message, file: file, line: line)
[1472/1495] Emitting module GRPCInteroperabilityTestsImplementation
[1473/1495] Compiling GRPCInteroperabilityTestsImplementation InteroperabilityTestCase.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:775:53: warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 764 | /// - metadata with key "x-grpc-test-echo-trailing-bin" and value 0xababab is received in the
 765 | ///   trailing metadata for calls in Procedure steps 1 and 2.
 766 | class CustomMetadata: InteroperabilityTest {
     |       `- note: class 'CustomMetadata' does not conform to the 'Sendable' protocol
 767 |   let initialMetadataName = "x-grpc-test-echo-initial"
 768 |   let initialMetadataValue = "test_initial_metadata_value"
     :
 773 |   func checkMetadata<SpecificClientCall>(call: SpecificClientCall) throws
 774 |   where SpecificClientCall: ClientCall {
 775 |     let initialName = call.initialMetadata.map { $0[self.initialMetadataName] }
     |                                                     `- warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 776 |     try waitAndAssertEqual(initialName, [self.initialMetadataValue])
 777 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:778:55: warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 764 | /// - metadata with key "x-grpc-test-echo-trailing-bin" and value 0xababab is received in the
 765 | ///   trailing metadata for calls in Procedure steps 1 and 2.
 766 | class CustomMetadata: InteroperabilityTest {
     |       `- note: class 'CustomMetadata' does not conform to the 'Sendable' protocol
 767 |   let initialMetadataName = "x-grpc-test-echo-initial"
 768 |   let initialMetadataValue = "test_initial_metadata_value"
     :
 776 |     try waitAndAssertEqual(initialName, [self.initialMetadataValue])
 777 |
 778 |     let trailingName = call.trailingMetadata.map { $0[self.trailingMetadataName] }
     |                                                       `- warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 779 |     try waitAndAssertEqual(trailingName, [self.trailingMetadataValue])
 780 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:1014:7: warning: capture of 'call' with non-sendable type 'BidirectionalStreamingCall<Grpc_Testing_StreamingOutputCallRequest, Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
1012 |
1013 |     promise.futureResult.whenSuccess {
1014 |       call.cancel(promise: nil)
     |       `- warning: capture of 'call' with non-sendable type 'BidirectionalStreamingCall<Grpc_Testing_StreamingOutputCallRequest, Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
1015 |     }
1016 |
/host/spi-builder-workspace/Sources/GRPC/ClientCalls/BidirectionalStreamingCall.swift:28:15: note: generic struct 'BidirectionalStreamingCall' does not conform to the 'Sendable' protocol
 26 | /// Note: while this object is a `struct`, its implementation delegates to ``Call``. It therefore
 27 | /// has reference semantics.
 28 | public struct BidirectionalStreamingCall<
    |               `- note: generic struct 'BidirectionalStreamingCall' does not conform to the 'Sendable' protocol
 29 |   RequestPayload,
 30 |   ResponsePayload
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:17:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'GRPC'
  15 |  */
  16 | import Dispatch
  17 | import GRPC
     | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'GRPC'
  18 | import GRPCInteroperabilityTestModels
  19 | import NIOHPACK
[1474/1495] Compiling GRPCInteroperabilityTestsImplementation InteroperabilityTestCases.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:775:53: warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 764 | /// - metadata with key "x-grpc-test-echo-trailing-bin" and value 0xababab is received in the
 765 | ///   trailing metadata for calls in Procedure steps 1 and 2.
 766 | class CustomMetadata: InteroperabilityTest {
     |       `- note: class 'CustomMetadata' does not conform to the 'Sendable' protocol
 767 |   let initialMetadataName = "x-grpc-test-echo-initial"
 768 |   let initialMetadataValue = "test_initial_metadata_value"
     :
 773 |   func checkMetadata<SpecificClientCall>(call: SpecificClientCall) throws
 774 |   where SpecificClientCall: ClientCall {
 775 |     let initialName = call.initialMetadata.map { $0[self.initialMetadataName] }
     |                                                     `- warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 776 |     try waitAndAssertEqual(initialName, [self.initialMetadataValue])
 777 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:778:55: warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 764 | /// - metadata with key "x-grpc-test-echo-trailing-bin" and value 0xababab is received in the
 765 | ///   trailing metadata for calls in Procedure steps 1 and 2.
 766 | class CustomMetadata: InteroperabilityTest {
     |       `- note: class 'CustomMetadata' does not conform to the 'Sendable' protocol
 767 |   let initialMetadataName = "x-grpc-test-echo-initial"
 768 |   let initialMetadataValue = "test_initial_metadata_value"
     :
 776 |     try waitAndAssertEqual(initialName, [self.initialMetadataValue])
 777 |
 778 |     let trailingName = call.trailingMetadata.map { $0[self.trailingMetadataName] }
     |                                                       `- warning: capture of 'self' with non-sendable type 'CustomMetadata' in a '@Sendable' closure
 779 |     try waitAndAssertEqual(trailingName, [self.trailingMetadataValue])
 780 |
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:1014:7: warning: capture of 'call' with non-sendable type 'BidirectionalStreamingCall<Grpc_Testing_StreamingOutputCallRequest, Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
1012 |
1013 |     promise.futureResult.whenSuccess {
1014 |       call.cancel(promise: nil)
     |       `- warning: capture of 'call' with non-sendable type 'BidirectionalStreamingCall<Grpc_Testing_StreamingOutputCallRequest, Grpc_Testing_StreamingOutputCallResponse>' in a '@Sendable' closure
1015 |     }
1016 |
/host/spi-builder-workspace/Sources/GRPC/ClientCalls/BidirectionalStreamingCall.swift:28:15: note: generic struct 'BidirectionalStreamingCall' does not conform to the 'Sendable' protocol
 26 | /// Note: while this object is a `struct`, its implementation delegates to ``Call``. It therefore
 27 | /// has reference semantics.
 28 | public struct BidirectionalStreamingCall<
    |               `- note: generic struct 'BidirectionalStreamingCall' does not conform to the 'Sendable' protocol
 29 |   RequestPayload,
 30 |   ResponsePayload
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTestsImplementation/InteroperabilityTestCases.swift:17:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'GRPC'
  15 |  */
  16 | import Dispatch
  17 | import GRPC
     | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'GRPC'
  18 | import GRPCInteroperabilityTestModels
  19 | import NIOHPACK
[1474/1496] Linking GRPCPerformanceTests
[1477/1496] Compiling Echo Echo.swift
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:40:14: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 38 | @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
 39 | struct Echo: AsyncParsableCommand {
 40 |   static var configuration = CommandConfiguration(
    |              |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |     abstract: "An example to run and call a simple gRPC service for echoing messages.",
 42 |     subcommands: [Server.self, Client.self]
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:46:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 44 |
 45 |   struct Server: AsyncParsableCommand {
 46 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |       abstract: "Start a gRPC server providing the Echo service."
 48 |     )
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:70:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 68 |
 69 |   struct Client: AsyncParsableCommand {
 70 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 71 |       abstract: "Calls an RPC on the Echo server."
 72 |     )
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:59:20: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
 57 |       let group = MultiThreadedEventLoopGroup(numberOfThreads: 1)
 58 |       defer {
 59 |         try! group.syncShutdownGracefully()
    |                    `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
 60 |       }
 61 |       do {
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:95:20: warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
 93 |       let group = MultiThreadedEventLoopGroup(numberOfThreads: 1)
 94 |       defer {
 95 |         try! group.syncShutdownGracefully()
    |                    `- warning: instance method 'syncShutdownGracefully' is unavailable from asynchronous contexts; this can end up blocking the calling thread; this is an error in the Swift 6 language mode; this is an error in the Swift 6 language mode
 96 |       }
 97 |
/host/spi-builder-workspace/Examples/v1/Echo/Runtime/Echo.swift:105:37: warning: instance method 'wait' is unavailable from asynchronous contexts; wait() can block indefinitely, prefer get(); this is an error in the Swift 6 language mode
103 |       )
104 |       defer {
105 |         try! client.channel.close().wait()
    |                                     `- warning: instance method 'wait' is unavailable from asynchronous contexts; wait() can block indefinitely, prefer get(); this is an error in the Swift 6 language mode
106 |       }
107 |
[1477/1497] Wrapping AST for GRPCInteroperabilityTestModels for debugging
[1479/1497] Wrapping AST for EchoImplementation for debugging
[1480/1497] Linking HelloWorldServer
[1481/1497] Write Objects.LinkFileList
[1482/1497] Wrapping AST for GRPCConnectionBackoffInteropTest for debugging
[1483/1497] Write Objects.LinkFileList
[1484/1497] Wrapping AST for GRPCInteroperabilityTestsImplementation for debugging
[1485/1499] Linking RouteGuideServer
[1486/1499] Wrapping AST for Echo for debugging
[1487/1499] Write Objects.LinkFileList
[1489/1499] Compiling GRPCInteroperabilityTests main.swift
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:95:14: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 93 |
 94 | struct InteroperabilityTests: ParsableCommand {
 95 |   static var configuration = CommandConfiguration(
    |              |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 96 |     abstract: "gRPC Swift Interoperability Runner",
 97 |     subcommands: [StartServer.self, RunTest.self, ListTests.self]
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:101:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 99 |
100 |   struct StartServer: ParsableCommand {
101 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
102 |       abstract: "Start the gRPC Swift interoperability test server."
103 |     )
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:130:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
128 |
129 |   struct RunTest: ParsableCommand {
130 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |       abstract: "Runs a gRPC interoperability test using a gRPC Swift client."
132 |     )
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:159:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
157 |
158 |   struct ListTests: ParsableCommand {
159 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
160 |       abstract: "List all interoperability test names."
161 |     )
[1490/1499] Emitting module GRPCInteroperabilityTests
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:95:14: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 93 |
 94 | struct InteroperabilityTests: ParsableCommand {
 95 |   static var configuration = CommandConfiguration(
    |              |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 96 |     abstract: "gRPC Swift Interoperability Runner",
 97 |     subcommands: [StartServer.self, RunTest.self, ListTests.self]
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:101:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 99 |
100 |   struct StartServer: ParsableCommand {
101 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
102 |       abstract: "Start the gRPC Swift interoperability test server."
103 |     )
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:130:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
128 |
129 |   struct RunTest: ParsableCommand {
130 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |       abstract: "Runs a gRPC interoperability test using a gRPC Swift client."
132 |     )
/host/spi-builder-workspace/Sources/GRPCInteroperabilityTests/main.swift:159:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
157 |
158 |   struct ListTests: ParsableCommand {
159 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
160 |       abstract: "List all interoperability test names."
161 |     )
[1490/1499] Linking RouteGuideClient
[1492/1500] Linking PacketCapture
[1493/1500] Linking HelloWorldClient
[1494/1500] Wrapping AST for GRPCInteroperabilityTests for debugging
[1495/1500] Write Objects.LinkFileList
[1496/1500] Linking ReflectionServer
[1497/1500] Linking Echo
[1498/1500] Linking GRPCConnectionBackoffInteropTest
[1499/1500] Linking GRPCInteroperabilityTests
Build complete! (381.39s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-nio",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.65.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio.git"
    },
    {
      "identity" : "swift-nio-http2",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.36.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio-http2.git"
    },
    {
      "identity" : "swift-nio-transport-services",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.24.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio-transport-services.git"
    },
    {
      "identity" : "swift-nio-extras",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.24.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio-extras.git"
    },
    {
      "identity" : "swift-collections",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.5",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-collections.git"
    },
    {
      "identity" : "swift-atomics",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-atomics.git"
    },
    {
      "identity" : "swift-protobuf",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.28.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-protobuf.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.4.4",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser.git"
    },
    {
      "identity" : "swift-nio-ssl",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.23.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio-ssl.git"
    }
  ],
  "manifest_display_name" : "grpc-swift",
  "name" : "grpc-swift",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "GRPC",
      "targets" : [
        "GRPC"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "CGRPCZlib",
      "targets" : [
        "CGRPCZlib"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "GRPCReflectionService",
      "targets" : [
        "GRPCReflectionService"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "protoc-gen-grpc-swift",
      "targets" : [
        "protoc-gen-grpc-swift"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "GRPCSwiftPlugin",
      "targets" : [
        "GRPCSwiftPlugin"
      ],
      "type" : {
        "plugin" : null
      }
    },
    {
      "name" : "RouteGuideServer",
      "targets" : [
        "RouteGuideServer"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "RouteGuideClient",
      "targets" : [
        "RouteGuideClient"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "ReflectionServer",
      "targets" : [
        "ReflectionServer"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "PacketCapture",
      "targets" : [
        "PacketCapture"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "HelloWorldServer",
      "targets" : [
        "HelloWorldServer"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "HelloWorldClient",
      "targets" : [
        "HelloWorldClient"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "GRPCPerformanceTests",
      "targets" : [
        "GRPCPerformanceTests"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "GRPCInteroperabilityTests",
      "targets" : [
        "GRPCInteroperabilityTests"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "GRPCConnectionBackoffInteropTest",
      "targets" : [
        "GRPCConnectionBackoffInteropTest"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "Echo",
      "targets" : [
        "Echo"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "protoc_gen_grpc_swift",
      "module_type" : "SwiftTarget",
      "name" : "protoc-gen-grpc-swift",
      "path" : "Sources/protoc-gen-grpc-swift",
      "product_dependencies" : [
        "SwiftProtobuf",
        "SwiftProtobufPluginLibrary"
      ],
      "product_memberships" : [
        "protoc-gen-grpc-swift",
        "GRPCSwiftPlugin"
      ],
      "sources" : [
        "GenerateGRPC.swift",
        "Generator-Client+AsyncAwait.swift",
        "Generator-Client.swift",
        "Generator-Metadata.swift",
        "Generator-Names.swift",
        "Generator-Server+AsyncAwait.swift",
        "Generator-Server.swift",
        "Generator.swift",
        "Options.swift",
        "StreamingType.swift",
        "Types.swift",
        "Version.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "RouteGuideServer",
      "module_type" : "SwiftTarget",
      "name" : "RouteGuideServer",
      "path" : "Examples/v1/RouteGuide/Server",
      "product_dependencies" : [
        "NIOCore",
        "NIOConcurrencyHelpers",
        "NIOPosix",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "RouteGuideServer"
      ],
      "sources" : [
        "RouteGuideProvider.swift",
        "RouteGuideServer.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "RouteGuideModel"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "RouteGuideModel",
      "module_type" : "SwiftTarget",
      "name" : "RouteGuideModel",
      "path" : "Examples/v1/RouteGuide/Model",
      "product_dependencies" : [
        "NIO",
        "SwiftProtobuf"
      ],
      "product_memberships" : [
        "RouteGuideServer",
        "RouteGuideClient"
      ],
      "sources" : [
        "route_guide.grpc.swift",
        "route_guide.pb.swift"
      ],
      "target_dependencies" : [
        "GRPC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "RouteGuideClient",
      "module_type" : "SwiftTarget",
      "name" : "RouteGuideClient",
      "path" : "Examples/v1/RouteGuide/Client",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "RouteGuideClient"
      ],
      "sources" : [
        "Empty.swift",
        "RouteGuideClient.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "RouteGuideModel"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "ReflectionServer",
      "module_type" : "SwiftTarget",
      "name" : "ReflectionServer",
      "path" : "Examples/v1/ReflectionService",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "ReflectionServer"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Examples/v1/ReflectionService/Generated",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "GreeterProvider.swift",
        "ReflectionServer.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "GRPCReflectionService",
        "HelloWorldModel",
        "EchoModel",
        "EchoImplementation"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "PacketCapture",
      "module_type" : "SwiftTarget",
      "name" : "PacketCapture",
      "path" : "Examples/v1/PacketCapture",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "NIOExtras",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "PacketCapture"
      ],
      "sources" : [
        "Empty.swift",
        "PacketCapture.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "EchoModel"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "HelloWorldServer",
      "module_type" : "SwiftTarget",
      "name" : "HelloWorldServer",
      "path" : "Examples/v1/HelloWorld/Server",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "HelloWorldServer"
      ],
      "sources" : [
        "GreeterProvider.swift",
        "HelloWorldServer.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "HelloWorldModel"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "HelloWorldModel",
      "module_type" : "SwiftTarget",
      "name" : "HelloWorldModel",
      "path" : "Examples/v1/HelloWorld/Model",
      "product_dependencies" : [
        "NIO",
        "SwiftProtobuf"
      ],
      "product_memberships" : [
        "ReflectionServer",
        "HelloWorldServer",
        "HelloWorldClient"
      ],
      "sources" : [
        "helloworld.grpc.swift",
        "helloworld.pb.swift"
      ],
      "target_dependencies" : [
        "GRPC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "HelloWorldClient",
      "module_type" : "SwiftTarget",
      "name" : "HelloWorldClient",
      "path" : "Examples/v1/HelloWorld/Client",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "HelloWorldClient"
      ],
      "sources" : [
        "HelloWorldClient.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "HelloWorldModel"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "GRPCTests",
      "module_type" : "SwiftTarget",
      "name" : "GRPCTests",
      "path" : "Tests/GRPCTests",
      "product_dependencies" : [
        "NIOCore",
        "NIOConcurrencyHelpers",
        "NIOPosix",
        "NIOTLS",
        "NIOHTTP1",
        "NIOHTTP2",
        "NIOEmbedded",
        "NIOTransportServices",
        "Logging",
        "Atomics",
        "NIOSSL"
      ],
      "sources" : [
        "ALPNConfigurationTests.swift",
        "AnyServiceClientTests.swift",
        "Array+BoundsCheckingTests.swift",
        "AsyncAwaitSupport/AsyncClientTests.swift",
        "AsyncAwaitSupport/AsyncIntegrationTests.swift",
        "AsyncAwaitSupport/AsyncSequence+Helpers.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachineTests.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/ServerInterceptorStateMachineStreamStateTests.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/ServerInterceptorStateMachineTests.swift",
        "AsyncAwaitSupport/GRPCAsyncRequestStreamTests.swift",
        "AsyncAwaitSupport/GRPCAsyncResponseStreamWriterTests.swift",
        "AsyncAwaitSupport/InterceptorsAsyncTests.swift",
        "AsyncAwaitSupport/XCTest+AsyncAwait.swift",
        "BasicEchoTestCase.swift",
        "CallPathTests.swift",
        "CallStartBehaviorTests.swift",
        "CapturingLogHandler.swift",
        "ClientCallTests.swift",
        "ClientCancellingTests.swift",
        "ClientClosedChannelTests.swift",
        "ClientConnectionBackoffTests.swift",
        "ClientEventLoopPreferenceTests.swift",
        "ClientInterceptorPipelineTests.swift",
        "ClientQuiescingTests.swift",
        "ClientTLSFailureTests.swift",
        "ClientTLSTests.swift",
        "ClientTimeoutTests.swift",
        "ClientTransportTests.swift",
        "CoalescingLengthPrefixedMessageWriterTests.swift",
        "Codegen/Normalization/NormalizationProvider.swift",
        "Codegen/Normalization/NormalizationTests.swift",
        "Codegen/Normalization/normalization.grpc.swift",
        "Codegen/Normalization/normalization.pb.swift",
        "Codegen/Serialization/SerializationTests.swift",
        "CompressionTests.swift",
        "ConfigurationTests.swift",
        "ConnectionBackoffTests.swift",
        "ConnectionFailingTests.swift",
        "ConnectionManagerTests.swift",
        "ConnectionPool/ConnectionPoolDelegates.swift",
        "ConnectionPool/ConnectionPoolTests.swift",
        "ConnectionPool/GRPCChannelPoolTests.swift",
        "ConnectionPool/PoolManagerStateMachineTests.swift",
        "ConnectivityStateMonitorTests.swift",
        "DebugChannelInitializerTests.swift",
        "DelegatingErrorHandlerTests.swift",
        "EchoHelpers/EchoMessageHelpers.swift",
        "EchoHelpers/Interceptors/DelegatingClientInterceptor.swift",
        "EchoHelpers/Interceptors/EchoInterceptorFactories.swift",
        "EchoHelpers/Providers/DelegatingOnCloseEchoProvider.swift",
        "EchoHelpers/Providers/FailingEchoProvider.swift",
        "EchoHelpers/Providers/MetadataEchoProvider.swift",
        "EchoHelpers/Providers/NeverResolvingEchoProvider.swift",
        "EchoMetadataTests.swift",
        "EchoTestClientTests.swift",
        "ErrorRecordingDelegate.swift",
        "EventLoopFuture+Assertions.swift",
        "FakeChannelTests.swift",
        "FakeResponseStreamTests.swift",
        "FunctionalTests.swift",
        "GRPCAsyncClientCallTests.swift",
        "GRPCAsyncServerHandlerTests.swift",
        "GRPCClientChannelHandlerTests.swift",
        "GRPCClientStateMachineTests.swift",
        "GRPCCustomPayloadTests.swift",
        "GRPCIdleHandlerStateMachineTests.swift",
        "GRPCIdleTests.swift",
        "GRPCInteroperabilityTests.swift",
        "GRPCKeepaliveTests.swift",
        "GRPCMessageLengthLimitTests.swift",
        "GRPCNetworkFrameworkTests.swift",
        "GRPCPingHandlerTests.swift",
        "GRPCReflectionServiceTests/Generated/v1/reflection-v1.grpc.swift",
        "GRPCReflectionServiceTests/Generated/v1/reflection-v1.pb.swift",
        "GRPCReflectionServiceTests/Generated/v1Alpha/reflection-v1alpha.grpc.swift",
        "GRPCReflectionServiceTests/Generated/v1Alpha/reflection-v1alpha.pb.swift",
        "GRPCReflectionServiceTests/ReflectionServiceIntegrationTests.swift",
        "GRPCReflectionServiceTests/ReflectionServiceUnitTests.swift",
        "GRPCReflectionServiceTests/Utils.swift",
        "GRPCServerPipelineConfiguratorTests.swift",
        "GRPCStatusCodeTests.swift",
        "GRPCStatusMessageMarshallerTests.swift",
        "GRPCStatusTests.swift",
        "GRPCTestCase.swift",
        "GRPCTimeoutTests.swift",
        "GRPCTypeSizeTests.swift",
        "GRPCWebToHTTP2ServerCodecTests.swift",
        "GRPCWebToHTTP2StateMachineTests.swift",
        "HTTP2MaxConcurrentStreamsTests.swift",
        "HTTP2ToRawGRPCStateMachineTests.swift",
        "HTTPVersionParserTests.swift",
        "HeaderNormalizationTests.swift",
        "ImmediateServerFailureTests.swift",
        "InterceptedRPCCancellationTests.swift",
        "InterceptorsTests.swift",
        "LazyEventLoopPromiseTests.swift",
        "LengthPrefixedMessageReaderTests.swift",
        "MaxAgeTests.swift",
        "MessageEncodingHeaderValidatorTests.swift",
        "MutualTLSTests.swift",
        "OneOrManyQueueTests.swift",
        "PlatformSupportTests.swift",
        "RequestIDProviderTests.swift",
        "RequestIDTests.swift",
        "SampleCertificate+Assertions.swift",
        "ServerErrorDelegateTests.swift",
        "ServerFuzzingRegressionTests.swift",
        "ServerInterceptorPipelineTests.swift",
        "ServerInterceptorTests.swift",
        "ServerOnCloseTests.swift",
        "ServerQuiescingTests.swift",
        "ServerTLSErrorTests.swift",
        "ServerTests.swift",
        "ServerThrowingTests.swift",
        "ServerWebTests.swift",
        "StopwatchTests.swift",
        "StreamResponseHandlerRetainCycleTests.swift",
        "StreamingRequestClientCallTests.swift",
        "TestClientExample.swift",
        "TimeLimitTests.swift",
        "UnaryServerHandlerTests.swift",
        "UserInfoTests.swift",
        "VsockSocketTests.swift",
        "WebCORSHandlerTests.swift",
        "WithConnectedSocketTests.swift",
        "XCTestHelpers.swift",
        "ZeroLengthWriteTests.swift",
        "ZlibTests.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "EchoModel",
        "EchoImplementation",
        "HelloWorldModel",
        "GRPCInteroperabilityTestModels",
        "GRPCInteroperabilityTestsImplementation",
        "GRPCSampleData",
        "GRPCReflectionService"
      ],
      "type" : "test"
    },
    {
      "c99name" : "GRPCSwiftPlugin",
      "module_type" : "PluginTarget",
      "name" : "GRPCSwiftPlugin",
      "path" : "Plugins/GRPCSwiftPlugin",
      "plugin_capability" : {
        "type" : "buildTool"
      },
      "product_memberships" : [
        "GRPCSwiftPlugin"
      ],
      "sources" : [
        "plugin.swift"
      ],
      "target_dependencies" : [
        "protoc-gen-grpc-swift"
      ],
      "type" : "plugin"
    },
    {
      "c99name" : "GRPCSampleData",
      "module_type" : "SwiftTarget",
      "name" : "GRPCSampleData",
      "path" : "Sources/GRPCSampleData",
      "product_dependencies" : [
        "NIOSSL"
      ],
      "product_memberships" : [
        "GRPCPerformanceTests",
        "Echo"
      ],
      "sources" : [
        "GRPCSwiftCertificate.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GRPCReflectionService",
      "module_type" : "SwiftTarget",
      "name" : "GRPCReflectionService",
      "path" : "Sources/GRPCReflectionService",
      "product_dependencies" : [
        "NIO",
        "SwiftProtobuf"
      ],
      "product_memberships" : [
        "GRPCReflectionService",
        "ReflectionServer"
      ],
      "sources" : [
        "Server/ReflectionService.swift",
        "Server/ReflectionServiceV1.swift",
        "Server/ReflectionServiceV1Alpha.swift",
        "v1/reflection-v1.grpc.swift",
        "v1/reflection-v1.pb.swift",
        "v1Alpha/reflection-v1alpha.grpc.swift",
        "v1Alpha/reflection-v1alpha.pb.swift"
      ],
      "target_dependencies" : [
        "GRPC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GRPCPerformanceTests",
      "module_type" : "SwiftTarget",
      "name" : "GRPCPerformanceTests",
      "path" : "Sources/GRPCPerformanceTests",
      "product_dependencies" : [
        "NIOCore",
        "NIOEmbedded",
        "NIOPosix",
        "NIOHTTP2",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "GRPCPerformanceTests"
      ],
      "sources" : [
        "Benchmark.swift",
        "BenchmarkUtils.swift",
        "Benchmarks/EmbeddedClientThroughput.swift",
        "Benchmarks/EmbeddedServer.swift",
        "Benchmarks/MinimalEchoProvider.swift",
        "Benchmarks/PercentEncoding.swift",
        "Benchmarks/ServerProvidingBenchmark.swift",
        "Benchmarks/UnaryThroughput.swift",
        "Benchmarks/echo.grpc.swift",
        "Benchmarks/echo.pb.swift",
        "main.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "GRPCSampleData"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "GRPCInteroperabilityTestsImplementation",
      "module_type" : "SwiftTarget",
      "name" : "GRPCInteroperabilityTestsImplementation",
      "path" : "Sources/GRPCInteroperabilityTestsImplementation",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "NIOHTTP1",
        "Logging",
        "NIOSSL"
      ],
      "product_memberships" : [
        "GRPCInteroperabilityTests"
      ],
      "sources" : [
        "Assertions.swift",
        "GRPCTestingConvenienceMethods.swift",
        "InteroperabilityTestCase.swift",
        "InteroperabilityTestCases.swift",
        "InteroperabilityTestClientConnection.swift",
        "InteroperabilityTestCredentials.swift",
        "InteroperabilityTestServer.swift",
        "ServerFeatures.swift",
        "TestServiceAsyncProvider.swift",
        "TestServiceProvider.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "GRPCInteroperabilityTestModels"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GRPCInteroperabilityTests",
      "module_type" : "SwiftTarget",
      "name" : "GRPCInteroperabilityTests",
      "path" : "Sources/GRPCInteroperabilityTests",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "Logging",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "GRPCInteroperabilityTests"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "GRPCInteroperabilityTestsImplementation"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "GRPCInteroperabilityTestModels",
      "module_type" : "SwiftTarget",
      "name" : "GRPCInteroperabilityTestModels",
      "path" : "Sources/GRPCInteroperabilityTestModels",
      "product_dependencies" : [
        "NIO",
        "SwiftProtobuf"
      ],
      "product_memberships" : [
        "GRPCInteroperabilityTests",
        "GRPCConnectionBackoffInteropTest"
      ],
      "sources" : [
        "Generated/empty.pb.swift",
        "Generated/messages.pb.swift",
        "Generated/test.grpc.swift",
        "Generated/test.pb.swift"
      ],
      "target_dependencies" : [
        "GRPC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GRPCConnectionBackoffInteropTest",
      "module_type" : "SwiftTarget",
      "name" : "GRPCConnectionBackoffInteropTest",
      "path" : "Sources/GRPCConnectionBackoffInteropTest",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "Logging",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "GRPCConnectionBackoffInteropTest"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "GRPCInteroperabilityTestModels"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "GRPC",
      "module_type" : "SwiftTarget",
      "name" : "GRPC",
      "path" : "Sources/GRPC",
      "product_dependencies" : [
        "NIO",
        "NIOCore",
        "NIOPosix",
        "NIOEmbedded",
        "NIOFoundationCompat",
        "NIOTLS",
        "NIOTransportServices",
        "NIOHTTP1",
        "NIOHTTP2",
        "NIOExtras",
        "Logging",
        "SwiftProtobuf",
        "DequeModule",
        "Atomics",
        "NIOSSL"
      ],
      "product_memberships" : [
        "GRPC",
        "GRPCReflectionService",
        "RouteGuideServer",
        "RouteGuideClient",
        "ReflectionServer",
        "PacketCapture",
        "HelloWorldServer",
        "HelloWorldClient",
        "GRPCPerformanceTests",
        "GRPCInteroperabilityTests",
        "GRPCConnectionBackoffInteropTest",
        "Echo"
      ],
      "sources" : [
        "Array+BoundsCheck.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachine+Actions.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachine+Draining.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachine+Finished.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachine+Handling.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachine+Idle.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerHandlerStateMachine/ServerHandlerStateMachine.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/ServerInterceptorStateMachine+Actions.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/ServerInterceptorStateMachine+Finished.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/ServerInterceptorStateMachine+Intercepting.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/ServerInterceptorStateMachine.swift",
        "AsyncAwaitSupport/AsyncServerHandler/ServerInterceptorStateMachine/StreamState.swift",
        "AsyncAwaitSupport/Call+AsyncRequestStreamWriter.swift",
        "AsyncAwaitSupport/CancellationError+GRPCStatusTransformable.swift",
        "AsyncAwaitSupport/GRPCAsyncBidirectionalStreamingCall.swift",
        "AsyncAwaitSupport/GRPCAsyncClientStreamingCall.swift",
        "AsyncAwaitSupport/GRPCAsyncRequestStream.swift",
        "AsyncAwaitSupport/GRPCAsyncRequestStreamWriter.swift",
        "AsyncAwaitSupport/GRPCAsyncResponseStream.swift",
        "AsyncAwaitSupport/GRPCAsyncResponseStreamWriter.swift",
        "AsyncAwaitSupport/GRPCAsyncSequenceProducerDelegate.swift",
        "AsyncAwaitSupport/GRPCAsyncServerCallContext.swift",
        "AsyncAwaitSupport/GRPCAsyncServerHandler.swift",
        "AsyncAwaitSupport/GRPCAsyncServerStreamingCall.swift",
        "AsyncAwaitSupport/GRPCAsyncUnaryCall.swift",
        "AsyncAwaitSupport/GRPCAsyncWriterSinkDelegate.swift",
        "AsyncAwaitSupport/GRPCChannel+AsyncAwaitSupport.swift",
        "AsyncAwaitSupport/GRPCClient+AsyncAwaitSupport.swift",
        "AsyncAwaitSupport/GRPCSendable.swift",
        "AsyncAwaitSupport/NIOAsyncWrappers.swift",
        "CallHandlers/BidirectionalStreamingServerHandler.swift",
        "CallHandlers/ClientStreamingServerHandler.swift",
        "CallHandlers/ServerHandlerProtocol.swift",
        "CallHandlers/ServerStreamingServerHandler.swift",
        "CallHandlers/UnaryServerHandler.swift",
        "CallOptions.swift",
        "ClientCalls/BidirectionalStreamingCall.swift",
        "ClientCalls/Call.swift",
        "ClientCalls/CallDetails.swift",
        "ClientCalls/ClientCall.swift",
        "ClientCalls/ClientStreamingCall.swift",
        "ClientCalls/LazyEventLoopPromise.swift",
        "ClientCalls/ResponseContainers.swift",
        "ClientCalls/ResponsePartContainer.swift",
        "ClientCalls/ServerStreamingCall.swift",
        "ClientCalls/UnaryCall.swift",
        "ClientConnection.swift",
        "ClientConnectionConfiguration+NIOSSL.swift",
        "ClientErrorDelegate.swift",
        "CoalescingLengthPrefixedMessageWriter.swift",
        "Compression/CompressionAlgorithm.swift",
        "Compression/DecompressionLimit.swift",
        "Compression/MessageEncoding.swift",
        "Compression/Zlib.swift",
        "ConnectionBackoff.swift",
        "ConnectionKeepalive.swift",
        "ConnectionManager+Delegates.swift",
        "ConnectionManager.swift",
        "ConnectionManagerChannelProvider.swift",
        "ConnectionPool/ConnectionManagerID.swift",
        "ConnectionPool/ConnectionPool+PerConnectionState.swift",
        "ConnectionPool/ConnectionPool+Waiter.swift",
        "ConnectionPool/ConnectionPool.swift",
        "ConnectionPool/ConnectionPoolIDs.swift",
        "ConnectionPool/GRPCChannelPool.swift",
        "ConnectionPool/PoolManager.swift",
        "ConnectionPool/PoolManagerStateMachine+PerPoolState.swift",
        "ConnectionPool/PoolManagerStateMachine.swift",
        "ConnectionPool/PooledChannel.swift",
        "ConnectionPool/StreamLender.swift",
        "ConnectivityState.swift",
        "DebugOnly.swift",
        "DelegatingErrorHandler.swift",
        "Error+NIOSSL.swift",
        "EventLoopFuture+RecoverFromUncleanShutdown.swift",
        "FakeChannel.swift",
        "GRPCChannel/ClientConnection+NIOSSL.swift",
        "GRPCChannel/ClientConnection+NWTLS.swift",
        "GRPCChannel/GRPCChannel.swift",
        "GRPCChannel/GRPCChannelBuilder.swift",
        "GRPCClient.swift",
        "GRPCClientChannelHandler.swift",
        "GRPCClientStateMachine.swift",
        "GRPCContentType.swift",
        "GRPCError.swift",
        "GRPCHeaderName.swift",
        "GRPCIdleHandler.swift",
        "GRPCIdleHandlerStateMachine.swift",
        "GRPCKeepaliveHandlers.swift",
        "GRPCPayload.swift",
        "GRPCServerPipelineConfigurator.swift",
        "GRPCServerRequestRoutingHandler.swift",
        "GRPCServiceDescription.swift",
        "GRPCStatus.swift",
        "GRPCStatusAndMetadata.swift",
        "GRPCStatusMessageMarshaller.swift",
        "GRPCTLSConfiguration.swift",
        "GRPCTimeout.swift",
        "GRPCWebToHTTP2ServerCodec.swift",
        "HTTP2ToRawGRPCServerCodec.swift",
        "HTTP2ToRawGRPCStateMachine.swift",
        "Interceptor/ClientInterceptorContext.swift",
        "Interceptor/ClientInterceptorPipeline.swift",
        "Interceptor/ClientInterceptorProtocol.swift",
        "Interceptor/ClientInterceptors.swift",
        "Interceptor/ClientTransport.swift",
        "Interceptor/ClientTransportFactory.swift",
        "Interceptor/MessageParts.swift",
        "Interceptor/ServerInterceptorContext.swift",
        "Interceptor/ServerInterceptorPipeline.swift",
        "Interceptor/ServerInterceptors.swift",
        "InterceptorContextList.swift",
        "LengthPrefixedMessageReader.swift",
        "Logger.swift",
        "LoggingServerErrorDelegate.swift",
        "MessageEncodingHeaderValidator.swift",
        "PlatformSupport.swift",
        "ReadWriteStates.swift",
        "Ref.swift",
        "Serialization.swift",
        "Server+NIOSSL.swift",
        "Server.swift",
        "ServerBuilder+NIOSSL.swift",
        "ServerBuilder.swift",
        "ServerCallContexts/ServerCallContext.swift",
        "ServerCallContexts/StreamingResponseCallContext.swift",
        "ServerCallContexts/UnaryResponseCallContext.swift",
        "ServerChannelErrorHandler.swift",
        "ServerErrorDelegate.swift",
        "ServerErrorProcessor.swift",
        "Stopwatch.swift",
        "StreamEvent.swift",
        "TLSVerificationHandler.swift",
        "TLSVersion.swift",
        "TimeLimit.swift",
        "UserInfo.swift",
        "Version.swift",
        "WebCORSHandler.swift",
        "WriteCapturingHandler.swift",
        "_EmbeddedThroughput.swift",
        "_FakeResponseStream.swift",
        "_GRPCClientCodecHandler.swift",
        "_MessageContext.swift"
      ],
      "target_dependencies" : [
        "CGRPCZlib"
      ],
      "type" : "library"
    },
    {
      "c99name" : "EchoModel",
      "module_type" : "SwiftTarget",
      "name" : "EchoModel",
      "path" : "Examples/v1/Echo/Model",
      "product_dependencies" : [
        "NIO",
        "SwiftProtobuf"
      ],
      "product_memberships" : [
        "ReflectionServer",
        "PacketCapture",
        "Echo"
      ],
      "sources" : [
        "echo.grpc.swift",
        "echo.pb.swift"
      ],
      "target_dependencies" : [
        "GRPC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "EchoImplementation",
      "module_type" : "SwiftTarget",
      "name" : "EchoImplementation",
      "path" : "Examples/v1/Echo/Implementation",
      "product_dependencies" : [
        "NIOCore",
        "NIOHTTP2",
        "SwiftProtobuf"
      ],
      "product_memberships" : [
        "ReflectionServer",
        "Echo"
      ],
      "sources" : [
        "EchoAsyncProvider.swift",
        "EchoProvider.swift",
        "HPACKHeaders+Prettify.swift",
        "Interceptors.swift"
      ],
      "target_dependencies" : [
        "EchoModel",
        "GRPC"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Echo",
      "module_type" : "SwiftTarget",
      "name" : "Echo",
      "path" : "Examples/v1/Echo/Runtime",
      "product_dependencies" : [
        "NIOCore",
        "NIOPosix",
        "Logging",
        "ArgumentParser",
        "NIOSSL"
      ],
      "product_memberships" : [
        "Echo"
      ],
      "sources" : [
        "Echo.swift",
        "Empty.swift"
      ],
      "target_dependencies" : [
        "GRPC",
        "EchoModel",
        "EchoImplementation",
        "GRPCSampleData"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CGRPCZlib",
      "module_type" : "ClangTarget",
      "name" : "CGRPCZlib",
      "path" : "Sources/CGRPCZlib",
      "product_memberships" : [
        "GRPC",
        "CGRPCZlib",
        "GRPCReflectionService",
        "RouteGuideServer",
        "RouteGuideClient",
        "ReflectionServer",
        "PacketCapture",
        "HelloWorldServer",
        "HelloWorldClient",
        "GRPCPerformanceTests",
        "GRPCInteroperabilityTests",
        "GRPCConnectionBackoffInteropTest",
        "Echo"
      ],
      "sources" : [
        "empty.c"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.10"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2b296aa7156f49efc57252cdf9ed4bb21d0f92fc98d88800e255491ba2db3116
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.