The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Kitura-WebSocket, reference 2.1.200 (31ee0c), with Swift 6.4 for macOS (SPM) on 17 Sep 2026 11:10:12 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.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
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/Kitura/Kitura-WebSocket.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 277]
[Planning deferred tasks]
[59 / 121]
[64 / 124] CHTTPParser
[70 / 133]
[80 / 160]
[84 / 160] CHTTPParser
[98 / 210]
[103 / 210]
[109 / 210]
[112 / 210]
[122 / 210] Logging
[124 / 210] Logging
[128 / 210] Logging
[135 / 211]
[136 / 211]
[141 / 211] Logging
[144 / 213]
[146 / 213]
[147 / 213]
[158 / 213] Cryptor
[159 / 213] LoggerAPI
[179 / 213] Cryptor-product
[185 / 214] Cryptor
[187 / 214] Cryptor
[192 / 217] SSLService
[199 / 218] KituraNet
[213 / 231] SSLService
[214 / 231] KituraNet
[221 / 232] KituraNet
[230 / 243] KituraWebSocket
[232 / 243] KituraWebSocket
[240 / 243] KituraWebSocket
Build complete! (10.10 sec)
Fetching https://github.com/IBM-Swift/Kitura-net.git
Fetching https://github.com/IBM-Swift/BlueCryptor.git
[1/1658] Fetching bluecryptor
[51/11202] Fetching bluecryptor, kitura-net
Fetched https://github.com/IBM-Swift/Kitura-net.git (2.00s)
Fetched https://github.com/IBM-Swift/BlueCryptor.git (2.00s)
Computing version for https://github.com/IBM-Swift/BlueCryptor.git
Computed https://github.com/IBM-Swift/BlueCryptor.git at 1.0.200 (2.70s)
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.64s)
Fetching https://github.com/Kitura/BlueSSLService.git
Fetching https://github.com/Kitura/BlueSocket.git
Fetching https://github.com/Kitura/LoggerAPI.git
[1/784] Fetching loggerapi
[41/2861] Fetching loggerapi, bluesslservice
[254/5803] Fetching loggerapi, bluesslservice, bluesocket
Fetched https://github.com/Kitura/BlueSSLService.git (1.14s)
Fetched https://github.com/Kitura/LoggerAPI.git (1.17s)
Fetched https://github.com/Kitura/BlueSocket.git (1.17s)
Computing version for https://github.com/Kitura/BlueSSLService.git
Computed https://github.com/Kitura/BlueSSLService.git at 1.0.200 (1.85s)
Computing version for https://github.com/Kitura/BlueSocket.git
Computed https://github.com/Kitura/BlueSocket.git at 1.0.200 (0.63s)
Computing version for https://github.com/Kitura/LoggerAPI.git
Computed https://github.com/Kitura/LoggerAPI.git at 1.9.200 (0.61s)
Fetching https://github.com/apple/swift-log.git
[1/8092] Fetching swift-log
Fetched https://github.com/apple/swift-log.git (1.36s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.15.1 (1.99s)
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/BlueCryptor.git
Working copy of https://github.com/IBM-Swift/BlueCryptor.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
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.15.1
/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 [#deprecation]
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 [#deprecation]
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/WebSocketService.swift:23:35: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
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 [#deprecation]
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/WSFrame.swift:52:27: warning: initialization of 'UnsafeMutablePointer<UInt16>' results in a dangling pointer [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
71 |             #else
72 |                 (UnsafeMutableRawPointer(mutating: bytes)+length+5).copyBytes(from: asBytes, count: 4)
[#TemporaryPointers]: <https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers>
/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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
174 |         }
175 |
/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 {
[#TemporaryPointers]: <https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers>
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.