The Swift Package Index logo.Swift Package Index

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

Build Information

Successful build of MicroExpress, reference 0.5.4 (08760d), with Swift 6.0 for Linux on 2 Nov 2024 15:19:23 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/NozeIO/MicroExpress.git
Reference: 0.5.4
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/NozeIO/MicroExpress
 * tag               0.5.4      -> FETCH_HEAD
HEAD is now at 08760d0 Update README.md
Cloned https://github.com/NozeIO/MicroExpress.git
Revision (git rev-parse @):
08760d00f09f1cc17334290d97fdfc4bf04ea5a8
SUCCESS checkout https://github.com/NozeIO/MicroExpress.git at 0.5.4
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/NozeIO/MicroExpress.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/AlwaysRightInstitute/mustache.git
Fetching https://github.com/apple/swift-nio.git
[1/559] Fetching mustache
[560/71700] Fetching mustache, swift-nio
Fetched https://github.com/AlwaysRightInstitute/mustache.git from cache (3.88s)
Fetched https://github.com/apple/swift-nio.git from cache (3.96s)
Computing version for https://github.com/AlwaysRightInstitute/mustache.git
Computed https://github.com/AlwaysRightInstitute/mustache.git at 0.5.9 (0.42s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.76.1 (0.58s)
Fetching https://github.com/apple/swift-atomics.git
Fetching https://github.com/apple/swift-collections.git
Fetching https://github.com/apple/swift-system.git
[1/1569] Fetching swift-atomics
[378/5470] Fetching swift-atomics, swift-system
[5471/20945] Fetching swift-atomics, swift-system, swift-collections
Fetched https://github.com/apple/swift-atomics.git from cache (0.96s)
Fetched https://github.com/apple/swift-system.git from cache (0.96s)
Fetched https://github.com/apple/swift-collections.git from cache (0.99s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.4.0 (0.37s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (0.39s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.1.4 (0.60s)
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.1.4
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.76.1
Creating working copy for https://github.com/AlwaysRightInstitute/mustache.git
Working copy of https://github.com/AlwaysRightInstitute/mustache.git resolved at 0.5.9
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.4.0
Building for debugging...
[0/26] Write sources
[12/26] Compiling CNIOWASI CNIOWASI.c
[13/26] Compiling CNIOWindows WSAStartup.c
[14/26] Compiling CNIOWindows shim.c
[15/26] Compiling CNIOLinux liburing_shims.c
[16/26] Compiling CNIODarwin shim.c
[17/26] Compiling CNIOLLHTTP c_nio_http.c
[18/26] Write sources
[19/26] Compiling CNIOLinux shim.c
[20/26] Compiling CNIOLLHTTP c_nio_api.c
[21/26] Compiling _AtomicsShims.c
[22/26] Write swift-version-24593BA9C3E375BF.txt
[23/26] Compiling CNIOLLHTTP c_nio_llhttp.c
[24/76] Compiling c-nioatomics.c
[26/76] Emitting module mustache
[26/76] Compiling c-atomics.c
[28/82] Emitting module InternalCollectionsUtilities
[29/84] Compiling mustache MustacheNode.swift
[30/84] Compiling Atomics OptionalRawRepresentable.swift
[31/84] Compiling Atomics RawRepresentable.swift
[32/84] Compiling Atomics AtomicBool.swift
[33/84] Emitting module NIOConcurrencyHelpers
[34/84] Compiling Atomics Primitives.shims.swift
[35/84] Compiling Atomics AtomicInteger.swift
[36/84] Compiling Atomics AtomicOptionalWrappable.swift
[37/84] Emitting module _NIOBase64
[38/84] Compiling _NIOBase64 Base64.swift
[39/84] Compiling Atomics Primitives.native.swift
[40/84] Compiling Atomics AtomicReference.swift
[41/84] Compiling Atomics AtomicStorage.swift
[42/84] Compiling Atomics AtomicValue.swift
[43/85] Compiling _NIODataStructures _TinyArray.swift
[45/85] Compiling Atomics UnsafeAtomic.swift
[46/85] Compiling Atomics UnsafeAtomicLazyReference.swift
[47/85] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[48/85] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[51/85] Compiling mustache MustacheRenderingContext.swift
[52/87] Compiling _NIODataStructures PriorityQueue.swift
[53/87] Emitting module Atomics
[54/87] Compiling Atomics AtomicMemoryOrderings.swift
[55/87] Compiling Atomics DoubleWord.swift
[56/87] Compiling Atomics IntegerConformances.swift
[57/87] Compiling Atomics PointerConformances.swift
[75/88] Compiling Atomics IntegerOperations.swift
[76/88] Compiling Atomics Unmanaged extensions.swift
[78/104] Compiling NIOConcurrencyHelpers lock.swift
[79/104] Compiling mustache MustacheParser.swift
[80/104] Compiling _NIODataStructures Heap.swift
[81/104] Emitting module _NIODataStructures
[82/104] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[83/104] Compiling NIOConcurrencyHelpers atomics.swift
[84/105] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[85/105] Compiling NIOConcurrencyHelpers NIOLock.swift
[87/106] Compiling DequeModule _DequeBuffer.swift
[88/106] Compiling DequeModule _DequeBufferHeader.swift
[90/108] Compiling DequeModule Deque+Equatable.swift
[91/108] Compiling DequeModule Deque+ExpressibleByArrayLiteral.swift
[92/108] Compiling DequeModule Deque+CustomReflectable.swift
[93/108] Compiling DequeModule Deque+Descriptions.swift
[94/108] Compiling DequeModule _DequeSlot.swift
[95/108] Compiling DequeModule _UnsafeWrappedBuffer.swift
[96/108] Compiling DequeModule Deque+Testing.swift
[97/108] Compiling DequeModule Deque._Storage.swift
[98/108] Compiling DequeModule Deque._UnsafeHandle.swift
[99/108] Compiling DequeModule Deque.swift
[100/108] Compiling DequeModule Deque+Extras.swift
[101/108] Compiling DequeModule Deque+Hashable.swift
[102/108] Compiling DequeModule Deque+Codable.swift
[103/108] Compiling DequeModule Deque+Collection.swift
[104/108] Emitting module DequeModule
[106/169] Compiling mustache Helpers.swift
[107/169] Compiling mustache HTMLEscape.swift
[108/169] Compiling mustache Mustacheable.swift
[109/169] Compiling mustache SimpleKVC.swift
[111/170] Compiling NIOCore CircularBuffer.swift
[112/170] Compiling NIOCore Codec.swift
[113/170] Compiling NIOCore ConvenienceOptionSupport.swift
[114/170] Compiling NIOCore DeadChannel.swift
[115/170] Compiling NIOCore DispatchQueue+WithFuture.swift
[116/170] Compiling NIOCore EventLoop+Deprecated.swift
[117/170] Compiling NIOCore EventLoop+SerialExecutor.swift
[118/170] Compiling NIOCore EventLoop.swift
[119/170] Compiling NIOCore MulticastChannel.swift
[120/170] Compiling NIOCore NIOAny.swift
[121/170] Compiling NIOCore NIOCloseOnErrorHandler.swift
[122/170] Compiling NIOCore NIOLoopBound.swift
[123/170] Compiling NIOCore NIOScheduledCallback.swift
[124/170] Compiling NIOCore NIOSendable.swift
[125/170] Compiling NIOCore PointerHelpers.swift
[126/170] Compiling NIOCore RecvByteBufferAllocator.swift
[127/170] Compiling NIOCore IO.swift
[128/170] Compiling NIOCore IOData.swift
[129/170] Compiling NIOCore IPProtocol.swift
[130/170] Compiling NIOCore IntegerBitPacking.swift
[131/170] Compiling NIOCore IntegerTypes.swift
[132/170] Compiling NIOCore Interfaces.swift
[133/170] Compiling NIOCore Linux.swift
[134/170] Compiling NIOCore MarkedCircularBuffer.swift
[135/178] Compiling NIOCore AddressedEnvelope.swift
[136/178] Compiling NIOCore AsyncAwaitSupport.swift
[137/178] Compiling NIOCore AsyncChannel.swift
[138/178] Compiling NIOCore AsyncChannelHandler.swift
[139/178] Compiling NIOCore AsyncChannelInboundStream.swift
[140/178] Compiling NIOCore AsyncChannelOutboundWriter.swift
[141/178] Compiling NIOCore NIOAsyncSequenceProducer.swift
[142/178] Compiling NIOCore NIOAsyncSequenceProducerStrategies.swift
[143/178] Compiling NIOCore NIOAsyncWriter.swift
[144/178] Compiling NIOCore SingleStepByteToMessageDecoder.swift
[145/178] Compiling NIOCore SocketAddresses.swift
[146/178] Compiling NIOCore SocketOptionProvider.swift
[147/178] Compiling NIOCore SystemCallHelpers.swift
[148/178] Compiling NIOCore TimeAmount+Duration.swift
[149/178] Compiling NIOCore TypeAssistedChannelHandler.swift
[150/178] Compiling NIOCore UniversalBootstrapSupport.swift
[151/178] Compiling NIOCore Utilities.swift
[152/178] Compiling NIOCore ByteBuffer-multi-int.swift
[153/178] Compiling NIOCore ByteBuffer-quicBinaryEncodingStrategy.swift
[154/178] Compiling NIOCore ByteBuffer-views.swift
[155/178] Compiling NIOCore Channel.swift
[156/178] Compiling NIOCore ChannelHandler.swift
[157/178] Compiling NIOCore ChannelHandlers.swift
[158/178] Compiling NIOCore ChannelInvoker.swift
[159/178] Compiling NIOCore ChannelOption.swift
[160/178] Compiling NIOCore ChannelPipeline.swift
[161/178] Compiling NIOCore NIOThrowingAsyncSequenceProducer.swift
[162/178] Compiling NIOCore BSDSocketAPI.swift
[163/178] Compiling NIOCore ByteBuffer-aux.swift
[164/178] Compiling NIOCore ByteBuffer-binaryEncodedLengthPrefix.swift
[165/178] Compiling NIOCore ByteBuffer-conversions.swift
[166/178] Compiling NIOCore ByteBuffer-core.swift
[167/178] Compiling NIOCore ByteBuffer-hex.swift
[168/178] Compiling NIOCore ByteBuffer-int.swift
[169/178] Compiling NIOCore ByteBuffer-lengthPrefix.swift
[170/178] Compiling NIOCore EventLoopFuture+AssumeIsolated.swift
[171/178] Compiling NIOCore EventLoopFuture+Deprecated.swift
[172/178] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[173/178] Compiling NIOCore EventLoopFuture.swift
[174/178] Compiling NIOCore FileDescriptor.swift
[175/178] Compiling NIOCore FileHandle.swift
[176/178] Compiling NIOCore FileRegion.swift
[177/178] Compiling NIOCore GlobalSingletons.swift
[178/178] Emitting module NIOCore
[180/231] Compiling NIOEmbedded AsyncTestingChannel.swift
[181/231] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[182/231] Emitting module NIOEmbedded
[183/231] Compiling NIOEmbedded Embedded.swift
[185/232] Emitting module NIOPosix
[186/238] Compiling NIOPosix BSDSocketAPICommon.swift
[187/238] Compiling NIOPosix BSDSocketAPIPosix.swift
[188/238] Compiling NIOPosix BSDSocketAPIWindows.swift
[189/238] Compiling NIOPosix BaseSocket.swift
[190/238] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[191/238] Compiling NIOPosix BaseSocketChannel.swift
[192/238] Compiling NIOPosix BaseStreamSocketChannel.swift
[193/238] Compiling NIOPosix ThreadPosix.swift
[194/238] Compiling NIOPosix ThreadWindows.swift
[195/238] Compiling NIOPosix UnsafeTransfer.swift
[196/238] Compiling NIOPosix Utilities.swift
[197/238] Compiling NIOPosix VsockAddress.swift
[198/238] Compiling NIOPosix VsockChannelEvents.swift
[199/238] Compiling NIOPosix SelectableChannel.swift
[200/238] Compiling NIOPosix SelectableEventLoop.swift
[201/238] Compiling NIOPosix SelectorEpoll.swift
[202/238] Compiling NIOPosix SelectorGeneric.swift
[203/238] Compiling NIOPosix SelectorKqueue.swift
[204/238] Compiling NIOPosix SelectorUring.swift
[205/238] Compiling NIOPosix ServerSocket.swift
[206/238] Compiling NIOPosix Socket.swift
[207/238] Compiling NIOPosix SocketChannel.swift
[208/238] Compiling NIOPosix SocketProtocols.swift
[209/238] Compiling NIOPosix System.swift
[210/238] Compiling NIOPosix Thread.swift
[211/238] Compiling NIOPosix IO.swift
[212/238] Compiling NIOPosix IntegerBitPacking.swift
[213/238] Compiling NIOPosix IntegerTypes.swift
[214/238] Compiling NIOPosix Linux.swift
[215/238] Compiling NIOPosix LinuxCPUSet.swift
[216/238] Compiling NIOPosix LinuxUring.swift
[217/238] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[218/238] Compiling NIOPosix Bootstrap.swift
[219/238] Compiling NIOPosix ControlMessage.swift
[220/238] Compiling NIOPosix DatagramVectorReadManager.swift
[221/238] Compiling NIOPosix Errors+Any.swift
[222/238] Compiling NIOPosix FileDescriptor.swift
[223/238] Compiling NIOPosix GetaddrinfoResolver.swift
[224/238] Compiling NIOPosix HappyEyeballs.swift
[225/238] Compiling NIOPosix NIOThreadPool.swift
[226/238] Compiling NIOPosix NonBlockingFileIO.swift
[227/238] Compiling NIOPosix PendingDatagramWritesManager.swift
[228/238] Compiling NIOPosix PendingWritesManager.swift
[229/238] Compiling NIOPosix PipeChannel.swift
[230/238] Compiling NIOPosix PipePair.swift
[231/238] Compiling NIOPosix PointerHelpers.swift
[232/238] Compiling NIOPosix Pool.swift
[233/238] Compiling NIOPosix PooledRecvBufferAllocator.swift
[234/238] Compiling NIOPosix PosixSingletons+ConcurrencyTakeOver.swift
[235/238] Compiling NIOPosix PosixSingletons.swift
[236/238] Compiling NIOPosix RawSocketBootstrap.swift
[237/238] Compiling NIOPosix Resolver.swift
[238/238] Compiling NIOPosix Selectable.swift
[240/241] Emitting module NIO
[241/241] Compiling NIO Exports.swift
[243/258] Compiling NIOHTTP1 HTTPHeaderValidator.swift
[244/258] Compiling NIOHTTP1 HTTPHeaders+Validation.swift
[245/260] Compiling NIOHTTP1 NIOTypedHTTPClientUpgradeHandler.swift
[246/260] Compiling NIOHTTP1 NIOTypedHTTPClientUpgraderStateMachine.swift
[247/260] Compiling NIOHTTP1 NIOTypedHTTPServerUpgradeHandler.swift
[248/260] Compiling NIOHTTP1 NIOTypedHTTPServerUpgraderStateMachine.swift
[249/260] Compiling NIOHTTP1 NIOHTTPClientUpgradeHandler.swift
[250/260] Compiling NIOHTTP1 NIOHTTPObjectAggregator.swift
[251/260] Compiling NIOHTTP1 HTTPPipelineSetup.swift
[252/260] Compiling NIOHTTP1 HTTPServerPipelineHandler.swift
[253/260] Compiling NIOHTTP1 HTTPServerProtocolErrorHandler.swift
[254/260] Compiling NIOHTTP1 HTTPServerUpgradeHandler.swift
[255/260] Compiling NIOHTTP1 HTTPTypedPipelineSetup.swift
[256/260] Compiling NIOHTTP1 HTTPTypes.swift
[257/260] Emitting module NIOHTTP1
[258/260] Compiling NIOHTTP1 ByteCollectionUtils.swift
[259/260] Compiling NIOHTTP1 HTTPDecoder.swift
[260/260] Compiling NIOHTTP1 HTTPEncoder.swift
[262/269] Compiling MicroExpress Middleware.swift
[263/270] Compiling MicroExpress FS.swift
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:41:34: warning: capture of 'cb' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 |     func emit(error: Error? = nil, result: ByteBuffer? = nil) {
40 |       if eventLoop.inEventLoop { cb(error, result) }
41 |       else { eventLoop.execute { cb(error, result) } }
   |                                  |- warning: capture of 'cb' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                                  `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
42 |     }
43 |
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:52:24: warning: capture of 'emit(error:result:)' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 |           fh = try NIO.NIOFileHandle(path: path)
51 |         }
52 |         catch { return emit(error: error) }
   |                        |- warning: capture of 'emit(error:result:)' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
53 |       #else
54 |         let fh : NIO.FileHandle
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:39:10: warning: concurrently-executed local function 'emit(error:result:)' must be marked as '@Sendable'; this is an error in the Swift 6 language mode
37 |                  ?? loopGroup.next()
38 |
39 |     func emit(error: Error? = nil, result: ByteBuffer? = nil) {
   |          `- warning: concurrently-executed local function 'emit(error:result:)' must be marked as '@Sendable'; this is an error in the Swift 6 language mode
40 |       if eventLoop.inEventLoop { cb(error, result) }
41 |       else { eventLoop.execute { cb(error, result) } }
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:64:29: warning: capture of 'fh' with non-sendable type 'NIOFileHandle' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 |                   allocator  : ByteBufferAllocator(),
63 |                   eventLoop  : eventLoop)
64 |         .map         { try? fh.close(); emit(result: $0) }
   |                             `- warning: capture of 'fh' with non-sendable type 'NIOFileHandle' in a `@Sendable` closure; this is an error in the Swift 6 language mode
65 |         .whenFailure { try? fh.close(); emit(error:  $0) }
66 |     }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/FileHandle.swift:47:20: note: class 'NIOFileHandle' does not conform to the 'Sendable' protocol
 45 | ///
 46 | /// - warning: `NIOFileHandle` objects are not thread-safe and are mutable. They also cannot be fully thread-safe as they refer to a global underlying file descriptor.
 47 | public final class NIOFileHandle: FileDescriptor {
    |                    `- note: class 'NIOFileHandle' does not conform to the 'Sendable' protocol
 48 |     public private(set) var isOpen: Bool
 49 |     private let descriptor: CInt
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'NIOCore'
 7 | //
 8 |
 9 | import NIO
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'NIOCore'
10 |
11 | public enum fs {
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:64:41: warning: capture of 'emit(error:result:)' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 |                   allocator  : ByteBufferAllocator(),
63 |                   eventLoop  : eventLoop)
64 |         .map         { try? fh.close(); emit(result: $0) }
   |                                         |- warning: capture of 'emit(error:result:)' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                                         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
