The Swift Package Index logo.Swift Package Index

Build Information

Failed to build SignalRClient, reference 1.2.1 (a5aca8), with Swift 6.4 for Wasm on 24 Sep 2026 03:49:47 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-54344845-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/moozzyk/SignalR-Client-Swift.git
Reference: 1.2.1
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/moozzyk/SignalR-Client-Swift
 * tag               1.2.1      -> FETCH_HEAD
HEAD is now at a5aca80 Refactor TestServer startup to Generic Host pattern
Cloned https://github.com/moozzyk/SignalR-Client-Swift.git
Revision (git rev-parse @):
a5aca80a4de24cc59bb51a1a9c7242960422b9b3
SUCCESS checkout https://github.com/moozzyk/SignalR-Client-Swift.git at 1.2.1
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/moozzyk/SignalR-Client-Swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:4328fdb43c680d205c1d6761b1e3267aa38277eefdda9ddfb17b6a0f1a77857a
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Building for debugging...
[Planning deferred tasks]
error: SwiftCompile normal wasm32 failed with a nonzero exit code. Command line:     cd /host

/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:13:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | class DefaultHttpClient: HttpClientProtocol {
 12 |     private let options: HttpConnectionOptions
 13 |     private let session: URLSession
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 |
 15 |     public init(options: HttpConnectionOptions) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:65:94: error: cannot find type 'URLRequest' in scope
 63 |     }
 64 |
 65 |     @inline(__always) private func populateHeaders(headers: [String: String], request: inout URLRequest) {
    |                                                                                              `- error: cannot find type 'URLRequest' in scope
 66 |         headers.forEach { (key, value) in
 67 |             request.addValue(value, forHTTPHeaderField: key)
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:71:102: error: cannot find type 'URLRequest' in scope
 69 |     }
 70 |
 71 |     @inline(__always) private func setAccessToken(accessTokenProvider: () -> String?, request: inout URLRequest) {
    |                                                                                                      `- error: cannot find type 'URLRequest' in scope
 72 |         if let accessToken = accessTokenProvider() {
 73 |             request.setValue("Bearer \(accessToken)", forHTTPHeaderField: "Authorization")
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:78:59: error: cannot find type 'URLSessionDelegate' in scope
 76 | }
 77 |
 78 | private class DefaultHttpClientSessionDelegate: NSObject, URLSessionDelegate {
    |                                                           `- error: cannot find type 'URLSessionDelegate' in scope
 79 |     static var shared = DefaultHttpClientSessionDelegate()
 80 |
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:85:60: error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 83 |             (
 84 |                 _ session: URLSession, _ challenge: URLAuthenticationChallenge,
 85 |                 _ completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
    |                                                            `- error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 86 |             ) -> Void
 87 |         )?
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:91:50: error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 89 |     func urlSession(
 90 |         _ session: URLSession, didReceive challenge: URLAuthenticationChallenge,
 91 |         completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
    |                                                  `- error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 92 |     ) {
 93 |         if let challengeHandler = authenticationChallengeHandler {
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:90:20: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 88 |
 89 |     func urlSession(
 90 |         _ session: URLSession, didReceive challenge: URLAuthenticationChallenge,
    |                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 91 |         completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
 92 |     ) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift:90:54: error: 'URLAuthenticationChallenge' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 88 |
 89 |     func urlSession(
 90 |         _ session: URLSession, didReceive challenge: URLAuthenticationChallenge,
    |                                                      `- error: 'URLAuthenticationChallenge' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 91 |         completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
 92 |     ) {
Foundation.URLAuthenticationChallenge:2:18: note: 'URLAuthenticationChallenge' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLAuthenticationChallenge = AnyObject
  |                  `- note: 'URLAuthenticationChallenge' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/HttpConnection.swift:12:34: error: cannot find type 'DispatchQueue' in scope
 10 |
 11 | public class HttpConnection: Connection {
 12 |     private let connectionQueue: DispatchQueue
    |                                  `- error: cannot find type 'DispatchQueue' in scope
 13 |     private let startDispatchGroup: DispatchGroup
 14 |
/host/spi-builder-workspace/Sources/SignalRClient/HttpConnection.swift:13:37: error: cannot find type 'DispatchGroup' in scope
 11 | public class HttpConnection: Connection {
 12 |     private let connectionQueue: DispatchQueue
 13 |     private let startDispatchGroup: DispatchGroup
    |                                     `- error: cannot find type 'DispatchGroup' in scope
 14 |
 15 |     private var url: URL
/host/spi-builder-workspace/Sources/SignalRClient/HttpConnectionOptions.swift:62:60: error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
60 |             (
61 |                 _ session: URLSession, _ challenge: URLAuthenticationChallenge,
62 |                 _ completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
   |                                                            `- error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
63 |             ) -> Void
64 |         )?
/host/spi-builder-workspace/Sources/SignalRClient/HttpConnectionOptions.swift:69:31: error: cannot find type 'DispatchQueue' in scope
67 |     The queue to run callbacks on
68 |      */
69 |     public var callbackQueue: DispatchQueue = DispatchQueue(label: "SignalR.connection.callbackQueue")
   |                               `- error: cannot find type 'DispatchQueue' in scope
70 |
71 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/HttpConnectionOptions.swift:69:47: error: cannot find 'DispatchQueue' in scope
67 |     The queue to run callbacks on
68 |      */
69 |     public var callbackQueue: DispatchQueue = DispatchQueue(label: "SignalR.connection.callbackQueue")
   |                                               `- error: cannot find 'DispatchQueue' in scope
