Build Information
Failed to build PromiseQ, reference 1.7.0 (539a98
), with Swift 6.1 for Wasm on 28 May 2025 01:46:28 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ikhvorost/PromiseQ.git
Reference: 1.7.0
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/ikhvorost/PromiseQ
* tag 1.7.0 -> FETCH_HEAD
HEAD is now at 539a987 Readme: added isCancelled, new await
Cloned https://github.com/ikhvorost/PromiseQ.git
Revision (git rev-parse @):
539a987b5a74da758d1a4d245af5551ee1e35282
SUCCESS checkout https://github.com/ikhvorost/PromiseQ.git at 1.7.0
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/ikhvorost/PromiseQ.git
https://github.com/ikhvorost/PromiseQ.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "PromiseQ",
"name" : "PromiseQ",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "9.0"
},
{
"name" : "macos",
"version" : "10.10"
},
{
"name" : "tvos",
"version" : "9.0"
},
{
"name" : "watchos",
"version" : "2.0"
}
],
"products" : [
{
"name" : "PromiseQ",
"targets" : [
"PromiseQ"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "PromiseQTests",
"module_type" : "SwiftTarget",
"name" : "PromiseQTests",
"path" : "Tests/PromiseQTests",
"sources" : [
"PromiseQTests.swift"
],
"target_dependencies" : [
"PromiseQ"
],
"type" : "test"
},
{
"c99name" : "PromiseQ",
"module_type" : "SwiftTarget",
"name" : "PromiseQ",
"path" : "Sources/PromiseQ",
"product_memberships" : [
"PromiseQ"
],
"sources" : [
"Fetch.swift",
"Monitor.swift",
"PromiseQ.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -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 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/6] Emitting module PromiseQ
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:60:1: warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
58 |
59 | /// String errors
60 | extension String : LocalizedError {
| |- warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
61 | /// A localized message describing what error occurred.
62 | public var errorDescription: String? { return self }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:65:1: error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
63 | }
64 |
65 | extension URLSessionDataTask: Asyncable {
| `- error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:68:1: error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
68 | extension URLSessionDownloadTask: Asyncable {
| `- error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
69 | }
70 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:96:23: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
94 | public class HTTPResponse {
95 | /// The metadata associated with the response to an HTTP protocol URL load request.
96 | public let response: HTTPURLResponse
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
97 |
98 | private let result: ResponseResult
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:142:29: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
140 | }
141 |
142 | fileprivate init(response: HTTPURLResponse, result: ResponseResult) {
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
143 | self.response = response
144 | self.result = result
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:160:8: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
158 | }
159 |
160 | public extension URLSession {
| `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
161 |
162 | /// Creates a promise that retrieves the contents of a HTTP request object.
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:307:38: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
305 | /// - totalBytes: The expected length of the data.
306 | ///
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
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/PromiseQ/Fetch.swift:309:50: error: cannot find type 'URLSessionDownloadDelegate' in scope
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
| `- error: cannot find type 'URLSessionDownloadDelegate' in scope
310 | let resolve: (HTTPResponse) -> Void
311 | let reject: (Error) -> Void
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:321:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
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/PromiseQ/Fetch.swift:321:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:325:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:325:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:333:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
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/PromiseQ/Fetch.swift:333:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:392:46: error: cannot find type 'URLSessionTaskDelegate' in scope
390 | // MARK: - Upload
391 |
392 | private class SessionTaskDelegate: NSObject, URLSessionTaskDelegate {
| `- error: cannot find type 'URLSessionTaskDelegate' in scope
393 | let progress: Progress?
394 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:400:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Fetch.swift:400:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Monitor.swift:28:11: error: cannot find type 'DispatchSemaphore' in scope
26 | import Foundation
27 |
28 | extension DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
29 | static func Lock() -> DispatchSemaphore {
30 | return DispatchSemaphore(value: 0)
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:73:33: error: cannot find type 'DispatchSemaphore' in scope
71 | }
72 | }
73 | @Atomic private var semaphore: DispatchSemaphore?
| `- error: cannot find type 'DispatchSemaphore' in scope
74 | @Atomic var task: Asyncable?
75 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:51:31: error: cannot find type 'DispatchQueue' in scope
49 | }
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
| `- error: cannot find type 'DispatchQueue' in scope
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
53 | f()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:216:23: error: cannot find type 'DispatchWorkItem' in scope
214 |
215 | private let f: (@escaping (Result<T, Error>) -> Void) -> Void
216 | private let autoRun: DispatchWorkItem
| `- error: cannot find type 'DispatchWorkItem' in scope
217 | private let monitor: Monitor
218 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:254:23: error: cannot find type 'DispatchQueue' in scope
252 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
253 | @discardableResult
254 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> T)) {
| `- error: cannot find type 'DispatchQueue' in scope
255 | let monitor = Monitor()
256 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:295:23: error: cannot find type 'DispatchQueue' in scope
293 | /// - Returns: A new `Promise`
294 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
295 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> Promise<T>)) {
| `- error: cannot find type 'DispatchQueue' in scope
296 | let monitor = Monitor()
297 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:351:23: error: cannot find type 'DispatchQueue' in scope
349 | /// - SeeAlso: `Asyncable`
350 | @discardableResult
351 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
352 | f: @escaping (@escaping (T) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) {
353 | let monitor = Monitor()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:397:23: error: cannot find type 'DispatchQueue' in scope
395 | /// - Returns: A new `Promise`
396 | @discardableResult
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:426:31: error: cannot find type 'DispatchQueue' in scope
424 | /// - Returns: A new chained promise.
425 | @discardableResult
426 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> U)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
427 | autoRun.cancel()
428 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:476:31: error: cannot find type 'DispatchQueue' in scope
474 | /// - Returns: A new chained promise.
475 | @discardableResult
476 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> Promise<U>)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
477 | autoRun.cancel()
478 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:548:31: error: cannot find type 'DispatchQueue' in scope
546 | /// - SeeAlso: `Asyncable`
547 | @discardableResult
548 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
549 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) -> Promise<U> {
550 | autoRun.cancel()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:590:31: error: cannot find type 'DispatchQueue' in scope
588 | /// - Returns: A new chained promise.
589 | @discardableResult
590 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
591 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void) throws -> Void) -> Promise<U> {
592 | then(queue, timeout: timeout, retry: retry) { value, resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:616:31: error: cannot find type 'DispatchQueue' in scope
614 | /// - Returns: A new chained promise.
615 | @discardableResult
616 | public func `catch`(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((Error) throws -> Void)) -> Promise<Void> {
| `- error: cannot find type 'DispatchQueue' in scope
617 | autoRun.cancel()
618 | return Promise<Void>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:687:31: error: cannot find type 'DispatchQueue' in scope
685 | /// - Returns: A new chained promise.
686 | @discardableResult
687 | public func finally(_ queue: DispatchQueue = .global(), f: @escaping (() -> Void)) -> Promise<T> {
| `- error: cannot find type 'DispatchQueue' in scope
688 | autoRun.cancel()
689 | return Promise<T>(monitor) { callback in
[4/6] Compiling PromiseQ Fetch.swift
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:60:1: warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
58 |
59 | /// String errors
60 | extension String : LocalizedError {
| |- warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
61 | /// A localized message describing what error occurred.
62 | public var errorDescription: String? { return self }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:65:1: error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
63 | }
64 |
65 | extension URLSessionDataTask: Asyncable {
| `- error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:68:1: error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
68 | extension URLSessionDownloadTask: Asyncable {
| `- error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
69 | }
70 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:96:23: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
94 | public class HTTPResponse {
95 | /// The metadata associated with the response to an HTTP protocol URL load request.
96 | public let response: HTTPURLResponse
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
97 |
98 | private let result: ResponseResult
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:142:29: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
140 | }
141 |
142 | fileprivate init(response: HTTPURLResponse, result: ResponseResult) {
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
143 | self.response = response
144 | self.result = result
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:160:8: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
158 | }
159 |
160 | public extension URLSession {
| `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
161 |
162 | /// Creates a promise that retrieves the contents of a HTTP request object.
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:307:38: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
305 | /// - totalBytes: The expected length of the data.
306 | ///
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
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/PromiseQ/Fetch.swift:309:50: error: cannot find type 'URLSessionDownloadDelegate' in scope
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
| `- error: cannot find type 'URLSessionDownloadDelegate' in scope
310 | let resolve: (HTTPResponse) -> Void
311 | let reject: (Error) -> Void
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:321:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
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/PromiseQ/Fetch.swift:321:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:325:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:325:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:333:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
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/PromiseQ/Fetch.swift:333:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:392:46: error: cannot find type 'URLSessionTaskDelegate' in scope
390 | // MARK: - Upload
391 |
392 | private class SessionTaskDelegate: NSObject, URLSessionTaskDelegate {
| `- error: cannot find type 'URLSessionTaskDelegate' in scope
393 | let progress: Progress?
394 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:400:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Fetch.swift:400:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Fetch.swift:102:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
100 | /// HTTP status code is 200-299.
101 | public var ok: Bool {
102 | (200...299).contains(response.statusCode)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
103 | }
104 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:107:54: error: type 'HTTPURLResponse' (aka 'AnyObject') has no member 'localizedString'
105 | /// Returns a localized string corresponding to a specified HTTP status code.
106 | public var statusCodeDescription: String {
107 | "HTTP \(response.statusCode) - " + HTTPURLResponse.localizedString(forStatusCode: response.statusCode)
| `- error: type 'HTTPURLResponse' (aka 'AnyObject') has no member 'localizedString'
108 | }
109 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:107:94: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
105 | /// Returns a localized string corresponding to a specified HTTP status code.
106 | public var statusCodeDescription: String {
107 | "HTTP \(response.statusCode) - " + HTTPURLResponse.localizedString(forStatusCode: response.statusCode)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
108 | }
109 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:107:20: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
105 | /// Returns a localized string corresponding to a specified HTTP status code.
106 | public var statusCodeDescription: String {
107 | "HTTP \(response.statusCode) - " + HTTPURLResponse.localizedString(forStatusCode: response.statusCode)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
108 | }
109 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:149:4: error: cannot find 'DispatchQueue' in scope
147 | private func clean() {
148 | if case let .location(url) = result {
149 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.1) {
| `- error: cannot find 'DispatchQueue' in scope
150 | try? FileManager.default.removeItem(at: url)
151 | }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:149:49: error: cannot call value of non-function type 'Date'
147 | private func clean() {
148 | if case let .location(url) = result {
149 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.1) {
| `- error: cannot call value of non-function type 'Date'
150 | try? FileManager.default.removeItem(at: url)
151 | }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:295:13: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
293 | ///
294 | public func fetch(_ path: String, method: HTTPMethod = .GET, headers: [String : String]? = nil, body: Data? = nil, retry: Int = 0) -> Promise<HTTPResponse> {
295 | URLSession.shared.fetch(path, method: method, headers: headers, body: body, retry: retry)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
296 | }
297 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:326:11: error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
324 |
325 | func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
326 | session.invalidateAndCancel()
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
327 |
328 | if error != nil {
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:334:11: error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
334 | session.invalidateAndCancel()
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
335 |
336 | // Rename
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:344:54: error: value of type 'URLSessionDownloadTask' (aka 'AnyObject') has no member 'response'
342 | url = (url as NSURL).deletingLastPathComponent!.appendingPathComponent(name)
343 |
344 | let response = HTTPResponse(response: downloadTask.response as! HTTPURLResponse, result: .location(url))
| `- error: value of type 'URLSessionDownloadTask' (aka 'AnyObject') has no member 'response'
345 | resolve(response)
346 | }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:375:18: error: cannot find 'URLRequest' in scope
373 |
374 | case let .success(url):
375 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
376 | request.httpMethod = method.rawValue
377 | request.allHTTPHeaderFields = headers
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:254:23: error: cannot find type 'DispatchQueue' in scope
252 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
253 | @discardableResult
254 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> T)) {
| `- error: cannot find type 'DispatchQueue' in scope
255 | let monitor = Monitor()
256 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:295:23: error: cannot find type 'DispatchQueue' in scope
293 | /// - Returns: A new `Promise`
294 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
295 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> Promise<T>)) {
| `- error: cannot find type 'DispatchQueue' in scope
296 | let monitor = Monitor()
297 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:351:23: error: cannot find type 'DispatchQueue' in scope
349 | /// - SeeAlso: `Asyncable`
350 | @discardableResult
351 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
352 | f: @escaping (@escaping (T) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) {
353 | let monitor = Monitor()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:397:23: error: cannot find type 'DispatchQueue' in scope
395 | /// - Returns: A new `Promise`
396 | @discardableResult
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:11: error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:224:10: note: 'init(_:f:)' declared here
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:32: error: extraneous argument label 'retry:' in call
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: extraneous argument label 'retry:' in call
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:40: error: cannot convert value of type 'Int' to expected argument type 'Monitor'
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: cannot convert value of type 'Int' to expected argument type 'Monitor'
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:49: error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:381:53: error: cannot convert value of type '(Result<HTTPResponse, any Error>) -> Void' to expected argument type '(HTTPResponse) -> Void'
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
| `- error: cannot convert value of type '(Result<HTTPResponse, any Error>) -> Void' to expected argument type '(HTTPResponse) -> Void'
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
383 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:412:18: error: cannot find 'URLRequest' in scope
410 |
411 | case let .success(url):
412 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
413 | request.httpMethod = method.rawValue
414 | request.allHTTPHeaderFields = headers
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:11: error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:224:10: note: 'init(_:f:)' declared here
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:32: error: extraneous argument label 'retry:' in call
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: extraneous argument label 'retry:' in call
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:40: error: cannot convert value of type 'Int' to expected argument type 'Monitor'
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: cannot convert value of type 'Int' to expected argument type 'Monitor'
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:49: error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:418:30: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
| `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
419 |
420 | let completion = { (data: Data?, response: URLResponse?, error: Error?) in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:418:51: error: cannot infer contextual base in reference to member 'default'
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
| `- error: cannot infer contextual base in reference to member 'default'
419 |
420 | let completion = { (data: Data?, response: URLResponse?, error: Error?) in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:418:95: error: 'nil' requires a contextual type
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
| `- error: 'nil' requires a contextual type
419 |
420 | let completion = { (data: Data?, response: URLResponse?, error: Error?) in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:184:24: error: cannot find type 'URLRequest' in scope
182 | /// - SeeAlso: `HTTPResponse`
183 | ///
184 | func fetch(_ request: URLRequest, retry: Int = 0) -> Promise<HTTPResponse> {
| `- error: cannot find type 'URLRequest' in scope
185 | guard let url = request.url?.absoluteString, isHTTP(url) else {
186 | return Promise<HTTPResponse>.reject(ErrorNotHTTP)
[5/6] Compiling PromiseQ PromiseQ.swift
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:51:31: error: cannot find type 'DispatchQueue' in scope
49 | }
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
| `- error: cannot find type 'DispatchQueue' in scope
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
53 | f()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:216:23: error: cannot find type 'DispatchWorkItem' in scope
214 |
215 | private let f: (@escaping (Result<T, Error>) -> Void) -> Void
216 | private let autoRun: DispatchWorkItem
| `- error: cannot find type 'DispatchWorkItem' in scope
217 | private let monitor: Monitor
218 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:254:23: error: cannot find type 'DispatchQueue' in scope
252 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
253 | @discardableResult
254 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> T)) {
| `- error: cannot find type 'DispatchQueue' in scope
255 | let monitor = Monitor()
256 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:295:23: error: cannot find type 'DispatchQueue' in scope
293 | /// - Returns: A new `Promise`
294 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
295 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> Promise<T>)) {
| `- error: cannot find type 'DispatchQueue' in scope
296 | let monitor = Monitor()
297 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:351:23: error: cannot find type 'DispatchQueue' in scope
349 | /// - SeeAlso: `Asyncable`
350 | @discardableResult
351 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
352 | f: @escaping (@escaping (T) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) {
353 | let monitor = Monitor()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:397:23: error: cannot find type 'DispatchQueue' in scope
395 | /// - Returns: A new `Promise`
396 | @discardableResult
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:426:31: error: cannot find type 'DispatchQueue' in scope
424 | /// - Returns: A new chained promise.
425 | @discardableResult
426 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> U)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
427 | autoRun.cancel()
428 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:476:31: error: cannot find type 'DispatchQueue' in scope
474 | /// - Returns: A new chained promise.
475 | @discardableResult
476 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> Promise<U>)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
477 | autoRun.cancel()
478 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:548:31: error: cannot find type 'DispatchQueue' in scope
546 | /// - SeeAlso: `Asyncable`
547 | @discardableResult
548 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
549 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) -> Promise<U> {
550 | autoRun.cancel()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:590:31: error: cannot find type 'DispatchQueue' in scope
588 | /// - Returns: A new chained promise.
589 | @discardableResult
590 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
591 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void) throws -> Void) -> Promise<U> {
592 | then(queue, timeout: timeout, retry: retry) { value, resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:616:31: error: cannot find type 'DispatchQueue' in scope
614 | /// - Returns: A new chained promise.
615 | @discardableResult
616 | public func `catch`(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((Error) throws -> Void)) -> Promise<Void> {
| `- error: cannot find type 'DispatchQueue' in scope
617 | autoRun.cancel()
618 | return Promise<Void>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:687:31: error: cannot find type 'DispatchQueue' in scope
685 | /// - Returns: A new chained promise.
686 | @discardableResult
687 | public func finally(_ queue: DispatchQueue = .global(), f: @escaping (() -> Void)) -> Promise<T> {
| `- error: cannot find type 'DispatchQueue' in scope
688 | autoRun.cancel()
689 | return Promise<T>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:30:13: error: cannot find 'DispatchWorkItem' in scope
28 | private func setTimeout<T>(timeout: TimeInterval, pending: @escaping (Result<T, Error>) -> Void) {
29 | guard timeout > 0 else { return }
30 | let work = DispatchWorkItem {
| `- error: cannot find 'DispatchWorkItem' in scope
31 | pending(.failure(PromiseError.timedOut))
32 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:33:2: error: cannot find 'DispatchQueue' in scope
31 | pending(.failure(PromiseError.timedOut))
32 | }
33 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + timeout, execute: work)
| `- error: cannot find 'DispatchQueue' in scope
34 | }
35 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:33:29: error: cannot infer contextual base in reference to member 'userInitiated'
31 | pending(.failure(PromiseError.timedOut))
32 | }
33 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + timeout, execute: work)
| `- error: cannot infer contextual base in reference to member 'userInitiated'
34 | }
35 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:33:66: error: cannot call value of non-function type 'Date'
31 | pending(.failure(PromiseError.timedOut))
32 | }
33 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + timeout, execute: work)
| `- error: cannot call value of non-function type 'Date'
34 | }
35 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:52:36: error: cannot find '__dispatch_queue_get_label' in scope
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
| `- error: cannot find '__dispatch_queue_get_label' in scope
53 | f()
54 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:52:63: error: 'nil' requires a contextual type
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
| `- error: 'nil' requires a contextual type
53 | f()
54 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:85:13: error: cannot find 'DispatchSemaphore' in scope
83 |
84 | var r = count
85 | let lock = DispatchSemaphore.Lock()
| `- error: cannot find 'DispatchSemaphore' in scope
86 | repeat {
87 | guard monitor.wait() else { return }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:228:18: error: cannot find 'DispatchWorkItem' in scope
226 | self.monitor = monitor
227 |
228 | self.autoRun = DispatchWorkItem { f { _ in } }
| `- error: cannot find 'DispatchWorkItem' in scope
229 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.01, execute: self.autoRun)
230 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:229:3: error: cannot find 'DispatchQueue' in scope
227 |
228 | self.autoRun = DispatchWorkItem { f { _ in } }
229 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.01, execute: self.autoRun)
| `- error: cannot find 'DispatchQueue' in scope
230 | }
231 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:229:48: error: cannot call value of non-function type 'Date'
227 |
228 | self.autoRun = DispatchWorkItem { f { _ in } }
229 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.01, execute: self.autoRun)
| `- error: cannot call value of non-function type 'Date'
230 | }
231 |
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:73:33: error: cannot find type 'DispatchSemaphore' in scope
71 | }
72 | }
73 | @Atomic private var semaphore: DispatchSemaphore?
| `- error: cannot find type 'DispatchSemaphore' in scope
74 | @Atomic var task: Asyncable?
75 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:399:12: error: extra arguments at positions #2, #3, #4 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
| `- error: extra arguments at positions #2, #3, #4 in call
400 | try f(resolve, reject)
401 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:399:18: error: missing argument for parameter 'f' in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
| `- error: missing argument for parameter 'f' in call
400 | try f(resolve, reject)
401 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:731:14: error: cannot find 'DispatchSemaphore' in scope
729 | var result: T?
730 | var error: Error?
731 | let lock = DispatchSemaphore.Lock()
| `- error: cannot find 'DispatchSemaphore' in scope
732 |
733 | self.then {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:780:20: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
778 | /// - Returns: A new resolved promise
779 | public static func resolve(_ value: T) -> Promise<T> {
780 | return Promise<T> { return value }
| `- error: missing argument for parameter #1 in call
781 | }
782 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:780:21: error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
778 | /// - Returns: A new resolved promise
779 | public static func resolve(_ value: T) -> Promise<T> {
780 | return Promise<T> { return value }
| `- error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
781 | }
782 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:780:30: error: cannot convert value of type 'T' to closure result type 'Void'
778 | /// - Returns: A new resolved promise
779 | public static func resolve(_ value: T) -> Promise<T> {
780 | return Promise<T> { return value }
| `- error: cannot convert value of type 'T' to closure result type 'Void'
781 | }
782 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:17: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: missing argument for parameter #1 in call
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:18: error: invalid conversion from throwing function of type '() throws -> T' to non-throwing function type '(@escaping (Result<T, any Error>) -> Void) -> Void'
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: invalid conversion from throwing function of type '() throws -> T' to non-throwing function type '(@escaping (Result<T, any Error>) -> Void) -> Void'
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:18: error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:26: error: declared closure result 'T' is incompatible with contextual type 'Void'
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: declared closure result 'T' is incompatible with contextual type 'Void'
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:844:15: error: cannot find 'DispatchSemaphore' in scope
842 | public static func all(settled: Bool = false, _ promises:[Promise<T>]) -> Promise<Array<T>> {
843 | var results = [Int : T]()
844 | let mutex = DispatchSemaphore.Mutex()
| `- error: cannot find 'DispatchSemaphore' in scope
845 | promises.forEach { $0.autoRun.cancel() }
846 | let container = AsyncContainer(tasks: promises.map(\.monitor))
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:848:27: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
846 | let container = AsyncContainer(tasks: promises.map(\.monitor))
847 |
848 | return Promise<Array<T>> { resolve, reject, task in
| `- error: missing argument for parameter #1 in call
849 |
850 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:848:30: error: contextual closure type '(@escaping (Result<Array<T>, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
846 | let container = AsyncContainer(tasks: promises.map(\.monitor))
847 |
848 | return Promise<Array<T>> { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<Array<T>, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
849 |
850 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:851:13: error: cannot convert value of type '[T]' to expected argument type 'Result<Array<T>, any Error>'
849 |
850 | guard promises.count > 0 else {
851 | resolve([T]())
| `- error: cannot convert value of type '[T]' to expected argument type 'Result<Array<T>, any Error>'
852 | return
853 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:922:17: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
920 | promises.forEach { $0.autoRun.cancel() }
921 | let container = AsyncContainer(tasks: promises.map(\.monitor))
922 | return Promise { resolve, reject, task in
| `- error: missing argument for parameter #1 in call
923 |
924 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:922:20: error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
920 | promises.forEach { $0.autoRun.cancel() }
921 | let container = AsyncContainer(tasks: promises.map(\.monitor))
922 | return Promise { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
923 |
924 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:991:15: error: cannot find 'DispatchSemaphore' in scope
989 | public static func any(_ promises: [Promise<T>]) -> Promise<T> {
990 | var errors = [Int : Error]()
991 | let mutex = DispatchSemaphore.Mutex()
| `- error: cannot find 'DispatchSemaphore' in scope
992 | promises.forEach { $0.autoRun.cancel() }
993 | let container = AsyncContainer(tasks: promises.map(\.monitor))
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:995:20: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
993 | let container = AsyncContainer(tasks: promises.map(\.monitor))
994 |
995 | return Promise<T> { resolve, reject, task in
| `- error: missing argument for parameter #1 in call
996 |
997 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:995:23: error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
993 | let container = AsyncContainer(tasks: promises.map(\.monitor))
994 |
995 | return Promise<T> { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
996 |
997 | guard promises.count > 0 else {
[6/6] Compiling PromiseQ Monitor.swift
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:28:11: error: cannot find type 'DispatchSemaphore' in scope
26 | import Foundation
27 |
28 | extension DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
29 | static func Lock() -> DispatchSemaphore {
30 | return DispatchSemaphore(value: 0)
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:73:33: error: cannot find type 'DispatchSemaphore' in scope
71 | }
72 | }
73 | @Atomic private var semaphore: DispatchSemaphore?
| `- error: cannot find type 'DispatchSemaphore' in scope
74 | @Atomic var task: Asyncable?
75 |
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:39:2: error: cannot find 'objc_sync_enter' in scope
37 |
38 | func synchronized<T : AnyObject, U>(_ obj: T, closure: () -> U) -> U {
39 | objc_sync_enter(obj)
| `- error: cannot find 'objc_sync_enter' in scope
40 | defer {
41 | objc_sync_exit(obj)
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:41:3: error: cannot find 'objc_sync_exit' in scope
39 | objc_sync_enter(obj)
40 | defer {
41 | objc_sync_exit(obj)
| `- error: cannot find 'objc_sync_exit' in scope
42 | }
43 | return closure()
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:92:17: error: cannot infer contextual base in reference to member 'Lock'
90 |
91 | if semaphore == nil {
92 | semaphore = .Lock()
| `- error: cannot infer contextual base in reference to member 'Lock'
93 | }
94 | }
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:29:24: error: cannot find type 'DispatchSemaphore' in scope
27 |
28 | extension DispatchSemaphore {
29 | static func Lock() -> DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
30 | return DispatchSemaphore(value: 0)
31 | }
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:33:25: error: cannot find type 'DispatchSemaphore' in scope
31 | }
32 |
33 | static func Mutex() -> DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
34 | return DispatchSemaphore(value: 1)
35 | }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/5] Emitting module PromiseQ
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:60:1: warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
58 |
59 | /// String errors
60 | extension String : LocalizedError {
| |- warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
61 | /// A localized message describing what error occurred.
62 | public var errorDescription: String? { return self }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:65:1: error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
63 | }
64 |
65 | extension URLSessionDataTask: Asyncable {
| `- error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:68:1: error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
68 | extension URLSessionDownloadTask: Asyncable {
| `- error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
69 | }
70 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:96:23: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
94 | public class HTTPResponse {
95 | /// The metadata associated with the response to an HTTP protocol URL load request.
96 | public let response: HTTPURLResponse
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
97 |
98 | private let result: ResponseResult
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:142:29: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
140 | }
141 |
142 | fileprivate init(response: HTTPURLResponse, result: ResponseResult) {
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
143 | self.response = response
144 | self.result = result
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:160:8: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
158 | }
159 |
160 | public extension URLSession {
| `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
161 |
162 | /// Creates a promise that retrieves the contents of a HTTP request object.
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:307:38: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
305 | /// - totalBytes: The expected length of the data.
306 | ///
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
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/PromiseQ/Fetch.swift:309:50: error: cannot find type 'URLSessionDownloadDelegate' in scope
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
| `- error: cannot find type 'URLSessionDownloadDelegate' in scope
310 | let resolve: (HTTPResponse) -> Void
311 | let reject: (Error) -> Void
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:321:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
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/PromiseQ/Fetch.swift:321:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:325:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:325:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:333:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
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/PromiseQ/Fetch.swift:333:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:392:46: error: cannot find type 'URLSessionTaskDelegate' in scope
390 | // MARK: - Upload
391 |
392 | private class SessionTaskDelegate: NSObject, URLSessionTaskDelegate {
| `- error: cannot find type 'URLSessionTaskDelegate' in scope
393 | let progress: Progress?
394 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:400:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Fetch.swift:400:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Monitor.swift:28:11: error: cannot find type 'DispatchSemaphore' in scope
26 | import Foundation
27 |
28 | extension DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
29 | static func Lock() -> DispatchSemaphore {
30 | return DispatchSemaphore(value: 0)
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:73:33: error: cannot find type 'DispatchSemaphore' in scope
71 | }
72 | }
73 | @Atomic private var semaphore: DispatchSemaphore?
| `- error: cannot find type 'DispatchSemaphore' in scope
74 | @Atomic var task: Asyncable?
75 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:51:31: error: cannot find type 'DispatchQueue' in scope
49 | }
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
| `- error: cannot find type 'DispatchQueue' in scope
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
53 | f()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:216:23: error: cannot find type 'DispatchWorkItem' in scope
214 |
215 | private let f: (@escaping (Result<T, Error>) -> Void) -> Void
216 | private let autoRun: DispatchWorkItem
| `- error: cannot find type 'DispatchWorkItem' in scope
217 | private let monitor: Monitor
218 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:254:23: error: cannot find type 'DispatchQueue' in scope
252 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
253 | @discardableResult
254 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> T)) {
| `- error: cannot find type 'DispatchQueue' in scope
255 | let monitor = Monitor()
256 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:295:23: error: cannot find type 'DispatchQueue' in scope
293 | /// - Returns: A new `Promise`
294 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
295 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> Promise<T>)) {
| `- error: cannot find type 'DispatchQueue' in scope
296 | let monitor = Monitor()
297 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:351:23: error: cannot find type 'DispatchQueue' in scope
349 | /// - SeeAlso: `Asyncable`
350 | @discardableResult
351 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
352 | f: @escaping (@escaping (T) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) {
353 | let monitor = Monitor()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:397:23: error: cannot find type 'DispatchQueue' in scope
395 | /// - Returns: A new `Promise`
396 | @discardableResult
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:426:31: error: cannot find type 'DispatchQueue' in scope
424 | /// - Returns: A new chained promise.
425 | @discardableResult
426 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> U)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
427 | autoRun.cancel()
428 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:476:31: error: cannot find type 'DispatchQueue' in scope
474 | /// - Returns: A new chained promise.
475 | @discardableResult
476 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> Promise<U>)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
477 | autoRun.cancel()
478 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:548:31: error: cannot find type 'DispatchQueue' in scope
546 | /// - SeeAlso: `Asyncable`
547 | @discardableResult
548 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
549 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) -> Promise<U> {
550 | autoRun.cancel()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:590:31: error: cannot find type 'DispatchQueue' in scope
588 | /// - Returns: A new chained promise.
589 | @discardableResult
590 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
591 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void) throws -> Void) -> Promise<U> {
592 | then(queue, timeout: timeout, retry: retry) { value, resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:616:31: error: cannot find type 'DispatchQueue' in scope
614 | /// - Returns: A new chained promise.
615 | @discardableResult
616 | public func `catch`(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((Error) throws -> Void)) -> Promise<Void> {
| `- error: cannot find type 'DispatchQueue' in scope
617 | autoRun.cancel()
618 | return Promise<Void>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:687:31: error: cannot find type 'DispatchQueue' in scope
685 | /// - Returns: A new chained promise.
686 | @discardableResult
687 | public func finally(_ queue: DispatchQueue = .global(), f: @escaping (() -> Void)) -> Promise<T> {
| `- error: cannot find type 'DispatchQueue' in scope
688 | autoRun.cancel()
689 | return Promise<T>(monitor) { callback in
[3/5] Compiling PromiseQ PromiseQ.swift
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:51:31: error: cannot find type 'DispatchQueue' in scope
49 | }
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
| `- error: cannot find type 'DispatchQueue' in scope
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
53 | f()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:216:23: error: cannot find type 'DispatchWorkItem' in scope
214 |
215 | private let f: (@escaping (Result<T, Error>) -> Void) -> Void
216 | private let autoRun: DispatchWorkItem
| `- error: cannot find type 'DispatchWorkItem' in scope
217 | private let monitor: Monitor
218 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:254:23: error: cannot find type 'DispatchQueue' in scope
252 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
253 | @discardableResult
254 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> T)) {
| `- error: cannot find type 'DispatchQueue' in scope
255 | let monitor = Monitor()
256 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:295:23: error: cannot find type 'DispatchQueue' in scope
293 | /// - Returns: A new `Promise`
294 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
295 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> Promise<T>)) {
| `- error: cannot find type 'DispatchQueue' in scope
296 | let monitor = Monitor()
297 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:351:23: error: cannot find type 'DispatchQueue' in scope
349 | /// - SeeAlso: `Asyncable`
350 | @discardableResult
351 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
352 | f: @escaping (@escaping (T) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) {
353 | let monitor = Monitor()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:397:23: error: cannot find type 'DispatchQueue' in scope
395 | /// - Returns: A new `Promise`
396 | @discardableResult
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:426:31: error: cannot find type 'DispatchQueue' in scope
424 | /// - Returns: A new chained promise.
425 | @discardableResult
426 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> U)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
427 | autoRun.cancel()
428 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:476:31: error: cannot find type 'DispatchQueue' in scope
474 | /// - Returns: A new chained promise.
475 | @discardableResult
476 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((T) throws -> Promise<U>)) -> Promise<U> {
| `- error: cannot find type 'DispatchQueue' in scope
477 | autoRun.cancel()
478 | return Promise<U>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:548:31: error: cannot find type 'DispatchQueue' in scope
546 | /// - SeeAlso: `Asyncable`
547 | @discardableResult
548 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
549 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) -> Promise<U> {
550 | autoRun.cancel()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:590:31: error: cannot find type 'DispatchQueue' in scope
588 | /// - Returns: A new chained promise.
589 | @discardableResult
590 | public func then<U>(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
591 | f: @escaping (T, @escaping (U) -> Void, @escaping (Error) -> Void) throws -> Void) -> Promise<U> {
592 | then(queue, timeout: timeout, retry: retry) { value, resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:616:31: error: cannot find type 'DispatchQueue' in scope
614 | /// - Returns: A new chained promise.
615 | @discardableResult
616 | public func `catch`(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping ((Error) throws -> Void)) -> Promise<Void> {
| `- error: cannot find type 'DispatchQueue' in scope
617 | autoRun.cancel()
618 | return Promise<Void>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:687:31: error: cannot find type 'DispatchQueue' in scope
685 | /// - Returns: A new chained promise.
686 | @discardableResult
687 | public func finally(_ queue: DispatchQueue = .global(), f: @escaping (() -> Void)) -> Promise<T> {
| `- error: cannot find type 'DispatchQueue' in scope
688 | autoRun.cancel()
689 | return Promise<T>(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:30:13: error: cannot find 'DispatchWorkItem' in scope
28 | private func setTimeout<T>(timeout: TimeInterval, pending: @escaping (Result<T, Error>) -> Void) {
29 | guard timeout > 0 else { return }
30 | let work = DispatchWorkItem {
| `- error: cannot find 'DispatchWorkItem' in scope
31 | pending(.failure(PromiseError.timedOut))
32 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:33:2: error: cannot find 'DispatchQueue' in scope
31 | pending(.failure(PromiseError.timedOut))
32 | }
33 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + timeout, execute: work)
| `- error: cannot find 'DispatchQueue' in scope
34 | }
35 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:33:29: error: cannot infer contextual base in reference to member 'userInitiated'
31 | pending(.failure(PromiseError.timedOut))
32 | }
33 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + timeout, execute: work)
| `- error: cannot infer contextual base in reference to member 'userInitiated'
34 | }
35 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:33:66: error: cannot call value of non-function type 'Date'
31 | pending(.failure(PromiseError.timedOut))
32 | }
33 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + timeout, execute: work)
| `- error: cannot call value of non-function type 'Date'
34 | }
35 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:52:36: error: cannot find '__dispatch_queue_get_label' in scope
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
| `- error: cannot find '__dispatch_queue_get_label' in scope
53 | f()
54 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:52:63: error: 'nil' requires a contextual type
50 |
51 | private func execute(_ queue: DispatchQueue, f: @escaping () -> Void) {
52 | if queue.label == String(cString: __dispatch_queue_get_label(nil)) {
| `- error: 'nil' requires a contextual type
53 | f()
54 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:85:13: error: cannot find 'DispatchSemaphore' in scope
83 |
84 | var r = count
85 | let lock = DispatchSemaphore.Lock()
| `- error: cannot find 'DispatchSemaphore' in scope
86 | repeat {
87 | guard monitor.wait() else { return }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:228:18: error: cannot find 'DispatchWorkItem' in scope
226 | self.monitor = monitor
227 |
228 | self.autoRun = DispatchWorkItem { f { _ in } }
| `- error: cannot find 'DispatchWorkItem' in scope
229 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.01, execute: self.autoRun)
230 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:229:3: error: cannot find 'DispatchQueue' in scope
227 |
228 | self.autoRun = DispatchWorkItem { f { _ in } }
229 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.01, execute: self.autoRun)
| `- error: cannot find 'DispatchQueue' in scope
230 | }
231 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:229:48: error: cannot call value of non-function type 'Date'
227 |
228 | self.autoRun = DispatchWorkItem { f { _ in } }
229 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.01, execute: self.autoRun)
| `- error: cannot call value of non-function type 'Date'
230 | }
231 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:399:12: error: extra arguments at positions #2, #3, #4 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
| `- error: extra arguments at positions #2, #3, #4 in call
400 | try f(resolve, reject)
401 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:399:18: error: missing argument for parameter 'f' in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
| `- error: missing argument for parameter 'f' in call
400 | try f(resolve, reject)
401 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:731:14: error: cannot find 'DispatchSemaphore' in scope
729 | var result: T?
730 | var error: Error?
731 | let lock = DispatchSemaphore.Lock()
| `- error: cannot find 'DispatchSemaphore' in scope
732 |
733 | self.then {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:780:20: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
778 | /// - Returns: A new resolved promise
779 | public static func resolve(_ value: T) -> Promise<T> {
780 | return Promise<T> { return value }
| `- error: missing argument for parameter #1 in call
781 | }
782 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:780:21: error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
778 | /// - Returns: A new resolved promise
779 | public static func resolve(_ value: T) -> Promise<T> {
780 | return Promise<T> { return value }
| `- error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
781 | }
782 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:780:30: error: cannot convert value of type 'T' to closure result type 'Void'
778 | /// - Returns: A new resolved promise
779 | public static func resolve(_ value: T) -> Promise<T> {
780 | return Promise<T> { return value }
| `- error: cannot convert value of type 'T' to closure result type 'Void'
781 | }
782 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:17: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: missing argument for parameter #1 in call
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:18: error: invalid conversion from throwing function of type '() throws -> T' to non-throwing function type '(@escaping (Result<T, any Error>) -> Void) -> Void'
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: invalid conversion from throwing function of type '() throws -> T' to non-throwing function type '(@escaping (Result<T, any Error>) -> Void) -> Void'
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:18: error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: contextual type for closure argument list expects 1 argument, which cannot be implicitly ignored
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:795:26: error: declared closure result 'T' is incompatible with contextual type 'Void'
793 | /// - Returns: A new rejected promise
794 | public static func reject(_ error: Error) -> Promise<T> {
795 | return Promise { () -> T in throw error }
| `- error: declared closure result 'T' is incompatible with contextual type 'Void'
796 | }
797 |
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:844:15: error: cannot find 'DispatchSemaphore' in scope
842 | public static func all(settled: Bool = false, _ promises:[Promise<T>]) -> Promise<Array<T>> {
843 | var results = [Int : T]()
844 | let mutex = DispatchSemaphore.Mutex()
| `- error: cannot find 'DispatchSemaphore' in scope
845 | promises.forEach { $0.autoRun.cancel() }
846 | let container = AsyncContainer(tasks: promises.map(\.monitor))
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:848:27: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
846 | let container = AsyncContainer(tasks: promises.map(\.monitor))
847 |
848 | return Promise<Array<T>> { resolve, reject, task in
| `- error: missing argument for parameter #1 in call
849 |
850 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:848:30: error: contextual closure type '(@escaping (Result<Array<T>, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
846 | let container = AsyncContainer(tasks: promises.map(\.monitor))
847 |
848 | return Promise<Array<T>> { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<Array<T>, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
849 |
850 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:851:13: error: cannot convert value of type '[T]' to expected argument type 'Result<Array<T>, any Error>'
849 |
850 | guard promises.count > 0 else {
851 | resolve([T]())
| `- error: cannot convert value of type '[T]' to expected argument type 'Result<Array<T>, any Error>'
852 | return
853 | }
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:922:17: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
920 | promises.forEach { $0.autoRun.cancel() }
921 | let container = AsyncContainer(tasks: promises.map(\.monitor))
922 | return Promise { resolve, reject, task in
| `- error: missing argument for parameter #1 in call
923 |
924 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:922:20: error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
920 | promises.forEach { $0.autoRun.cancel() }
921 | let container = AsyncContainer(tasks: promises.map(\.monitor))
922 | return Promise { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
923 |
924 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:991:15: error: cannot find 'DispatchSemaphore' in scope
989 | public static func any(_ promises: [Promise<T>]) -> Promise<T> {
990 | var errors = [Int : Error]()
991 | let mutex = DispatchSemaphore.Mutex()
| `- error: cannot find 'DispatchSemaphore' in scope
992 | promises.forEach { $0.autoRun.cancel() }
993 | let container = AsyncContainer(tasks: promises.map(\.monitor))
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:995:20: error: missing argument for parameter #1 in call
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
:
993 | let container = AsyncContainer(tasks: promises.map(\.monitor))
994 |
995 | return Promise<T> { resolve, reject, task in
| `- error: missing argument for parameter #1 in call
996 |
997 | guard promises.count > 0 else {
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:995:23: error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
993 | let container = AsyncContainer(tasks: promises.map(\.monitor))
994 |
995 | return Promise<T> { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<T, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
996 |
997 | guard promises.count > 0 else {
[4/5] Compiling PromiseQ Monitor.swift
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:28:11: error: cannot find type 'DispatchSemaphore' in scope
26 | import Foundation
27 |
28 | extension DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
29 | static func Lock() -> DispatchSemaphore {
30 | return DispatchSemaphore(value: 0)
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:73:33: error: cannot find type 'DispatchSemaphore' in scope
71 | }
72 | }
73 | @Atomic private var semaphore: DispatchSemaphore?
| `- error: cannot find type 'DispatchSemaphore' in scope
74 | @Atomic var task: Asyncable?
75 |
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:39:2: error: cannot find 'objc_sync_enter' in scope
37 |
38 | func synchronized<T : AnyObject, U>(_ obj: T, closure: () -> U) -> U {
39 | objc_sync_enter(obj)
| `- error: cannot find 'objc_sync_enter' in scope
40 | defer {
41 | objc_sync_exit(obj)
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:41:3: error: cannot find 'objc_sync_exit' in scope
39 | objc_sync_enter(obj)
40 | defer {
41 | objc_sync_exit(obj)
| `- error: cannot find 'objc_sync_exit' in scope
42 | }
43 | return closure()
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:92:17: error: cannot infer contextual base in reference to member 'Lock'
90 |
91 | if semaphore == nil {
92 | semaphore = .Lock()
| `- error: cannot infer contextual base in reference to member 'Lock'
93 | }
94 | }
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:29:24: error: cannot find type 'DispatchSemaphore' in scope
27 |
28 | extension DispatchSemaphore {
29 | static func Lock() -> DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
30 | return DispatchSemaphore(value: 0)
31 | }
/host/spi-builder-workspace/Sources/PromiseQ/Monitor.swift:33:25: error: cannot find type 'DispatchSemaphore' in scope
31 | }
32 |
33 | static func Mutex() -> DispatchSemaphore {
| `- error: cannot find type 'DispatchSemaphore' in scope
34 | return DispatchSemaphore(value: 1)
35 | }
[5/5] Compiling PromiseQ Fetch.swift
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:60:1: warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
58 |
59 | /// String errors
60 | extension String : LocalizedError {
| |- warning: extension declares a conformance of imported type 'String' to imported protocols 'LocalizedError', 'Error'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
61 | /// A localized message describing what error occurred.
62 | public var errorDescription: String? { return self }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:65:1: error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
63 | }
64 |
65 | extension URLSessionDataTask: Asyncable {
| `- error: non-nominal type 'URLSessionDataTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:68:1: error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
66 | }
67 |
68 | extension URLSessionDownloadTask: Asyncable {
| `- error: non-nominal type 'URLSessionDownloadTask' (aka 'AnyObject') cannot be extended
69 | }
70 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:96:23: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
94 | public class HTTPResponse {
95 | /// The metadata associated with the response to an HTTP protocol URL load request.
96 | public let response: HTTPURLResponse
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
97 |
98 | private let result: ResponseResult
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:142:29: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
140 | }
141 |
142 | fileprivate init(response: HTTPURLResponse, result: ResponseResult) {
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
143 | self.response = response
144 | self.result = result
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:160:8: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
158 | }
159 |
160 | public extension URLSession {
| `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
161 |
162 | /// Creates a promise that retrieves the contents of a HTTP request object.
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:307:38: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
305 | /// - totalBytes: The expected length of the data.
306 | ///
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
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/PromiseQ/Fetch.swift:309:50: error: cannot find type 'URLSessionDownloadDelegate' in scope
307 | public typealias Progress = (_ task: URLSessionTask, _ bytes: Int64, _ totalBytes: Int64) -> Void
308 |
309 | private class SessionDownloadDelegate: NSObject, URLSessionDownloadDelegate {
| `- error: cannot find type 'URLSessionDownloadDelegate' in scope
310 | let resolve: (HTTPResponse) -> Void
311 | let reject: (Error) -> Void
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:321:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
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/PromiseQ/Fetch.swift:321:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
319 | }
320 |
321 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
322 | progress?(downloadTask, totalBytesWritten, totalBytesExpectedToWrite)
323 | }
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:325:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:325:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
323 | }
324 |
325 | 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.
326 | session.invalidateAndCancel()
327 |
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/PromiseQ/Fetch.swift:333:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
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/PromiseQ/Fetch.swift:333:55: error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
331 | }
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
| `- error: 'URLSessionDownloadTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
334 | session.invalidateAndCancel()
335 |
Foundation.URLSessionDownloadTask:2:18: note: 'URLSessionDownloadTask' 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 URLSessionDownloadTask = AnyObject
| `- note: 'URLSessionDownloadTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:392:46: error: cannot find type 'URLSessionTaskDelegate' in scope
390 | // MARK: - Upload
391 |
392 | private class SessionTaskDelegate: NSObject, URLSessionTaskDelegate {
| `- error: cannot find type 'URLSessionTaskDelegate' in scope
393 | let progress: Progress?
394 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:400:29: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Fetch.swift:400:47: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
398 | }
399 |
400 | func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
| `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
401 | progress?(task, totalBytesSent, totalBytesExpectedToSend)
402 | }
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/PromiseQ/Fetch.swift:102:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
100 | /// HTTP status code is 200-299.
101 | public var ok: Bool {
102 | (200...299).contains(response.statusCode)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
103 | }
104 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:107:54: error: type 'HTTPURLResponse' (aka 'AnyObject') has no member 'localizedString'
105 | /// Returns a localized string corresponding to a specified HTTP status code.
106 | public var statusCodeDescription: String {
107 | "HTTP \(response.statusCode) - " + HTTPURLResponse.localizedString(forStatusCode: response.statusCode)
| `- error: type 'HTTPURLResponse' (aka 'AnyObject') has no member 'localizedString'
108 | }
109 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:107:94: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
105 | /// Returns a localized string corresponding to a specified HTTP status code.
106 | public var statusCodeDescription: String {
107 | "HTTP \(response.statusCode) - " + HTTPURLResponse.localizedString(forStatusCode: response.statusCode)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
108 | }
109 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:107:20: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
105 | /// Returns a localized string corresponding to a specified HTTP status code.
106 | public var statusCodeDescription: String {
107 | "HTTP \(response.statusCode) - " + HTTPURLResponse.localizedString(forStatusCode: response.statusCode)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
108 | }
109 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:149:4: error: cannot find 'DispatchQueue' in scope
147 | private func clean() {
148 | if case let .location(url) = result {
149 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.1) {
| `- error: cannot find 'DispatchQueue' in scope
150 | try? FileManager.default.removeItem(at: url)
151 | }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:149:49: error: cannot call value of non-function type 'Date'
147 | private func clean() {
148 | if case let .location(url) = result {
149 | DispatchQueue.global().asyncAfter(deadline: .now() + 0.1) {
| `- error: cannot call value of non-function type 'Date'
150 | try? FileManager.default.removeItem(at: url)
151 | }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:295:13: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
293 | ///
294 | public func fetch(_ path: String, method: HTTPMethod = .GET, headers: [String : String]? = nil, body: Data? = nil, retry: Int = 0) -> Promise<HTTPResponse> {
295 | URLSession.shared.fetch(path, method: method, headers: headers, body: body, retry: retry)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
296 | }
297 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:326:11: error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
324 |
325 | func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
326 | session.invalidateAndCancel()
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
327 |
328 | if error != nil {
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:334:11: error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
332 |
333 | func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL) {
334 | session.invalidateAndCancel()
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
335 |
336 | // Rename
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:344:54: error: value of type 'URLSessionDownloadTask' (aka 'AnyObject') has no member 'response'
342 | url = (url as NSURL).deletingLastPathComponent!.appendingPathComponent(name)
343 |
344 | let response = HTTPResponse(response: downloadTask.response as! HTTPURLResponse, result: .location(url))
| `- error: value of type 'URLSessionDownloadTask' (aka 'AnyObject') has no member 'response'
345 | resolve(response)
346 | }
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:375:18: error: cannot find 'URLRequest' in scope
373 |
374 | case let .success(url):
375 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
376 | request.httpMethod = method.rawValue
377 | request.allHTTPHeaderFields = headers
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:254:23: error: cannot find type 'DispatchQueue' in scope
252 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
253 | @discardableResult
254 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> T)) {
| `- error: cannot find type 'DispatchQueue' in scope
255 | let monitor = Monitor()
256 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:295:23: error: cannot find type 'DispatchQueue' in scope
293 | /// - Returns: A new `Promise`
294 | /// - SeeAlso: `Promise.resolve()`, `Promise.reject()`
295 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0, f: @escaping (() throws -> Promise<T>)) {
| `- error: cannot find type 'DispatchQueue' in scope
296 | let monitor = Monitor()
297 | self.init(monitor) { callback in
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:351:23: error: cannot find type 'DispatchQueue' in scope
349 | /// - SeeAlso: `Asyncable`
350 | @discardableResult
351 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
352 | f: @escaping (@escaping (T) -> Void, @escaping (Error) -> Void, inout Asyncable?) throws -> Void) {
353 | let monitor = Monitor()
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:397:23: error: cannot find type 'DispatchQueue' in scope
395 | /// - Returns: A new `Promise`
396 | @discardableResult
397 | public init(_ queue: DispatchQueue = .global(), timeout: TimeInterval = 0, retry: Int = 0,
| `- error: cannot find type 'DispatchQueue' in scope
398 | f: @escaping ( @escaping (T) -> Void, @escaping (Error) -> Void) throws -> Void) {
399 | self.init(queue, timeout: timeout, retry: retry) { resolve, reject, task in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:11: error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:224:10: note: 'init(_:f:)' declared here
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:32: error: extraneous argument label 'retry:' in call
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: extraneous argument label 'retry:' in call
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:40: error: cannot convert value of type 'Int' to expected argument type 'Monitor'
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: cannot convert value of type 'Int' to expected argument type 'Monitor'
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:380:49: error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
378 | request.httpBody = body
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:381:53: error: cannot convert value of type '(Result<HTTPResponse, any Error>) -> Void' to expected argument type '(HTTPResponse) -> Void'
379 |
380 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
381 | let delegate = SessionDownloadDelegate(resolve: resolve, reject: reject, progress: progress)
| `- error: cannot convert value of type '(Result<HTTPResponse, any Error>) -> Void' to expected argument type '(HTTPResponse) -> Void'
382 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
383 |
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:412:18: error: cannot find 'URLRequest' in scope
410 |
411 | case let .success(url):
412 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
413 | request.httpMethod = method.rawValue
414 | request.allHTTPHeaderFields = headers
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:11: error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: 'Promise<T>' initializer is inaccessible due to 'private' protection level
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/PromiseQ.swift:224:10: note: 'init(_:f:)' declared here
222 | }
223 |
224 | private init(_ monitor: Monitor, f: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) {
| `- note: 'init(_:f:)' declared here
225 | self.f = f
226 | self.monitor = monitor
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:32: error: extraneous argument label 'retry:' in call
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: extraneous argument label 'retry:' in call
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:40: error: cannot convert value of type 'Int' to expected argument type 'Monitor'
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: cannot convert value of type 'Int' to expected argument type 'Monitor'
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:416:49: error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
414 | request.allHTTPHeaderFields = headers
415 |
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
| `- error: contextual closure type '(@escaping (Result<HTTPResponse, any Error>) -> Void) -> Void' expects 1 argument, but 3 were used in closure body
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:418:30: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
| `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
419 |
420 | let completion = { (data: Data?, response: URLResponse?, error: Error?) in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:418:51: error: cannot infer contextual base in reference to member 'default'
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
| `- error: cannot infer contextual base in reference to member 'default'
419 |
420 | let completion = { (data: Data?, response: URLResponse?, error: Error?) in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:418:95: error: 'nil' requires a contextual type
416 | return Promise<HTTPResponse>(retry: retry) { resolve, reject, task in
417 | let delegate = SessionTaskDelegate(progress: progress)
418 | let session = URLSession.init(configuration: .default, delegate: delegate, delegateQueue: nil)
| `- error: 'nil' requires a contextual type
419 |
420 | let completion = { (data: Data?, response: URLResponse?, error: Error?) in
/host/spi-builder-workspace/Sources/PromiseQ/Fetch.swift:184:24: error: cannot find type 'URLRequest' in scope
182 | /// - SeeAlso: `HTTPResponse`
183 | ///
184 | func fetch(_ request: URLRequest, retry: Int = 0) -> Promise<HTTPResponse> {
| `- error: cannot find type 'URLRequest' in scope
185 | guard let url = request.url?.absoluteString, isHTTP(url) else {
186 | return Promise<HTTPResponse>.reject(ErrorNotHTTP)
BUILD FAILURE 6.1 wasm