Build Information
Successful build of Dribble with Swift 6.0 for macOS (SPM).
Swift 6 data race errors: 8
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/orlandos-nl/Dribble.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/orlandos-nl/Dribble
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 7e82e7f Merge pull request #2 from needle-tail/main
Cloned https://github.com/orlandos-nl/Dribble.git
Revision (git rev-parse @):
7e82e7fc28f21da4923ecf4b4d4edd7f3d08d87b
SUCCESS checkout https://github.com/orlandos-nl/Dribble.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/orlandos-nl/Dribble.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/27] Write sources
[13/27] Write CLIExample-entitlement.plist
[14/27] Write sources
[15/27] Compiling CNIOWindows WSAStartup.c
[15/27] Compiling CNIOWindows shim.c
[17/27] Compiling CNIOLinux shim.c
[18/27] Compiling CNIOLinux liburing_shims.c
[19/27] Write swift-version-6F35C1178C84523A.txt
[20/109] Compiling CNIODarwin shim.c
[21/109] Compiling _AtomicsShims.c
[22/128] Compiling c-nioatomics.c
[23/128] Compiling c-atomics.c
[25/134] Compiling _NIOBase64 Base64.swift
[26/134] Emitting module _NIOBase64
[27/134] Compiling Atomics AtomicStorage.swift
[28/134] Compiling Atomics AtomicValue.swift
[29/135] Compiling Atomics AtomicMemoryOrderings.swift
[30/135] Compiling Atomics DoubleWord.swift
[31/135] Compiling Atomics Primitives.shims.swift
[32/135] Compiling Atomics AtomicInteger.swift
[33/135] Compiling Atomics ManagedAtomic.swift
[34/135] Compiling Atomics ManagedAtomicLazyReference.swift
[35/135] Compiling Atomics AtomicBool.swift
[36/135] Compiling Atomics IntegerConformances.swift
[37/135] Compiling Atomics UnsafeAtomic.swift
[38/135] Compiling Atomics UnsafeAtomicLazyReference.swift
[39/135] Compiling Atomics PointerConformances.swift
[40/135] Compiling Atomics Primitives.native.swift
[41/135] Compiling Atomics AtomicOptionalWrappable.swift
[42/135] Compiling Atomics AtomicReference.swift
[43/135] Compiling Atomics OptionalRawRepresentable.swift
[44/135] Compiling Atomics RawRepresentable.swift
[45/135] Emitting module DequeModule
[46/135] Compiling DequeModule _UnsafeWrappedBuffer.swift
[51/137] Compiling _NIODataStructures PriorityQueue.swift
[52/137] Compiling _NIODataStructures _TinyArray.swift
[53/137] Emitting module _NIODataStructures
[54/137] Compiling _NIODataStructures Heap.swift
[55/137] Compiling Atomics IntegerOperations.swift
[56/137] Compiling Atomics Unmanaged extensions.swift
[57/137] Compiling NIOConcurrencyHelpers lock.swift
[68/137] Emitting module Atomics
[73/137] Emitting module NIOConcurrencyHelpers
[74/137] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[75/137] Compiling NIOConcurrencyHelpers NIOLock.swift
[76/137] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[77/137] Compiling NIOConcurrencyHelpers atomics.swift
[78/197] Compiling NIOCore Interfaces.swift
[79/197] Compiling NIOCore Linux.swift
[80/197] Compiling NIOCore MarkedCircularBuffer.swift
[81/197] Compiling NIOCore MulticastChannel.swift
[82/197] Compiling NIOCore NIOAny.swift
[83/197] Compiling NIOCore NIOCloseOnErrorHandler.swift
[84/203] Compiling NIOCore AddressedEnvelope.swift
[85/203] Compiling NIOCore AsyncAwaitSupport.swift
[86/203] Compiling NIOCore AsyncChannel.swift
[87/203] Compiling NIOCore AsyncChannelInboundStream.swift
[88/203] Compiling NIOCore AsyncChannelInboundStreamChannelHandler.swift
[89/203] Compiling NIOCore AsyncChannelOutboundWriter.swift
[90/203] Compiling NIOCore AsyncChannelOutboundWriterHandler.swift
[91/203] Compiling NIOCore NIOLoopBound.swift
[92/203] Compiling NIOCore NIOSendable.swift
[93/203] Compiling NIOCore PointerHelpers.swift
[94/203] Compiling NIOCore RecvByteBufferAllocator.swift
[95/203] Compiling NIOCore SingleStepByteToMessageDecoder.swift
[96/203] Compiling NIOCore SocketAddresses.swift
[97/203] Compiling NIOCore SocketOptionProvider.swift
[98/203] Compiling NIOCore SystemCallHelpers.swift
[99/203] Compiling NIOCore TimeAmount+Duration.swift
[100/203] Compiling NIOCore TypeAssistedChannelHandler.swift
[101/203] Compiling NIOCore UniversalBootstrapSupport.swift
[102/203] Compiling NIOCore Utilities.swift
[103/203] Compiling NIOCore EventLoopFuture+Deprecated.swift
[104/203] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[105/203] Compiling NIOCore EventLoopFuture.swift
[106/203] Compiling NIOCore FileDescriptor.swift
[107/203] Compiling NIOCore FileHandle.swift
[108/203] Compiling NIOCore FileRegion.swift
[109/203] Compiling NIOCore GlobalSingletons.swift
[110/203] Compiling NIOCore IO.swift
[111/203] Compiling NIOCore IOData.swift
[112/203] Compiling NIOCore IPProtocol.swift
[113/203] Compiling NIOCore IntegerBitPacking.swift
[114/203] Compiling NIOCore IntegerTypes.swift
[115/203] Compiling NIOCore Codec.swift
[116/203] Compiling NIOCore ConvenienceOptionSupport.swift
[117/203] Compiling NIOCore DeadChannel.swift
[118/203] Compiling NIOCore DispatchQueue+WithFuture.swift
[119/203] Compiling NIOCore EventLoop+Deprecated.swift
[120/203] Compiling NIOCore EventLoop+SerialExecutor.swift
[121/203] Compiling NIOCore EventLoop.swift
[122/203] Compiling NIOCore CloseRatchet.swift
[123/203] Compiling NIOCore NIOAsyncSequenceProducer.swift
[124/203] Compiling NIOCore NIOAsyncSequenceProducerStrategies.swift
[125/203] Compiling NIOCore NIOAsyncWriter.swift
[126/203] Compiling NIOCore NIOThrowingAsyncSequenceProducer.swift
[127/203] Compiling NIOCore BSDSocketAPI.swift
[128/203] Compiling NIOCore ByteBuffer-aux.swift
[129/203] Compiling NIOCore Channel.swift
[130/203] Compiling NIOCore ChannelHandler.swift
[131/203] Compiling NIOCore ChannelHandlers.swift
[132/203] Compiling NIOCore ChannelInvoker.swift
[133/203] Compiling NIOCore ChannelOption.swift
[134/203] Compiling NIOCore ChannelPipeline.swift
[135/203] Compiling NIOCore CircularBuffer.swift
[136/203] Compiling NIOCore ByteBuffer-conversions.swift
[137/203] Compiling NIOCore ByteBuffer-core.swift
[138/203] Compiling NIOCore ByteBuffer-hexdump.swift
[139/203] Compiling NIOCore ByteBuffer-int.swift
[140/203] Compiling NIOCore ByteBuffer-lengthPrefix.swift
[141/203] Compiling NIOCore ByteBuffer-multi-int.swift
[142/203] Compiling NIOCore ByteBuffer-views.swift
[161/209] Emitting module Crypto
[200/209] Compiling Crypto SafeCompare_boring.swift
[201/209] Compiling Crypto Zeroization_boring.swift
[202/209] Compiling Crypto PrettyBytes.swift
[203/209] Compiling Crypto SafeCompare.swift
[204/209] Compiling Crypto SecureBytes.swift
[205/209] Compiling Crypto Zeroization.swift
[206/209] Emitting module NIOCore
[207/259] Emitting module NIOEmbedded
[208/259] Compiling NIOEmbedded Embedded.swift
[209/259] Compiling NIOEmbedded AsyncTestingChannel.swift
[210/259] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[211/259] Compiling NIOPosix BSDSocketAPICommon.swift
[212/259] Compiling NIOPosix BSDSocketAPIPosix.swift
[213/259] Compiling NIOPosix BSDSocketAPIWindows.swift
[214/259] Compiling NIOPosix BaseSocket.swift
[215/259] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[216/264] Compiling NIOPosix RawSocketBootstrap.swift
[217/264] Compiling NIOPosix Resolver.swift
[218/264] Compiling NIOPosix Selectable.swift
[219/264] Compiling NIOPosix SelectableChannel.swift
[220/264] Compiling NIOPosix SelectableEventLoop.swift
[221/264] Compiling NIOPosix SelectorEpoll.swift
[222/264] Compiling NIOPosix SelectorGeneric.swift
[223/264] Compiling NIOPosix SelectorKqueue.swift
[224/264] Compiling NIOPosix SelectorUring.swift
[225/264] Compiling NIOPosix ServerSocket.swift
[226/264] Compiling NIOPosix ThreadPosix.swift
[227/264] Compiling NIOPosix ThreadWindows.swift
[228/264] Compiling NIOPosix Utilities.swift
[229/264] Compiling NIOPosix VsockAddress.swift
[230/264] Compiling NIOPosix VsockChannelEvents.swift
[231/264] Compiling NIOPosix IntegerTypes.swift
[232/264] Compiling NIOPosix Linux.swift
[233/264] Compiling NIOPosix LinuxCPUSet.swift
[234/264] Compiling NIOPosix LinuxUring.swift
[235/264] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[236/264] Emitting module NIOPosix
[237/264] Compiling NIOPosix PipePair.swift
[238/264] Compiling NIOPosix PointerHelpers.swift
[239/264] Compiling NIOPosix Pool.swift
[240/264] Compiling NIOPosix PooledRecvBufferAllocator.swift
[241/264] Compiling NIOPosix PosixSingletons.swift
[242/264] Compiling NIOPosix Socket.swift
[243/264] Compiling NIOPosix SocketChannel.swift
[244/264] Compiling NIOPosix SocketProtocols.swift
[245/264] Compiling NIOPosix System.swift
[246/264] Compiling NIOPosix Thread.swift
[247/264] Compiling NIOPosix NIOThreadPool.swift
[248/264] Compiling NIOPosix NonBlockingFileIO.swift
[249/264] Compiling NIOPosix PendingDatagramWritesManager.swift
[250/264] Compiling NIOPosix PendingWritesManager.swift
[251/264] Compiling NIOPosix PipeChannel.swift
[252/264] Compiling NIOPosix BaseSocketChannel.swift
[253/264] Compiling NIOPosix BaseStreamSocketChannel.swift
[254/264] Compiling NIOPosix Bootstrap.swift
[255/264] Compiling NIOPosix ControlMessage.swift
[256/264] Compiling NIOPosix DatagramVectorReadManager.swift
[257/264] Compiling NIOPosix FileDescriptor.swift
[258/264] Compiling NIOPosix GetaddrinfoResolver.swift
[259/264] Compiling NIOPosix HappyEyeballs.swift
[260/264] Compiling NIOPosix IO.swift
[261/264] Compiling NIOPosix IntegerBitPacking.swift
[262/266] Compiling NIO Exports.swift
[263/266] Emitting module NIO
[264/272] Emitting module _NIOConcurrency
[265/272] Compiling _NIOConcurrency Empty.swift
[266/272] Compiling NIOFoundationCompat JSONSerialization+ByteBuffer.swift
[267/272] Emitting module NIOFoundationCompat
[268/272] Compiling NIOFoundationCompat ByteBuffer-foundation.swift
[269/272] Compiling NIOFoundationCompat Codable+ByteBuffer.swift
[270/281] Compiling Dribble TurnChannels.swift
[271/281] Compiling Dribble TurnAllocation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:40:18: warning: stored property 'client' of 'Sendable'-conforming class 'TurnAllocationChannel' has non-sendable type 'TurnClient'; this is an error in the Swift 6 language mode
38 |
39 | final class TurnAllocationChannel: Channel, ChannelCore {
40 | internal let client: TurnClient
| `- warning: stored property 'client' of 'Sendable'-conforming class 'TurnAllocationChannel' has non-sendable type 'TurnClient'; this is an error in the Swift 6 language mode
41 | internal let allocationAddress: SocketAddress
42 | public let allocator: ByteBufferAllocator
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnClient.swift:5:20: note: class 'TurnClient' does not conform to the 'Sendable' protocol
3 | import NIO
4 |
5 | public final class TurnClient: StunClient {
| `- note: class 'TurnClient' does not conform to the 'Sendable' protocol
6 | public func requestAllocation() async throws -> TurnAllocation {
7 | let message = try await sendMessage(.allocationRequest())
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:43:17: warning: stored property '_pipeline' of 'Sendable'-conforming class 'TurnAllocationChannel' is mutable; this is an error in the Swift 6 language mode
41 | internal let allocationAddress: SocketAddress
42 | public let allocator: ByteBufferAllocator
43 | private var _pipeline: ChannelPipeline!
| `- warning: stored property '_pipeline' of 'Sendable'-conforming class 'TurnAllocationChannel' is mutable; this is an error in the Swift 6 language mode
44 |
45 | init(client: TurnClient, allocationAddress: SocketAddress) {
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:115:47: warning: capture of 'data' with non-sendable type 'NIOAny' in a `@Sendable` local function; this is an error in the Swift 6 language mode
113 | StunAttribute(
114 | type: .data,
115 | value: unwrapData(data)
| `- warning: capture of 'data' with non-sendable type 'NIOAny' in a `@Sendable` local function; this is an error in the Swift 6 language mode
116 | )
117 | ]
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/NIOAny.swift:45:15: note: struct 'NIOAny' does not conform to the 'Sendable' protocol
43 | /// }
44 | /// }
45 | public struct NIOAny {
| `- note: struct 'NIOAny' does not conform to the 'Sendable' protocol
46 | @usableFromInline
47 | /* private but _versioned */ let _storage: _NIOAny
[272/281] Compiling Dribble TurnClient.swift
[273/281] Compiling Dribble StunInboundHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunInboundHandler.swift:82:13: warning: capture of 'promise' with non-sendable type 'EventLoopPromise<StunMessage>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
80 | )
81 | ).flatMap {
82 | promise.futureResult
| `- warning: capture of 'promise' with non-sendable type 'EventLoopPromise<StunMessage>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
83 | }.get()
84 | }
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/STUN.swift:442:15: note: consider making struct 'StunMessage' conform to the 'Sendable' protocol
440 | }
441 |
442 | public struct StunMessage {
| `- note: consider making struct 'StunMessage' conform to the 'Sendable' protocol
443 | public internal(set) var header: StunMessageHeader
444 | public internal(set) var attributes: [StunAttribute]
[274/281] Compiling Dribble Heplers.swift
[275/281] Compiling Dribble StunClient.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelOption.swift:302:23: warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
300 |
301 | /// - seealso: `SocketOption`.
302 | public static let socketOption = { (name: NIOBSDSocket.Option) -> Types.SocketOption in
| |- warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'socketOption' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
303 | .init(level: .socket, name: name)
304 | }
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunClient.swift:25:21: warning: capture of 'sender' with non-sendable type 'StunInboundHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | },
24 | ByteToMessageHandler(StunParser()),
25 | sender
| `- warning: capture of 'sender' with non-sendable type 'StunInboundHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
26 | )
27 | }.bind(
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunInboundHandler.swift:9:13: note: class 'StunInboundHandler' does not conform to the 'Sendable' protocol
7 | }
8 |
9 | final class StunInboundHandler: ChannelInboundHandler, StunMessageSender {
| `- note: class 'StunInboundHandler' does not conform to the 'Sendable' protocol
10 | public typealias InboundIn = StunMessage
11 | public typealias OutboundOut = AddressedEnvelope<ByteBuffer>
[276/281] Compiling Dribble Errors.swift
[277/281] Emitting module Dribble
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelOption.swift:302:23: warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
300 |
301 | /// - seealso: `SocketOption`.
302 | public static let socketOption = { (name: NIOBSDSocket.Option) -> Types.SocketOption in
| |- warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'socketOption' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
303 | .init(level: .socket, name: name)
304 | }
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunClient.swift:25:21: warning: capture of 'sender' with non-sendable type 'StunInboundHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | },
24 | ByteToMessageHandler(StunParser()),
25 | sender
| `- warning: capture of 'sender' with non-sendable type 'StunInboundHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
26 | )
27 | }.bind(
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunInboundHandler.swift:9:13: note: class 'StunInboundHandler' does not conform to the 'Sendable' protocol
7 | }
8 |
9 | final class StunInboundHandler: ChannelInboundHandler, StunMessageSender {
| `- note: class 'StunInboundHandler' does not conform to the 'Sendable' protocol
10 | public typealias InboundIn = StunMessage
11 | public typealias OutboundOut = AddressedEnvelope<ByteBuffer>
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:40:18: warning: stored property 'client' of 'Sendable'-conforming class 'TurnAllocationChannel' has non-sendable type 'TurnClient'; this is an error in the Swift 6 language mode
38 |
39 | final class TurnAllocationChannel: Channel, ChannelCore {
40 | internal let client: TurnClient
| `- warning: stored property 'client' of 'Sendable'-conforming class 'TurnAllocationChannel' has non-sendable type 'TurnClient'; this is an error in the Swift 6 language mode
41 | internal let allocationAddress: SocketAddress
42 | public let allocator: ByteBufferAllocator
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnClient.swift:5:20: note: class 'TurnClient' does not conform to the 'Sendable' protocol
3 | import NIO
4 |
5 | public final class TurnClient: StunClient {
| `- note: class 'TurnClient' does not conform to the 'Sendable' protocol
6 | public func requestAllocation() async throws -> TurnAllocation {
7 | let message = try await sendMessage(.allocationRequest())
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:43:17: warning: stored property '_pipeline' of 'Sendable'-conforming class 'TurnAllocationChannel' is mutable; this is an error in the Swift 6 language mode
41 | internal let allocationAddress: SocketAddress
42 | public let allocator: ByteBufferAllocator
43 | private var _pipeline: ChannelPipeline!
| `- warning: stored property '_pipeline' of 'Sendable'-conforming class 'TurnAllocationChannel' is mutable; this is an error in the Swift 6 language mode
44 |
45 | init(client: TurnClient, allocationAddress: SocketAddress) {
[278/281] Compiling Dribble STUN.swift
[279/283] Compiling CLIExample CLI.swift
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:45:43: warning: non-sendable type 'StunClient' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
43 | struct CLI {
44 | static func main() async throws {
45 | let client = try await TurnClient.connect(
| `- warning: non-sendable type 'StunClient' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
46 | to: SocketAddress.makeAddressResolvingHost("10.211.55.4", port: 3478)
47 | )
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunClient.swift:5:14: note: class 'StunClient' does not conform to the 'Sendable' protocol
3 | import NIO
4 |
5 | public class StunClient {
| `- note: class 'StunClient' does not conform to the 'Sendable' protocol
6 | let channel: Channel
7 | let sender: StunMessageSender
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Dribble'
1 | import Dribble
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Dribble'
2 | import NIO
3 |
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:50:43: warning: non-sendable type 'TurnAllocation' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
48 |
49 | let myAddress = try await client.requestBinding(addressFamily: .ipv4)
50 | let allocation = try await client.requestAllocation()
| `- warning: non-sendable type 'TurnAllocation' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
51 |
52 | // Normally the other client should also find their address
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:3:15: note: struct 'TurnAllocation' does not conform to the 'Sendable' protocol
1 | import NIO
2 |
3 | public struct TurnAllocation {
| `- note: struct 'TurnAllocation' does not conform to the 'Sendable' protocol
4 | public let ourAddress: SocketAddress
5 | internal let client: TurnClient
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelOption.swift:302:23: warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
300 |
301 | /// - seealso: `SocketOption`.
302 | public static let socketOption = { (name: NIOBSDSocket.Option) -> Types.SocketOption in
| |- warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'socketOption' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
303 | .init(level: .socket, name: name)
304 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:69:50: warning: sending main actor-isolated value of type 'any ChannelHandler...' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
67 | let allocationChannel = try await allocation.createChannel(for: theirAddress)
68 | try await allocationChannel.pipeline.addHandler(ByteToMessageHandler(PrintHandler()))
69 | try await proxyTargettedChannel.pipeline.addHandlers(
| `- warning: sending main actor-isolated value of type 'any ChannelHandler...' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
70 | EnvelopToByteBufferConverter { _ in },
71 | ByteToMessageHandler(PrintHandler())
[280/283] Emitting module CLIExample
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:45:43: warning: non-sendable type 'StunClient' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
43 | struct CLI {
44 | static func main() async throws {
45 | let client = try await TurnClient.connect(
| `- warning: non-sendable type 'StunClient' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
46 | to: SocketAddress.makeAddressResolvingHost("10.211.55.4", port: 3478)
47 | )
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/StunClient.swift:5:14: note: class 'StunClient' does not conform to the 'Sendable' protocol
3 | import NIO
4 |
5 | public class StunClient {
| `- note: class 'StunClient' does not conform to the 'Sendable' protocol
6 | let channel: Channel
7 | let sender: StunMessageSender
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Dribble'
1 | import Dribble
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Dribble'
2 | import NIO
3 |
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:50:43: warning: non-sendable type 'TurnAllocation' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
48 |
49 | let myAddress = try await client.requestBinding(addressFamily: .ipv4)
50 | let allocation = try await client.requestAllocation()
| `- warning: non-sendable type 'TurnAllocation' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
51 |
52 | // Normally the other client should also find their address
/Users/admin/builder/spi-builder-workspace/Sources/Dribble/TurnAllocation.swift:3:15: note: struct 'TurnAllocation' does not conform to the 'Sendable' protocol
1 | import NIO
2 |
3 | public struct TurnAllocation {
| `- note: struct 'TurnAllocation' does not conform to the 'Sendable' protocol
4 | public let ourAddress: SocketAddress
5 | internal let client: TurnClient
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-nio/Sources/NIOCore/ChannelOption.swift:302:23: warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
300 |
301 | /// - seealso: `SocketOption`.
302 | public static let socketOption = { (name: NIOBSDSocket.Option) -> Types.SocketOption in
| |- warning: static property 'socketOption' is not concurrency-safe because non-'Sendable' type '(NIOBSDSocket.Option) -> ChannelOptions.Types.SocketOption' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'socketOption' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
303 | .init(level: .socket, name: name)
304 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLIExample/CLI.swift:69:50: warning: sending main actor-isolated value of type 'any ChannelHandler...' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
67 | let allocationChannel = try await allocation.createChannel(for: theirAddress)
68 | try await allocationChannel.pipeline.addHandler(ByteToMessageHandler(PrintHandler()))
69 | try await proxyTargettedChannel.pipeline.addHandlers(
| `- warning: sending main actor-isolated value of type 'any ChannelHandler...' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
70 | EnvelopToByteBufferConverter { _ in },
71 | ByteToMessageHandler(PrintHandler())
[280/283] Write Objects.LinkFileList
[281/283] Linking CLIExample
[282/283] Applying CLIExample
Build complete! (51.55s)
Fetching https://github.com/apple/swift-atomics.git
Fetching https://github.com/apple/swift-nio.git
Fetching https://github.com/apple/swift-collections.git
Fetching https://github.com/apple/swift-crypto.git
[1/7854] Fetching swift-crypto
[2/9417] Fetching swift-crypto, swift-atomics
[143/23446] Fetching swift-crypto, swift-atomics, swift-collections
[3837/89056] Fetching swift-crypto, swift-atomics, swift-collections, swift-nio
Fetched https://github.com/apple/swift-crypto.git from cache (3.66s)
Fetched https://github.com/apple/swift-atomics.git from cache (3.66s)
Fetched https://github.com/apple/swift-collections.git from cache (3.66s)
Fetched https://github.com/apple/swift-nio.git from cache (3.66s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 2.1.0 (0.71s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.60.0 (0.75s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.0.5 (0.70s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (0.56s)
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.0.5
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 2.1.0
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.60.0
Build complete.
{
"dependencies" : [
{
"identity" : "swift-nio",
"requirement" : {
"range" : [
{
"lower_bound" : "2.60.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-nio.git"
},
{
"identity" : "swift-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-crypto.git"
}
],
"manifest_display_name" : "Dribble",
"name" : "Dribble",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "ios",
"version" : "15.0"
}
],
"products" : [
{
"name" : "Dribble",
"targets" : [
"Dribble"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLIExample",
"targets" : [
"CLIExample"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "DribbleTests",
"module_type" : "SwiftTarget",
"name" : "DribbleTests",
"path" : "Tests/DribbleTests",
"sources" : [
"DribbleTests.swift"
],
"target_dependencies" : [
"Dribble"
],
"type" : "test"
},
{
"c99name" : "Dribble",
"module_type" : "SwiftTarget",
"name" : "Dribble",
"path" : "Sources/Dribble",
"product_dependencies" : [
"NIO",
"_NIOConcurrency",
"NIOFoundationCompat",
"Crypto"
],
"product_memberships" : [
"Dribble",
"CLIExample"
],
"sources" : [
"Errors.swift",
"Heplers.swift",
"STUN.swift",
"StunClient.swift",
"StunInboundHandler.swift",
"TurnAllocation.swift",
"TurnChannels.swift",
"TurnClient.swift"
],
"type" : "library"
},
{
"c99name" : "CLIExample",
"module_type" : "SwiftTarget",
"name" : "CLIExample",
"path" : "Sources/CLIExample",
"product_memberships" : [
"CLIExample"
],
"sources" : [
"CLI.swift"
],
"target_dependencies" : [
"Dribble"
],
"type" : "executable"
}
],
"tools_version" : "5.5"
}
Done.