70 |
71 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/HubConnection.swift:18:37: error: cannot find type 'DispatchQueue' in scope
 16 |
 17 |     private var invocationId: Int = 0
 18 |     private let hubConnectionQueue: DispatchQueue
    |                                     `- error: cannot find type 'DispatchQueue' in scope
 19 |     private var pendingCalls = [String: ServerInvocationHandler]()
 20 |     private var callbacks = [String: (ArgumentExtractor) throws -> Void]()
/host/spi-builder-workspace/Sources/SignalRClient/HubConnection.swift:29:36: error: cannot find type 'DispatchWorkItem' in scope
 27 |
 28 |     private let keepAliveIntervalInSeconds: Double?
 29 |     private var keepAlivePingTask: DispatchWorkItem?
    |                                    `- error: cannot find type 'DispatchWorkItem' in scope
 30 |
 31 |     private let callbackQueue: DispatchQueue
/host/spi-builder-workspace/Sources/SignalRClient/HubConnection.swift:31:32: error: cannot find type 'DispatchQueue' in scope
 29 |     private var keepAlivePingTask: DispatchWorkItem?
 30 |
 31 |     private let callbackQueue: DispatchQueue
    |                                `- error: cannot find type 'DispatchQueue' in scope
 32 |
 33 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:27:61: error: cannot find type 'DispatchTimeInterval' in scope
25 |     - returns: time interval when the next connect attempt should take place. Returning `.never` indicates that no further connect attempts should take place.
26 |      */
27 |     func nextAttemptInterval(retryContext: RetryContext) -> DispatchTimeInterval
   |                                                             `- error: cannot find type 'DispatchTimeInterval' in scope