65 |         .whenFailure { try? fh.close(); emit(error:  $0) }
66 |     }
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:65:29: warning: capture of 'fh' with non-sendable type 'NIOFileHandle' in a `@Sendable` closure; this is an error in the Swift 6 language mode
63 |                   eventLoop  : eventLoop)
64 |         .map         { try? fh.close(); emit(result: $0) }
65 |         .whenFailure { try? fh.close(); emit(error:  $0) }
   |                             `- warning: capture of 'fh' with non-sendable type 'NIOFileHandle' in a `@Sendable` closure; this is an error in the Swift 6 language mode
66 |     }
67 |   }
/host/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/FileHandle.swift:47:20: note: class 'NIOFileHandle' does not conform to the 'Sendable' protocol
 45 | ///
 46 | /// - warning: `NIOFileHandle` objects are not thread-safe and are mutable. They also cannot be fully thread-safe as they refer to a global underlying file descriptor.
 47 | public final class NIOFileHandle: FileDescriptor {
    |                    `- note: class 'NIOFileHandle' does not conform to the 'Sendable' protocol
 48 |     public private(set) var isOpen: Bool
 49 |     private let descriptor: CInt
/host/spi-builder-workspace/Sources/MicroExpress/FS.swift:65:41: warning: capture of 'emit(error:result:)' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
63 |                   eventLoop  : eventLoop)
64 |         .map         { try? fh.close(); emit(result: $0) }
65 |         .whenFailure { try? fh.close(); emit(error:  $0) }
   |                                         |- warning: capture of 'emit(error:result:)' with non-sendable type '((any Error)?, ByteBuffer?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                                         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
