Build Information
Successful build of Kitura-WebSocket, reference 2.1.200 (31ee0c
), with Swift 6.0 for macOS (SPM) on 27 Nov 2024 21:12:13 UTC.
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -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
Build Log
========================================
RunAll
========================================
Builder version: 4.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Kitura/Kitura-WebSocket.git
Reference: 2.1.200
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Kitura/Kitura-WebSocket
* tag 2.1.200 -> FETCH_HEAD
HEAD is now at 31ee0c2 Update package reference to community versions (#104)
Cloned https://github.com/Kitura/Kitura-WebSocket.git
Revision (git rev-parse @):
31ee0c22500569f81b262884f41710ce3ad540f5
SUCCESS checkout https://github.com/Kitura/Kitura-WebSocket.git at 2.1.200
Fetching https://github.com/IBM-Swift/Kitura-net.git
Fetching https://github.com/IBM-Swift/BlueCryptor.git
[1/1640] Fetching bluecryptor
[805/11184] Fetching bluecryptor, kitura-net
Fetched https://github.com/IBM-Swift/BlueCryptor.git from cache (1.55s)
Fetched https://github.com/IBM-Swift/Kitura-net.git from cache (1.55s)
Computing version for https://github.com/IBM-Swift/BlueCryptor.git
Computed https://github.com/IBM-Swift/BlueCryptor.git at 1.0.200 (0.59s)
Computing version for https://github.com/IBM-Swift/Kitura-net.git
Computed https://github.com/IBM-Swift/Kitura-net.git at 2.4.200 (0.57s)
Fetching https://github.com/Kitura/BlueSocket.git
Fetching https://github.com/Kitura/BlueSSLService.git
Fetching https://github.com/Kitura/LoggerAPI.git
[1/2088] Fetching bluesslservice
[106/2859] Fetching bluesslservice, loggerapi
[670/5801] Fetching bluesslservice, loggerapi, bluesocket
Fetched https://github.com/Kitura/BlueSocket.git from cache (1.28s)
Fetched https://github.com/Kitura/LoggerAPI.git from cache (1.28s)
Fetched https://github.com/Kitura/BlueSSLService.git from cache (1.28s)
Computing version for https://github.com/Kitura/BlueSSLService.git
Computed https://github.com/Kitura/BlueSSLService.git at 1.0.200 (0.60s)
Computing version for https://github.com/Kitura/BlueSocket.git
Computed https://github.com/Kitura/BlueSocket.git at 1.0.200 (0.57s)
Computing version for https://github.com/Kitura/LoggerAPI.git
Computed https://github.com/Kitura/LoggerAPI.git at 1.9.200 (0.56s)
Fetching https://github.com/apple/swift-log.git
[1/3702] Fetching swift-log
Fetched https://github.com/apple/swift-log.git from cache (6.38s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.2 (0.40s)
Creating working copy for https://github.com/IBM-Swift/BlueCryptor.git
Working copy of https://github.com/IBM-Swift/BlueCryptor.git resolved at 1.0.200
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.2
Creating working copy for https://github.com/Kitura/LoggerAPI.git
Working copy of https://github.com/Kitura/LoggerAPI.git resolved at 1.9.200
Creating working copy for https://github.com/Kitura/BlueSSLService.git
Working copy of https://github.com/Kitura/BlueSSLService.git resolved at 1.0.200
Creating working copy for https://github.com/IBM-Swift/Kitura-net.git
Working copy of https://github.com/IBM-Swift/Kitura-net.git resolved at 2.4.200
Creating working copy for https://github.com/Kitura/BlueSocket.git
Working copy of https://github.com/Kitura/BlueSocket.git resolved at 1.0.200
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "kitura-websocket",
"name": "Kitura-WebSocket",
"url": "https://github.com/Kitura/Kitura-WebSocket.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Kitura-WebSocket",
"dependencies": [
{
"identity": "kitura-net",
"name": "Kitura-net",
"url": "https://github.com/IBM-Swift/Kitura-net.git",
"version": "2.4.200",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Kitura-net",
"dependencies": [
{
"identity": "loggerapi",
"name": "LoggerAPI",
"url": "https://github.com/Kitura/LoggerAPI.git",
"version": "1.9.200",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/LoggerAPI",
"dependencies": [
{
"identity": "swift-log",
"name": "swift-log",
"url": "https://github.com/apple/swift-log.git",
"version": "1.6.2",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-log",
"dependencies": [
]
}
]
},
{
"identity": "bluesocket",
"name": "Socket",
"url": "https://github.com/Kitura/BlueSocket.git",
"version": "1.0.200",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/BlueSocket",
"dependencies": [
]
},
{
"identity": "bluesslservice",
"name": "SSLService",
"url": "https://github.com/Kitura/BlueSSLService.git",
"version": "1.0.200",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/BlueSSLService",
"dependencies": [
{
"identity": "bluesocket",
"name": "Socket",
"url": "https://github.com/Kitura/BlueSocket.git",
"version": "1.0.200",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/BlueSocket",
"dependencies": [
]
}
]
}
]
},
{
"identity": "bluecryptor",
"name": "Cryptor",
"url": "https://github.com/IBM-Swift/BlueCryptor.git",
"version": "1.0.200",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/BlueCryptor",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/Kitura/Kitura-WebSocket.git
[1/1836] Fetching kitura-websocket
Fetched https://github.com/Kitura/Kitura-WebSocket.git from cache (1.07s)
Fetching https://github.com/IBM-Swift/Kitura-net.git from cache
Fetching https://github.com/IBM-Swift/BlueCryptor.git from cache
Fetched https://github.com/IBM-Swift/Kitura-net.git from cache (0.57s)
Fetched https://github.com/IBM-Swift/BlueCryptor.git from cache (0.57s)
Computing version for https://github.com/IBM-Swift/BlueCryptor.git
Computed https://github.com/IBM-Swift/BlueCryptor.git at 1.0.200 (0.03s)
Computing version for https://github.com/IBM-Swift/Kitura-net.git
Computed https://github.com/IBM-Swift/Kitura-net.git at 2.4.200 (0.03s)
Fetching https://github.com/Kitura/BlueSocket.git from cache
Fetching https://github.com/Kitura/LoggerAPI.git from cache
Fetching https://github.com/Kitura/BlueSSLService.git from cache
Fetched https://github.com/Kitura/BlueSocket.git from cache (0.61s)
Fetched https://github.com/Kitura/BlueSSLService.git from cache (0.61s)
Fetched https://github.com/Kitura/LoggerAPI.git from cache (0.61s)
Computing version for https://github.com/Kitura/BlueSSLService.git
Computed https://github.com/Kitura/BlueSSLService.git at 1.0.200 (0.03s)
Computing version for https://github.com/Kitura/BlueSocket.git
Computed https://github.com/Kitura/BlueSocket.git at 1.0.200 (0.03s)
Computing version for https://github.com/Kitura/LoggerAPI.git
Computed https://github.com/Kitura/LoggerAPI.git at 1.9.200 (0.03s)
Fetching https://github.com/apple/swift-log.git from cache
Fetched https://github.com/apple/swift-log.git from cache (0.51s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.2 (0.02s)
Creating working copy for https://github.com/Kitura/BlueSocket.git
Working copy of https://github.com/Kitura/BlueSocket.git resolved at 1.0.200
Creating working copy for https://github.com/Kitura/LoggerAPI.git
Working copy of https://github.com/Kitura/LoggerAPI.git resolved at 1.9.200
Creating working copy for https://github.com/IBM-Swift/Kitura-net.git
Working copy of https://github.com/IBM-Swift/Kitura-net.git resolved at 2.4.200
Creating working copy for https://github.com/Kitura/BlueSSLService.git
Working copy of https://github.com/Kitura/BlueSSLService.git resolved at 1.0.200
Creating working copy for https://github.com/Kitura/Kitura-WebSocket.git
Working copy of https://github.com/Kitura/Kitura-WebSocket.git resolved at 2.1.200 (31ee0c2)
Creating working copy for https://github.com/IBM-Swift/BlueCryptor.git
Working copy of https://github.com/IBM-Swift/BlueCryptor.git resolved at 1.0.200
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.2
warning: '.resolve-product-dependencies': dependency 'kitura-websocket' is not used by any target
Found 2 product dependencies
- Kitura-net
- Cryptor
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/Kitura/Kitura-WebSocket.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/10] Write sources
[7/10] Write swift-version--7754E27361AE5C74.txt
[8/30] Compiling CHTTPParser utils.c
[9/30] Compiling CHTTPParser http_parser.c
[11/30] Compiling Logging MetadataProvider.swift
[12/30] Compiling Logging LogHandler.swift
[13/30] Compiling Logging Logging.swift
[14/30] Compiling Logging Locks.swift
[15/30] Emitting module Logging
[16/32] Emitting module LoggerAPI
[17/32] Compiling LoggerAPI Logger.swift
[18/32] Compiling Socket SocketProtocols.swift
[19/32] Compiling Cryptor Updatable.swift
[20/33] Compiling Socket Socket.swift
[21/33] Compiling Socket SocketUtils.swift
[22/33] Emitting module Socket
[23/33] Compiling Cryptor Digest.swift
[24/33] Compiling Cryptor HMAC.swift
[25/36] Compiling Cryptor Random.swift
[26/36] Compiling Cryptor Utilities.swift
[27/36] Compiling SSLService SSLPointerTricks.swift
[28/36] Emitting module SSLService
[29/36] Emitting module Cryptor
[30/36] Compiling Cryptor Crypto.swift
[31/36] Compiling Cryptor Cryptor.swift
[32/36] Compiling Cryptor KeyDerivation.swift
[33/36] Compiling Cryptor Status.swift
[34/36] Compiling Cryptor SSLPointerTricks.swift
[35/36] Compiling Cryptor StreamCryptor.swift
[36/36] Compiling SSLService SSLService.swift
[37/71] Compiling KituraNet IncomingSocketManager.swift
[38/71] Compiling KituraNet IncomingSocketProcessor.swift
[39/71] Compiling KituraNet IncomingSocketProcessorCreator.swift
[40/71] Compiling KituraNet ListenerGroup.swift
[41/74] Compiling KituraNet ServerOptions.swift
[42/74] Compiling KituraNet ServerRequest.swift
[43/74] Compiling KituraNet ServerResponse.swift
[44/74] Compiling KituraNet ServerLifecycleListener.swift
[45/74] Compiling KituraNet ServerMonitor.swift
[46/74] Compiling KituraNet ServerState.swift
[47/74] Compiling KituraNet ConnectionUpgrader.swift
[48/74] Compiling KituraNet Error.swift
[49/74] Compiling KituraNet FastCGI.swift
[50/74] Compiling KituraNet FastCGIRecordCreate.swift
[51/74] Compiling KituraNet IncomingHTTPSocketProcessor.swift
[52/74] Compiling KituraNet KeepAliveState.swift
[53/74] Compiling KituraNet HTTPParser.swift
[54/74] Compiling KituraNet HTTPParserStatus.swift
[55/74] Compiling KituraNet SPIUtils.swift
[56/74] Compiling KituraNet Server.swift
[57/74] Compiling KituraNet ServerDelegate.swift
[58/74] Emitting module KituraNet
[59/74] Compiling KituraNet BufferList.swift
[60/74] Compiling KituraNet ClientRequest.swift
[61/74] Compiling KituraNet ClientResponse.swift
[62/74] Compiling KituraNet ConnectionUpgradeFactory.swift
[63/74] Compiling KituraNet ParseResults.swift
[64/74] Compiling KituraNet URLParser.swift
[65/74] Compiling KituraNet HeadersContainer.swift
[66/74] Compiling KituraNet IncomingSocketHandler.swift
[67/74] Compiling KituraNet HTTP.swift
[68/74] Compiling KituraNet HTTPServer.swift
[69/74] Compiling KituraNet HTTPServerRequest.swift
[70/74] Compiling KituraNet HTTPServerResponse.swift
[71/74] Compiling KituraNet FastCGIRecordParser.swift
[72/74] Compiling KituraNet FastCGIServer.swift
[73/74] Compiling KituraNet FastCGIServerRequest.swift
[74/74] Compiling KituraNet FastCGIServerResponse.swift
[75/84] Compiling KituraWebSocket WebSocket.swift
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocket.swift:22:16: warning: static property 'factory' is not concurrency-safe because non-'Sendable' type 'WSConnectionUpgradeFactory' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// that will handle WebSocket connections for specific paths.
21 | public class WebSocket {
22 | static let factory = WSConnectionUpgradeFactory()
| |- warning: static property 'factory' is not concurrency-safe because non-'Sendable' type 'WSConnectionUpgradeFactory' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'factory' 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
23 |
24 | /// Register a `WebSocketService` for a specific path
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WSConnectionUpgradeFactory.swift:24:14: note: class 'WSConnectionUpgradeFactory' does not conform to the 'Sendable' protocol
22 | /// The implementation of the ConnectionUpgradeFactory protocol for the WebSocket protocol.
23 | /// Participates in the HTTP protocol upgrade process when upgarding to the WebSocket protocol.
24 | public class WSConnectionUpgradeFactory: ConnectionUpgradeFactory {
| `- note: class 'WSConnectionUpgradeFactory' does not conform to the 'Sendable' protocol
25 | private var registry = Dictionary<String, WebSocketService>()
26 |
[76/84] Compiling KituraWebSocket WSServerRequest.swift
[77/85] Compiling KituraWebSocket WebSocketService.swift
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketService.swift:23:35: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
21 | /// There can be many WebSocket connections connected to a single `WebSocketService` protocol instance.
22 | /// The protocol is a set of callbacks that are invoked when various events occur.
23 | public protocol WebSocketService: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
24 |
25 | /// Called when a WebSocket client connects to the server and is connected to a specific
[78/85] Compiling KituraWebSocket WebSocketError.swift
[79/85] Compiling KituraWebSocket WSFrameParser.swift
[80/85] Compiling KituraWebSocket WSSocketProcessor.swift
[81/85] Compiling KituraWebSocket WSFrame.swift
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WSFrame.swift:52:27: warning: initialization of 'UnsafeMutablePointer<UInt16>' results in a dangling pointer
50 | payloadLengthUInt16 = CFSwapInt16HostToBig(tempPayloadLengh)
51 | #endif
52 | let asBytes = UnsafeMutablePointer(&payloadLengthUInt16)
| | |- note: implicit argument conversion from 'UInt16' to 'UnsafeMutablePointer<UInt16>' produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use 'withUnsafeMutablePointer' in order to explicitly convert argument to pointer valid for a defined scope
| `- warning: initialization of 'UnsafeMutablePointer<UInt16>' results in a dangling pointer
53 | #if swift(>=4.1)
54 | (UnsafeMutableRawPointer(mutating: bytes)+length+1).copyMemory(from: asBytes, byteCount: 2)
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WSFrame.swift:54:18: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
52 | let asBytes = UnsafeMutablePointer(&payloadLengthUInt16)
53 | #if swift(>=4.1)
54 | (UnsafeMutableRawPointer(mutating: bytes)+length+1).copyMemory(from: asBytes, byteCount: 2)
| | |- note: implicit argument conversion from '[UInt8]' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(mutating:)'
| | `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
55 | #else
56 | (UnsafeMutableRawPointer(mutating: bytes)+length+1).copyBytes(from: asBytes, count: 2)
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WSFrame.swift:68:27: warning: initialization of 'UnsafeMutablePointer<UInt32>' results in a dangling pointer
66 | payloadLengthUInt32 = CFSwapInt32HostToBig(tempPayloadLengh)
67 | #endif
68 | let asBytes = UnsafeMutablePointer(&payloadLengthUInt32)
| | |- note: implicit argument conversion from 'UInt32' to 'UnsafeMutablePointer<UInt32>' produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use 'withUnsafeMutablePointer' in order to explicitly convert argument to pointer valid for a defined scope
| `- warning: initialization of 'UnsafeMutablePointer<UInt32>' results in a dangling pointer
69 | #if swift(>=4.1)
70 | (UnsafeMutableRawPointer(mutating: bytes)+length+5).copyMemory(from: asBytes, byteCount: 4)
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WSFrame.swift:70:18: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
68 | let asBytes = UnsafeMutablePointer(&payloadLengthUInt32)
69 | #if swift(>=4.1)
70 | (UnsafeMutableRawPointer(mutating: bytes)+length+5).copyMemory(from: asBytes, byteCount: 4)
| | |- note: implicit argument conversion from '[UInt8]' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(mutating:)'
| | `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
71 | #else
72 | (UnsafeMutableRawPointer(mutating: bytes)+length+5).copyBytes(from: asBytes, count: 4)
[82/85] Compiling KituraWebSocket WebSocketCloseReasonCode.swift
[83/85] Compiling KituraWebSocket WSConnectionUpgradeFactory.swift
[84/85] Emitting module KituraWebSocket
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocket.swift:22:16: warning: static property 'factory' is not concurrency-safe because non-'Sendable' type 'WSConnectionUpgradeFactory' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// that will handle WebSocket connections for specific paths.
21 | public class WebSocket {
22 | static let factory = WSConnectionUpgradeFactory()
| |- warning: static property 'factory' is not concurrency-safe because non-'Sendable' type 'WSConnectionUpgradeFactory' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'factory' 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
23 |
24 | /// Register a `WebSocketService` for a specific path
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WSConnectionUpgradeFactory.swift:24:14: note: class 'WSConnectionUpgradeFactory' does not conform to the 'Sendable' protocol
22 | /// The implementation of the ConnectionUpgradeFactory protocol for the WebSocket protocol.
23 | /// Participates in the HTTP protocol upgrade process when upgarding to the WebSocket protocol.
24 | public class WSConnectionUpgradeFactory: ConnectionUpgradeFactory {
| `- note: class 'WSConnectionUpgradeFactory' does not conform to the 'Sendable' protocol
25 | private var registry = Dictionary<String, WebSocketService>()
26 |
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketService.swift:23:35: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
21 | /// There can be many WebSocket connections connected to a single `WebSocketService` protocol instance.
22 | /// The protocol is a set of callbacks that are invoked when various events occur.
23 | public protocol WebSocketService: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
24 |
25 | /// Called when a WebSocket client connects to the server and is connected to a specific
[85/85] Compiling KituraWebSocket WebSocketConnection.swift
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:115:45: warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
113 | // throw something?
114 | }
115 | let rawBytes = UnsafeRawPointer(UnsafePointer(utf8))
| | |- note: implicit argument conversion from '[CChar]' (aka 'Array<Int8>') to 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
116 | sendMessage(withOpCode: .ping, payload: rawBytes, payloadLength: count)
117 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:149:41: warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
147 | // throw something?
148 | }
149 | let rawBytes = UnsafeRawPointer(UnsafePointer(utf8))
| | |- note: implicit argument conversion from '[CChar]' (aka 'Array<Int8>') to 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
150 | sendMessage(withOpCode: .text, payload: rawBytes, payloadLength: count)
151 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:163:23: warning: initialization of 'UnsafeMutablePointer<UInt16>' results in a dangling pointer
161 |
162 | let payload = NSMutableData()
163 | let asBytes = UnsafeMutablePointer(&reasonCodeToSend)
| | |- note: implicit argument conversion from 'UInt16' to 'UnsafeMutablePointer<UInt16>' produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use 'withUnsafeMutablePointer' in order to explicitly convert argument to pointer valid for a defined scope
| `- warning: initialization of 'UnsafeMutablePointer<UInt16>' results in a dangling pointer
164 | payload.append(asBytes, length: 2)
165 |
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:173:28: warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
171 | // throw something?
172 | }
173 | payload.append(UnsafePointer(utf8), length: count)
| | |- note: implicit argument conversion from '[CChar]' (aka 'Array<Int8>') to 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
174 | }
175 |
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:190:37: warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | /// the connection and APIs to send messages and control commands to the client
30 | /// at the other end of the connection.
31 | public class WebSocketConnection {
| `- note: class 'WebSocketConnection' does not conform to the 'Sendable' protocol
32 | weak var processor: WSSocketProcessor?
33 |
:
188 |
189 | callbackQueue.async { [weak self] in
190 | if let strongSelf = self {
| `- warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | strongSelf.service?.disconnected(connection: strongSelf, reason: reason)
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:191:86: warning: capture of 'reason' with non-sendable type 'WebSocketCloseReasonCode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
189 | callbackQueue.async { [weak self] in
190 | if let strongSelf = self {
191 | strongSelf.service?.disconnected(connection: strongSelf, reason: reason)
| `- warning: capture of 'reason' with non-sendable type 'WebSocketCloseReasonCode' in a `@Sendable` closure; this is an error in the Swift 6 language mode
192 | }
193 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketCloseReasonCode.swift:19:13: note: consider making enum 'WebSocketCloseReasonCode' conform to the 'Sendable' protocol
17 | /// The `WebSocketCloseReasonCode` enum defines the set of reason codes that a
18 | /// WebSocket application can send/receive when a connection is closed.
19 | public enum WebSocketCloseReasonCode {
| `- note: consider making enum 'WebSocketCloseReasonCode' conform to the 'Sendable' protocol
20 | /// Closed abnormally (1006)
21 | case closedAbnormally
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:204:33: warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | /// the connection and APIs to send messages and control commands to the client
30 | /// at the other end of the connection.
31 | public class WebSocketConnection {
| `- note: class 'WebSocketConnection' does not conform to the 'Sendable' protocol
32 | weak var processor: WSSocketProcessor?
33 |
:
202 |
203 | callbackQueue.async { [weak self] in
204 | if let strongSelf = self {
| `- warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
205 | service.connected(connection: strongSelf)
206 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:205:17: warning: capture of 'service' with non-sendable type 'any WebSocketService' in a `@Sendable` closure; this is an error in the Swift 6 language mode
203 | callbackQueue.async { [weak self] in
204 | if let strongSelf = self {
205 | service.connected(connection: strongSelf)
| `- warning: capture of 'service' with non-sendable type 'any WebSocketService' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 | }
207 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketService.swift:23:17: note: protocol 'WebSocketService' does not conform to the 'Sendable' protocol
21 | /// There can be many WebSocket connections connected to a single `WebSocketService` protocol instance.
22 | /// The protocol is a set of callbacks that are invoked when various events occur.
23 | public protocol WebSocketService: class {
| `- note: protocol 'WebSocketService' does not conform to the 'Sendable' protocol
24 |
25 | /// Called when a WebSocket client connects to the server and is connected to a specific
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:250:21: warning: using '_' to ignore the result of a Void-returning function is redundant
248 |
249 | var closeMessage = Data(referencing: frame.payload)
250 | _ = closeMessage.removeFirst(2)
| `- warning: using '_' to ignore the result of a Void-returning function is redundant
251 | description = String(data: closeMessage, encoding: .utf8)
252 | if description == nil {
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:224:41: warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | /// the connection and APIs to send messages and control commands to the client
30 | /// at the other end of the connection.
31 | public class WebSocketConnection {
| `- note: class 'WebSocketConnection' does not conform to the 'Sendable' protocol
32 | weak var processor: WSSocketProcessor?
33 |
:
222 | let data = Data(bytes: frame.payload.bytes, count: frame.payload.length)
223 | callbackQueue.async { [weak self] in
224 | if let strongSelf = self {
| `- warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
225 | strongSelf.service?.received(message: data, from: strongSelf)
226 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:278:45: warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | /// the connection and APIs to send messages and control commands to the client
30 | /// at the other end of the connection.
31 | public class WebSocketConnection {
| `- note: class 'WebSocketConnection' does not conform to the 'Sendable' protocol
32 | weak var processor: WSSocketProcessor?
33 |
:
276 | let data = Data(bytes: message.bytes, count: message.length)
277 | callbackQueue.async { [weak self] in
278 | if let strongSelf = self {
| `- warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
279 | strongSelf.service?.received(message: data, from: strongSelf)
280 | }
/Users/admin/builder/spi-builder-workspace/Sources/KituraWebSocket/WebSocketConnection.swift:328:33: warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | /// the connection and APIs to send messages and control commands to the client
30 | /// at the other end of the connection.
31 | public class WebSocketConnection {
| `- note: class 'WebSocketConnection' does not conform to the 'Sendable' protocol
32 | weak var processor: WSSocketProcessor?
33 |
:
326 | }
327 | callbackQueue.async { [weak self] in
328 | if let strongSelf = self {
| `- warning: capture of 'self' with non-sendable type 'WebSocketConnection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
329 | strongSelf.service?.received(message: text, from: strongSelf)
330 | }
Build complete! (26.68s)
Build complete.
{
"dependencies" : [
{
"identity" : "kitura-net",
"requirement" : {
"range" : [
{
"lower_bound" : "2.4.200",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/IBM-Swift/Kitura-net.git"
},
{
"identity" : "bluecryptor",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.200",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/IBM-Swift/BlueCryptor.git"
}
],
"manifest_display_name" : "Kitura-WebSocket",
"name" : "Kitura-WebSocket",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Kitura-WebSocket",
"targets" : [
"KituraWebSocket"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "KituraWebSocketTests",
"module_type" : "SwiftTarget",
"name" : "KituraWebSocketTests",
"path" : "Tests/KituraWebSocketTests",
"sources" : [
"BasicTests.swift",
"ComplexTests.swift",
"ConnectionCleanupTests.swift",
"KituraTest+Frames.swift",
"KituraTest.swift",
"PrintLogger.swift",
"ProtocolErrorTests.swift",
"TestLinuxSafeguard.swift",
"TestWebSocketService.swift",
"UpgradeErrors.swift"
],
"target_dependencies" : [
"KituraWebSocket"
],
"type" : "test"
},
{
"c99name" : "KituraWebSocket",
"module_type" : "SwiftTarget",
"name" : "KituraWebSocket",
"path" : "Sources/KituraWebSocket",
"product_dependencies" : [
"KituraNet",
"Cryptor"
],
"product_memberships" : [
"Kitura-WebSocket"
],
"sources" : [
"WSConnectionUpgradeFactory.swift",
"WSFrame.swift",
"WSFrameParser.swift",
"WSServerRequest.swift",
"WSSocketProcessor.swift",
"WebSocket.swift",
"WebSocketCloseReasonCode.swift",
"WebSocketConnection.swift",
"WebSocketError.swift",
"WebSocketService.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Done.