28 | }
29 |
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:40:34: error: cannot find type 'DispatchTimeInterval' in scope
38 |              intervals. If this fails the connection will be stopped.
39 |      */
40 |     public init(retryIntervals: [DispatchTimeInterval] = [.milliseconds(0), .seconds(2), .seconds(10), .seconds(30)]) {
   |                                  `- error: cannot find type 'DispatchTimeInterval' in scope
41 |         self.retryIntervals = retryIntervals
42 |     }
/host/spi-builder-workspace/Sources/SignalRClient/HubConnectionOptions.swift:20:31: error: cannot find type 'DispatchQueue' in scope
18 |     The queue to run callbacks on
19 |      */
20 |     public var callbackQueue: DispatchQueue = DispatchQueue.main
   |                               `- error: cannot find type 'DispatchQueue' in scope
21 |
22 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/HubConnectionOptions.swift:20:47: error: cannot find 'DispatchQueue' in scope
18 |     The queue to run callbacks on
19 |      */
20 |     public var callbackQueue: DispatchQueue = DispatchQueue.main
   |                                               `- error: cannot find 'DispatchQueue' in scope
21 |
22 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/LongPollingTransport.swift:14:30: error: cannot find 'DispatchQueue' in scope
 12 |
 13 |     private let logger: Logger
 14 |     private let closeQueue = DispatchQueue(label: "LongPollingTransportCloseQueue")
    |                              `- error: cannot find 'DispatchQueue' in scope
 15 |
 16 |     private var active = false
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:32:26: error: cannot find type 'DispatchTimeInterval' in scope
30 | /// The default reconnect policy that allows providing custom intervals for connect attempts.
31 | public class DefaultReconnectPolicy: ReconnectPolicy {
32 |     let retryIntervals: [DispatchTimeInterval]
   |                          `- error: cannot find type 'DispatchTimeInterval' in scope
33 |
34 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:44:68: error: cannot find type 'DispatchTimeInterval' in scope
42 |     }
43 |
44 |     public func nextAttemptInterval(retryContext: RetryContext) -> DispatchTimeInterval {
   |                                                                    `- error: cannot find type 'DispatchTimeInterval' in scope
45 |         if retryContext.failedAttemptsCount >= retryIntervals.count {
46 |             return .never
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:53:61: error: cannot find type 'DispatchTimeInterval' in scope
51 |
52 | internal class NoReconnectPolicy: ReconnectPolicy {
53 |     func nextAttemptInterval(retryContext: RetryContext) -> DispatchTimeInterval {
   |                                                             `- error: cannot find type 'DispatchTimeInterval' in scope
54 |         return DispatchTimeInterval.never
55 |     }
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:61:26: error: cannot find type 'DispatchTimeInterval' in scope
59 | /// Does not stop when last interval was reached, instead repeats last interval infinitely.
60 | public class InfiniteReconnectPolicy: ReconnectPolicy {
61 |     let retryIntervals: [DispatchTimeInterval]
   |                          `- error: cannot find type 'DispatchTimeInterval' in scope
62 |
63 |     /**
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:67:34: error: cannot find type 'DispatchTimeInterval' in scope
65 |      - parameter retryIntervals: an array of retry intervals. If not provided the following intervals will be used 0, 2, 10 and 15 seconds.
66 |      */
67 |     public init(retryIntervals: [DispatchTimeInterval] = [.milliseconds(0), .seconds(2), .seconds(10), .seconds(15)]) {
   |                                  `- error: cannot find type 'DispatchTimeInterval' in scope
68 |         self.retryIntervals = retryIntervals
69 |     }
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift:71:68: error: cannot find type 'DispatchTimeInterval' in scope
69 |     }
70 |
71 |     public func nextAttemptInterval(retryContext: RetryContext) -> DispatchTimeInterval {
   |                                                                    `- error: cannot find type 'DispatchTimeInterval' in scope
72 |         if retryContext.failedAttemptsCount >= retryIntervals.count {
73 |             return retryIntervals[retryIntervals.count - 1]
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectableConnection.swift:11:35: error: cannot find 'DispatchQueue' in scope
  9 |
 10 | internal class ReconnectableConnection: Connection {
 11 |     private let connectionQueue = DispatchQueue(label: "SignalR.reconnection.queue")
    |                                   `- error: cannot find 'DispatchQueue' in scope
 12 |     private let callbackQueue: DispatchQueue
 13 |
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectableConnection.swift:12:32: error: cannot find type 'DispatchQueue' in scope
 10 | internal class ReconnectableConnection: Connection {
 11 |     private let connectionQueue = DispatchQueue(label: "SignalR.reconnection.queue")
 12 |     private let callbackQueue: DispatchQueue
    |                                `- error: cannot find type 'DispatchQueue' in scope
 13 |
 14 |     private let connectionFactory: () -> Connection
/host/spi-builder-workspace/Sources/SignalRClient/ReconnectableConnection.swift:42:105: error: cannot find type 'DispatchQueue' in scope
 40 |
 41 |     init(
 42 |         connectionFactory: @escaping () -> Connection, reconnectPolicy: ReconnectPolicy, callbackQueue: DispatchQueue,
    |                                                                                                         `- error: cannot find type 'DispatchQueue' in scope
 43 |         logger: Logger
 44 |     ) {
/host/spi-builder-workspace/Sources/SignalRClient/ServerInvocationHandler.swift:29:40: error: cannot find type 'DispatchQueue' in scope
 27 |
 28 |     init(
 29 |         logger: Logger, callbackQueue: DispatchQueue, method: String, arguments: [Encodable],
    |                                        `- error: cannot find type 'DispatchQueue' in scope
 30 |         clientStreamWorkers: [ClientStreamWorker],
 31 |         invocationDidComplete: @escaping (T?, Error?) -> Void
/host/spi-builder-workspace/Sources/SignalRClient/ServerInvocationHandler.swift:114:40: error: cannot find type 'DispatchQueue' in scope
112 |
113 |     init(
114 |         logger: Logger, callbackQueue: DispatchQueue, method: String, arguments: [Encodable],
    |                                        `- error: cannot find type 'DispatchQueue' in scope
115 |         clientStreamWorkers: [ClientStreamWorker],
116 |         streamItemReceived: @escaping (T) -> Void, invocationDidComplete: @escaping (Error?) -> Void
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:12:56: error: cannot find type 'URLSessionWebSocketDelegate' in scope
 10 |
 11 | @available(OSX 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0, *)
 12 | public class WebsocketsTransport: NSObject, Transport, URLSessionWebSocketDelegate {
    |                                                        `- error: cannot find type 'URLSessionWebSocketDelegate' in scope
 13 |     private let logger: Logger
 14 |     private let dispatchQueue = DispatchQueue(label: "SignalR.webSocketTransport.queue")
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:14:33: error: cannot find 'DispatchQueue' in scope
 12 | public class WebsocketsTransport: NSObject, Transport, URLSessionWebSocketDelegate {
 13 |     private let logger: Logger
 14 |     private let dispatchQueue = DispatchQueue(label: "SignalR.webSocketTransport.queue")
    |                                 `- error: cannot find 'DispatchQueue' in scope
 15 |     private var urlSession: URLSession?
 16 |     private var webSocketTask: URLSessionWebSocketTask?
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:15:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 13 |     private let logger: Logger
 14 |     private let dispatchQueue = DispatchQueue(label: "SignalR.webSocketTransport.queue")
 15 |     private var urlSession: URLSession?
    |                             `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 16 |     private var webSocketTask: URLSessionWebSocketTask?
 17 |     private var authenticationChallengeHandler:
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:16:32: error: cannot find type 'URLSessionWebSocketTask' in scope
 14 |     private let dispatchQueue = DispatchQueue(label: "SignalR.webSocketTransport.queue")
 15 |     private var urlSession: URLSession?
 16 |     private var webSocketTask: URLSessionWebSocketTask?
    |                                `- error: cannot find type 'URLSessionWebSocketTask' in scope
 17 |     private var authenticationChallengeHandler:
 18 |         (
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:21:60: error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 19 |             (
 20 |                 _ session: URLSession, _ challenge: URLAuthenticationChallenge,
 21 |                 _ completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
    |                                                            `- error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 22 |             ) -> Void
 23 |         )?
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:62:47: error: cannot find type 'URLSessionWebSocketTask' in scope
 60 |
 61 |     public func urlSession(
 62 |         _ session: URLSession, webSocketTask: URLSessionWebSocketTask, didOpenWithProtocol protocol: String?
    |                                               `- error: cannot find type 'URLSessionWebSocketTask' in scope
 63 |     ) {
 64 |         logger.log(logLevel: .info, message: "urlSession didOpenWithProtocol invoked. WebSocket open")
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:62:20: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 60 |
 61 |     public func urlSession(
 62 |         _ session: URLSession, webSocketTask: URLSessionWebSocketTask, didOpenWithProtocol protocol: String?
    |                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 63 |     ) {
 64 |         logger.log(logLevel: .info, message: "urlSession didOpenWithProtocol invoked. WebSocket open")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:85:41: error: cannot find type 'URLSessionWebSocketTask' in scope
 83 |     }
 84 |
 85 |     private func handleMessage(message: URLSessionWebSocketTask.Message) {
    |                                         `- error: cannot find type 'URLSessionWebSocketTask' in scope
 86 |         switch message {
 87 |         case .string(let text):
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:110:39: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
108 |     }
109 |
110 |     public func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    |                                       `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
111 |         logger.log(logLevel: .debug, message: "urlSession didCompleteWithError invoked")
112 |         guard error != nil else {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:110:57: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
108 |     }
109 |
110 |     public func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    |                                                         `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
111 |         logger.log(logLevel: .debug, message: "urlSession didCompleteWithError invoked")
112 |         guard error != nil else {
Foundation.URLSessionTask:2:18: note: 'URLSessionTask' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSessionTask = AnyObject
  |                  `- note: 'URLSessionTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:137:47: error: cannot find type 'URLSessionWebSocketTask' in scope
135 |
136 |     public func urlSession(
137 |         _ session: URLSession, webSocketTask: URLSessionWebSocketTask,
    |                                               `- error: cannot find type 'URLSessionWebSocketTask' in scope
138 |         didCloseWith closeCode: URLSessionWebSocketTask.CloseCode, reason: Data?
139 |     ) {
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:138:33: error: cannot find type 'URLSessionWebSocketTask' in scope
136 |     public func urlSession(
137 |         _ session: URLSession, webSocketTask: URLSessionWebSocketTask,
138 |         didCloseWith closeCode: URLSessionWebSocketTask.CloseCode, reason: Data?
    |                                 `- error: cannot find type 'URLSessionWebSocketTask' in scope
139 |     ) {
140 |         logger.log(logLevel: .debug, message: "urlSession didCloseWith invoked")
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:137:20: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
135 |
136 |     public func urlSession(
137 |         _ session: URLSession, webSocketTask: URLSessionWebSocketTask,
    |                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
138 |         didCloseWith closeCode: URLSessionWebSocketTask.CloseCode, reason: Data?
139 |     ) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:166:60: error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
164 |     public func urlSession(
165 |         _ session: URLSession, didReceive challenge: URLAuthenticationChallenge,
166 |         completionHandler: @escaping @Sendable (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
    |                                                            `- error: 'AuthChallengeDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
167 |     ) {
168 |         if authenticationChallengeHandler != nil {
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:165:20: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
163 |
164 |     public func urlSession(
165 |         _ session: URLSession, didReceive challenge: URLAuthenticationChallenge,
    |                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
166 |         completionHandler: @escaping @Sendable (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
167 |     ) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:165:54: error: 'URLAuthenticationChallenge' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
163 |
164 |     public func urlSession(
165 |         _ session: URLSession, didReceive challenge: URLAuthenticationChallenge,
    |                                                      `- error: 'URLAuthenticationChallenge' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
166 |         completionHandler: @escaping @Sendable (URLSession.AuthChallengeDisposition, URLCredential?) -> Void
167 |     ) {
Foundation.URLAuthenticationChallenge:2:18: note: 'URLAuthenticationChallenge' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLAuthenticationChallenge = AnyObject
  |                  `- note: 'URLAuthenticationChallenge' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:207:94: error: cannot find type 'URLRequest' in scope
205 |     }
206 |
207 |     @inline(__always) private func populateHeaders(headers: [String: String], request: inout URLRequest) {
    |                                                                                              `- error: cannot find type 'URLRequest' in scope
208 |         headers.forEach { (key, value) in
209 |             request.addValue(value, forHTTPHeaderField: key)
/host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift:213:102: error: cannot find type 'URLRequest' in scope
211 |     }
212 |
213 |     @inline(__always) private func setAccessToken(accessTokenProvider: () -> String?, request: inout URLRequest) {
    |                                                                                                      `- error: cannot find type 'URLRequest' in scope
214 |         if let accessToken = accessTokenProvider() {
215 |             request.setValue("Bearer \(accessToken)", forHTTPHeaderField: "Authorization")
Failed frontend command:
/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/Sources/SignalRClient/ClientStreamWorker.swift /host/spi-builder-workspace/Sources/SignalRClient/CodableHelpers.swift /host/spi-builder-workspace/Sources/SignalRClient/Connection.swift /host/spi-builder-workspace/Sources/SignalRClient/ConnectionDelegate.swift /host/spi-builder-workspace/Sources/SignalRClient/DefaultHttpClient.swift /host/spi-builder-workspace/Sources/SignalRClient/DefaultTransportFactory.swift /host/spi-builder-workspace/Sources/SignalRClient/HandshakeProtocol.swift /host/spi-builder-workspace/Sources/SignalRClient/HttpClientProtocol.swift /host/spi-builder-workspace/Sources/SignalRClient/HttpConnection.swift /host/spi-builder-workspace/Sources/SignalRClient/HttpConnectionOptions.swift /host/spi-builder-workspace/Sources/SignalRClient/HttpResponse.swift /host/spi-builder-workspace/Sources/SignalRClient/HubConnection.swift /host/spi-builder-workspace/Sources/SignalRClient/HubConnectionBuilder.swift /host/spi-builder-workspace/Sources/SignalRClient/HubConnectionDelegate.swift /host/spi-builder-workspace/Sources/SignalRClient/HubConnectionExtensions.swift /host/spi-builder-workspace/Sources/SignalRClient/HubConnectionOptions.swift /host/spi-builder-workspace/Sources/SignalRClient/HubProtocol.swift /host/spi-builder-workspace/Sources/SignalRClient/JSONHubProtocol.swift /host/spi-builder-workspace/Sources/SignalRClient/Logger.swift /host/spi-builder-workspace/Sources/SignalRClient/LongPollingTransport.swift /host/spi-builder-workspace/Sources/SignalRClient/NegotiationResponse.swift /host/spi-builder-workspace/Sources/SignalRClient/ReconnectPolicy.swift /host/spi-builder-workspace/Sources/SignalRClient/ReconnectableConnection.swift /host/spi-builder-workspace/Sources/SignalRClient/ServerInvocationHandler.swift /host/spi-builder-workspace/Sources/SignalRClient/SignalRError.swift /host/spi-builder-workspace/Sources/SignalRClient/StreamHandle.swift /host/spi-builder-workspace/Sources/SignalRClient/TransferFormat.swift /host/spi-builder-workspace/Sources/SignalRClient/Transport.swift /host/spi-builder-workspace/Sources/SignalRClient/TransportDelegate.swift /host/spi-builder-workspace/Sources/SignalRClient/TransportType.swift /host/spi-builder-workspace/Sources/SignalRClient/WebsocketsTransport.swift -target wasm32-unknown-wasip1 -disable-objc-interop -sdk /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -sysroot /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -I /host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32 -module-cache-path /host/spi-builder-workspace/.build/out/ModuleCache.noindex -color-diagnostics -Xcc -fcolor-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -external-plugin-path /usr/lib/swift/host/plugins/testing\#/usr/bin/swift-plugin-server -validate-clang-modules-once -clang-build-session-file /host/spi-builder-workspace/.build/out/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /host -resource-dir /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static -use-static-resource-dir -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -resource-dir -Xcc /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/clang -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/DerivedSources-normal/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/DerivedSources/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name SignalRClient -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/SignalRClient_const_extract_protocols.json -in-process-plugin-server-path /usr/lib/swift/host/libSwiftInProcPluginServer.so -plugin-path /usr/lib/swift/host/plugins -plugin-path /usr/local/lib/swift/host/plugins -emit-module-doc-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/Modules/SignalRClient.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/Modules/SignalRClient.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/SignalRClient-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/SignalRClient-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/SignalRClient-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/SignalRClient.build/Debug-webassembly-wasm32/SignalRClient-t.build/Objects-normal/wasm32/Modules/SignalRClient.swiftmodule
error: Build failed
BUILD FAILURE 6.4 wasm