66 |     }
67 |   }
[264/270] Compiling MicroExpress IncomingMessage.swift
[265/270] Compiling MicroExpress QueryString.swift
[266/270] Compiling MicroExpress Router.swift
[267/270] Compiling MicroExpress CORS.swift
[268/270] Emitting module MicroExpress
[269/270] Compiling MicroExpress Express.swift
/host/spi-builder-workspace/Sources/MicroExpress/Express.swift:25:61: warning: capture of 'self' with non-sendable type 'Express' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  8 |   MultiThreadedEventLoopGroup(numberOfThreads: System.coreCount)
  9 |
 10 | open class Express : Router {
    |            `- note: class 'Express' does not conform to the 'Sendable' protocol
 11 |
 12 |   override public init() {}
    :
 23 |           return channel.pipeline.configureHTTPServerPipeline().flatMap {
 24 |             _ in
 25 |             channel.pipeline.addHandler(HTTPHandler(router: self))
    |                                                             `- warning: capture of 'self' with non-sendable type 'Express' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 26 |           }
 27 |         #else
/host/spi-builder-workspace/Sources/MicroExpress/Express.swift:25:61: warning: capture of 'self' with non-sendable type 'Express' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  8 |   MultiThreadedEventLoopGroup(numberOfThreads: System.coreCount)
  9 |
 10 | open class Express : Router {
    |            `- note: class 'Express' does not conform to the 'Sendable' protocol
 11 |
 12 |   override public init() {}
    :
 23 |           return channel.pipeline.configureHTTPServerPipeline().flatMap {
 24 |             _ in
 25 |             channel.pipeline.addHandler(HTTPHandler(router: self))
    |                                                             `- warning: capture of 'self' with non-sendable type 'Express' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 26 |           }
 27 |         #else
[270/270] Compiling MicroExpress ServerResponse.swift
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:35:27: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
 33 |     #if swift(>=5)
 34 |       _ = channel.writeAndFlush(part)
 35 |                  .recover(handleError)
    |                           `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
 36 |                  .map { self.end() }
 37 |     #else
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:36:25: warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  4 | import NIOHTTP1
  5 |
  6 | open class ServerResponse {
    |            `- note: class 'ServerResponse' does not conform to the 'Sendable' protocol
  7 |
  8 |   public  var status         = HTTPResponseStatus.ok
    :
 34 |       _ = channel.writeAndFlush(part)
 35 |                  .recover(handleError)
 36 |                  .map { self.end() }
    |                         `- warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 37 |     #else
 38 |       _ = channel.writeAndFlush(part)
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:54:47: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
 52 |     let part = HTTPServerResponsePart.head(head)
 53 |     #if swift(>=5)
 54 |       _ = channel.writeAndFlush(part).recover(handleError)
    |                                               `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
 55 |     #else
 56 |       _ = channel.writeAndFlush(part).mapIfError(handleError)
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:69:23: warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  4 | import NIOHTTP1
  5 |
  6 | open class ServerResponse {
    |            `- note: class 'ServerResponse' does not conform to the 'Sendable' protocol
  7 |
  8 |   public  var status         = HTTPResponseStatus.ok
    :
 67 |     didEnd = true
 68 |     _ = channel.writeAndFlush(HTTPServerResponsePart.end(nil))
 69 |                .map { self.channel.close() }
    |                       `- warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 70 |   }
 71 | }
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:114:27: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
112 |     #if swift(>=5)
113 |       _ = channel.writeAndFlush(part)
114 |                  .recover(handleError)
    |                           `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
115 |                  .map { self.end() }
116 |     #else
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:115:25: warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  4 | import NIOHTTP1
  5 |
  6 | open class ServerResponse {
    |            `- note: class 'ServerResponse' does not conform to the 'Sendable' protocol
  7 |
  8 |   public  var status         = HTTPResponseStatus.ok
    :
113 |       _ = channel.writeAndFlush(part)
114 |                  .recover(handleError)
115 |                  .map { self.end() }
    |                         `- warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
116 |     #else
117 |       _ = channel.writeAndFlush(part)
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:194:27: warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
192 |     #if swift(>=5)
193 |       _ = channel.writeAndFlush(part)
194 |                  .recover(handleError)
    |                           `- warning: converting non-sendable function value to '@Sendable (any Error) -> Void' may introduce data races
195 |                  .map { self.end() }
196 |     #else
/host/spi-builder-workspace/Sources/MicroExpress/ServerResponse.swift:195:25: warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  4 | import NIOHTTP1
  5 |
  6 | open class ServerResponse {
    |            `- note: class 'ServerResponse' does not conform to the 'Sendable' protocol
  7 |
  8 |   public  var status         = HTTPResponseStatus.ok
    :
193 |       _ = channel.writeAndFlush(part)
194 |                  .recover(handleError)
195 |                  .map { self.end() }
    |                         `- warning: capture of 'self' with non-sendable type 'ServerResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
196 |     #else
197 |       _ = channel.writeAndFlush(part)
Build complete! (40.84s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-nio",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.12.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio.git"
    },
    {
      "identity" : "mustache",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.5.9",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/AlwaysRightInstitute/mustache.git"
    }
  ],
  "manifest_display_name" : "MicroExpress",
  "name" : "MicroExpress",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "MicroExpress",
      "targets" : [
        "MicroExpress"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MicroExpress",
      "module_type" : "SwiftTarget",
      "name" : "MicroExpress",
      "path" : "Sources/MicroExpress",
      "product_dependencies" : [
        "NIO",
        "NIOHTTP1",
        "mustache"
      ],
      "product_memberships" : [
        "MicroExpress"
      ],
      "sources" : [
        "CORS.swift",
        "Express.swift",
        "FS.swift",
        "IncomingMessage.swift",
        "Middleware.swift",
        "QueryString.swift",
        "Router.swift",
        "ServerResponse.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.