Build Information
Failed to build UPnPCast, reference main (a91355), with Swift 6.2 for Linux on 3 Oct 2026 06:36:36 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344843-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/CreatureSurvive/UPnPCast.git
Reference: main
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/CreatureSurvive/UPnPCast
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at a91355a README: minimum toolchain is Swift 6.1 (Xcode 16.4), as tested in CI
Cloned https://github.com/CreatureSurvive/UPnPCast.git
Revision (git rev-parse @):
a91355ad69975496e7e86518c63664351bee4986
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/CreatureSurvive/UPnPCast.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.2
Building package at path: $PWD
https://github.com/CreatureSurvive/UPnPCast.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344843-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:813c8e8a77634154d7d247705cb89167ff1c866446abbe321f542129dc4cf5a7
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.2-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/8] Compiling UPnPCast UPnPDevice.swift
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:94:53: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
92 |
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
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/UPnPCast/UPnPDevice.swift:94:67: error: value of type '_' expected to be instance of class or class-constrained type
92 |
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
| `- error: value of type '_' expected to be instance of class or class-constrained type
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:94:67: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
92 |
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:220:45: error: cannot find type 'XMLParserDelegate' in scope
218 | }
219 |
220 | private final class Delegate: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
221 | var root: Element?
222 | var stack: [Element] = []
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:224:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
222 | var stack: [Element] = []
223 |
224 | func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName: String?, attributes: [String: String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
225 | let local = elementName.split(separator: ":").last.map(String.init) ?? elementName
226 | let element = Element(name: local, attributes: attributes)
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:231:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
229 | }
230 |
231 | func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
232 | _ = stack.popLast()
233 | }
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:235:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
233 | }
234 |
235 | func parser(_ parser: XMLParser, foundCharacters string: String) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
236 | stack.last?.textParts.append(string)
237 | }
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:239:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
237 | }
238 |
239 | func parser(_ parser: XMLParser, foundCDATA CDATABlock: Data) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
240 | stack.last?.textParts.append(String(decoding: CDATABlock, as: UTF8.self))
241 | }
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:95:23: error: cannot find 'URLRequest' in scope
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
95 | var request = URLRequest(url: url, timeoutInterval: 10)
| `- error: cannot find 'URLRequest' in scope
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
97 | let (data, response) = try await session.data(for: request)
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:97:50: error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
97 | let (data, response) = try await session.data(for: request)
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
98 | if let http = response as? HTTPURLResponse, !(200...299).contains(http.statusCode) {
99 | throw UPnPError.httpStatus(http.statusCode)
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:210:22: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
208 | static func parse(_ data: Data) throws -> Element {
209 | let delegate = Delegate()
210 | let parser = XMLParser(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
211 | parser.shouldProcessNamespaces = false
212 | parser.shouldResolveExternalEntities = false
[4/8] Compiling UPnPCast SSDP.swift
/host/spi-builder-workspace/Sources/UPnPCast/SSDP.swift:104:34: error: cannot convert value of type '__socket_type' to expected argument type 'Int32'
102 |
103 | private static func runSearch(target: String, duration: TimeInterval, cancelled: CancellationFlag, continuation: AsyncThrowingStream<SSDPResponse, any Error>.Continuation) throws {
104 | let fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)
| `- error: cannot convert value of type '__socket_type' to expected argument type 'Int32'
105 | guard fd >= 0 else { throw UPnPError.network("socket() failed: \(errnoDescription())") }
106 | defer { close(fd) }
/host/spi-builder-workspace/Sources/UPnPCast/SSDP.swift:104:46: error: cannot convert value of type 'Int' to expected argument type 'Int32'
102 |
103 | private static func runSearch(target: String, duration: TimeInterval, cancelled: CancellationFlag, continuation: AsyncThrowingStream<SSDPResponse, any Error>.Continuation) throws {
104 | let fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)
| `- error: cannot convert value of type 'Int' to expected argument type 'Int32'
105 | guard fd >= 0 else { throw UPnPError.network("socket() failed: \(errnoDescription())") }
106 | defer { close(fd) }
/host/spi-builder-workspace/Sources/UPnPCast/SSDP.swift:109:24: error: cannot convert value of type 'Int' to expected argument type 'Int32'
107 |
108 | var ttl: UInt8 = 2
109 | setsockopt(fd, IPPROTO_IP, IP_MULTICAST_TTL, &ttl, socklen_t(MemoryLayout<UInt8>.size))
| `- error: cannot convert value of type 'Int' to expected argument type 'Int32'
110 | var reuse: Int32 = 1
111 | setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &reuse, socklen_t(MemoryLayout<Int32>.size))
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/8] Emitting module UPnPCast
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:8:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
9 | self.session = session
10 | self.timeout = timeout
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:8:40: error: value of type '_' expected to be instance of class or class-constrained type
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
9 | self.session = session
10 | self.timeout = timeout
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:81:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
79 |
80 | /// Discovers media renderers on the local network.
81 | public static func discover(duration: Duration = .seconds(3), session: URLSession = .shared) async throws -> [MediaRenderer] {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
82 | let responses = try await SSDP.discover(target: SSDP.SearchTarget.mediaRenderer, duration: duration)
83 | let locations = Set(responses.map(\.location))
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/UPnPCast/MediaRenderer.swift:81:90: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
79 |
80 | /// Discovers media renderers on the local network.
81 | public static func discover(duration: Duration = .seconds(3), session: URLSession = .shared) async throws -> [MediaRenderer] {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
82 | let responses = try await SSDP.discover(target: SSDP.SearchTarget.mediaRenderer, duration: duration)
83 | let locations = Set(responses.map(\.location))
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:81:90: error: value of type '_' expected to be instance of class or class-constrained type
79 |
80 | /// Discovers media renderers on the local network.
81 | public static func discover(duration: Duration = .seconds(3), session: URLSession = .shared) async throws -> [MediaRenderer] {
| `- error: value of type '_' expected to be instance of class or class-constrained type
82 | let responses = try await SSDP.discover(target: SSDP.SearchTarget.mediaRenderer, duration: duration)
83 | let locations = Set(responses.map(\.location))
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:100:62: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
98 |
99 | /// Connects to a renderer whose description URL is known.
100 | public static func connect(descriptionURL: URL, session: URLSession = .shared) async throws -> MediaRenderer {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
101 | try MediaRenderer(device: try await UPnPDevice.load(from: descriptionURL, session: session), soap: SOAPClient(session: session))
102 | }
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/UPnPCast/MediaRenderer.swift:100:76: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
98 |
99 | /// Connects to a renderer whose description URL is known.
100 | public static func connect(descriptionURL: URL, session: URLSession = .shared) async throws -> MediaRenderer {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
101 | try MediaRenderer(device: try await UPnPDevice.load(from: descriptionURL, session: session), soap: SOAPClient(session: session))
102 | }
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:100:76: error: value of type '_' expected to be instance of class or class-constrained type
98 |
99 | /// Connects to a renderer whose description URL is known.
100 | public static func connect(descriptionURL: URL, session: URLSession = .shared) async throws -> MediaRenderer {
| `- error: value of type '_' expected to be instance of class or class-constrained type
101 | try MediaRenderer(device: try await UPnPDevice.load(from: descriptionURL, session: session), soap: SOAPClient(session: session))
102 | }
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:5:25: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | /// Invokes UPnP actions over SOAP.
4 | public struct SOAPClient: Sendable {
5 | public var session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
6 | public var timeout: TimeInterval
7 |
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/UPnPCast/SOAP.swift:8:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
9 | self.session = session
10 | self.timeout = timeout
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/UPnPCast/SOAP.swift:5:16: error: stored property 'session' of 'Sendable'-conforming struct 'SOAPClient' has non-Sendable type 'URLSession' (aka 'AnyObject')
3 | /// Invokes UPnP actions over SOAP.
4 | public struct SOAPClient: Sendable {
5 | public var session: URLSession
| `- error: stored property 'session' of 'Sendable'-conforming struct 'SOAPClient' has non-Sendable type 'URLSession' (aka 'AnyObject')
6 | public var timeout: TimeInterval
7 |
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:94:53: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
92 |
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
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/UPnPCast/UPnPDevice.swift:94:67: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
92 |
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:94:67: error: value of type '_' expected to be instance of class or class-constrained type
92 |
93 | /// Downloads and parses a device description.
94 | public static func load(from url: URL, session: URLSession = .shared) async throws -> UPnPDevice {
| `- error: value of type '_' expected to be instance of class or class-constrained type
95 | var request = URLRequest(url: url, timeoutInterval: 10)
96 | request.setValue("UPnPCast/1.0 UPnP/1.1", forHTTPHeaderField: "User-Agent")
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:220:45: error: cannot find type 'XMLParserDelegate' in scope
218 | }
219 |
220 | private final class Delegate: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
221 | var root: Element?
222 | var stack: [Element] = []
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:224:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
222 | var stack: [Element] = []
223 |
224 | func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName: String?, attributes: [String: String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
225 | let local = elementName.split(separator: ":").last.map(String.init) ?? elementName
226 | let element = Element(name: local, attributes: attributes)
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:231:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
229 | }
230 |
231 | func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
232 | _ = stack.popLast()
233 | }
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:235:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
233 | }
234 |
235 | func parser(_ parser: XMLParser, foundCharacters string: String) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
236 | stack.last?.textParts.append(string)
237 | }
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/UPnPDevice.swift:239:31: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
237 | }
238 |
239 | func parser(_ parser: XMLParser, foundCDATA CDATABlock: Data) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
240 | stack.last?.textParts.append(String(decoding: CDATABlock, as: UTF8.self))
241 | }
Foundation.XMLParser:2:18: note: 'XMLParser' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationXML module. Import that module to use it.")
2 | public typealias XMLParser = AnyObject
| `- note: 'XMLParser' has been explicitly marked unavailable here
[6/8] Compiling UPnPCast MediaRenderer.swift
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:8:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
9 | self.session = session
10 | self.timeout = timeout
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:8:40: error: value of type '_' expected to be instance of class or class-constrained type
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
9 | self.session = session
10 | self.timeout = timeout
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:81:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
79 |
80 | /// Discovers media renderers on the local network.
81 | public static func discover(duration: Duration = .seconds(3), session: URLSession = .shared) async throws -> [MediaRenderer] {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
82 | let responses = try await SSDP.discover(target: SSDP.SearchTarget.mediaRenderer, duration: duration)
83 | let locations = Set(responses.map(\.location))
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/UPnPCast/MediaRenderer.swift:81:90: error: value of type '_' expected to be instance of class or class-constrained type
79 |
80 | /// Discovers media renderers on the local network.
81 | public static func discover(duration: Duration = .seconds(3), session: URLSession = .shared) async throws -> [MediaRenderer] {
| `- error: value of type '_' expected to be instance of class or class-constrained type
82 | let responses = try await SSDP.discover(target: SSDP.SearchTarget.mediaRenderer, duration: duration)
83 | let locations = Set(responses.map(\.location))
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:81:90: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
79 |
80 | /// Discovers media renderers on the local network.
81 | public static func discover(duration: Duration = .seconds(3), session: URLSession = .shared) async throws -> [MediaRenderer] {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
82 | let responses = try await SSDP.discover(target: SSDP.SearchTarget.mediaRenderer, duration: duration)
83 | let locations = Set(responses.map(\.location))
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:100:62: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
98 |
99 | /// Connects to a renderer whose description URL is known.
100 | public static func connect(descriptionURL: URL, session: URLSession = .shared) async throws -> MediaRenderer {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
101 | try MediaRenderer(device: try await UPnPDevice.load(from: descriptionURL, session: session), soap: SOAPClient(session: session))
102 | }
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/UPnPCast/MediaRenderer.swift:100:76: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
98 |
99 | /// Connects to a renderer whose description URL is known.
100 | public static func connect(descriptionURL: URL, session: URLSession = .shared) async throws -> MediaRenderer {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
101 | try MediaRenderer(device: try await UPnPDevice.load(from: descriptionURL, session: session), soap: SOAPClient(session: session))
102 | }
/host/spi-builder-workspace/Sources/UPnPCast/MediaRenderer.swift:100:76: error: value of type '_' expected to be instance of class or class-constrained type
98 |
99 | /// Connects to a renderer whose description URL is known.
100 | public static func connect(descriptionURL: URL, session: URLSession = .shared) async throws -> MediaRenderer {
| `- error: value of type '_' expected to be instance of class or class-constrained type
101 | try MediaRenderer(device: try await UPnPDevice.load(from: descriptionURL, session: session), soap: SOAPClient(session: session))
102 | }
[7/8] Compiling UPnPCast DIDL.swift
[8/8] Compiling UPnPCast SOAP.swift
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:5:25: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | /// Invokes UPnP actions over SOAP.
4 | public struct SOAPClient: Sendable {
5 | public var session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
6 | public var timeout: TimeInterval
7 |
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/UPnPCast/SOAP.swift:8:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
9 | self.session = session
10 | self.timeout = timeout
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/UPnPCast/SOAP.swift:8:40: error: value of type '_' expected to be instance of class or class-constrained type
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
9 | self.session = session
10 | self.timeout = timeout
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:8:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
6 | public var timeout: TimeInterval
7 |
8 | public init(session: URLSession = .shared, timeout: TimeInterval = 10) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
9 | self.session = session
10 | self.timeout = timeout
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:5:16: error: stored property 'session' of 'Sendable'-conforming struct 'SOAPClient' has non-Sendable type 'URLSession' (aka 'AnyObject')
3 | /// Invokes UPnP actions over SOAP.
4 | public struct SOAPClient: Sendable {
5 | public var session: URLSession
| `- error: stored property 'session' of 'Sendable'-conforming struct 'SOAPClient' has non-Sendable type 'URLSession' (aka 'AnyObject')
6 | public var timeout: TimeInterval
7 |
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:20:23: error: cannot find 'URLRequest' in scope
18 |
19 | public func invoke(_ action: String, on service: UPnPService, orderedArguments: [(String, String)]) async throws -> [String: String] {
20 | var request = URLRequest(url: service.controlURL, timeoutInterval: timeout)
| `- error: cannot find 'URLRequest' in scope
21 | request.httpMethod = "POST"
22 | request.setValue("text/xml; charset=\"utf-8\"", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:28:23: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
26 |
27 | let data: Data
28 | let response: URLResponse
| `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
29 | do {
30 | (data, response) = try await session.data(for: request)
Foundation.URLResponse:2:18: note: 'URLResponse' 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 URLResponse = AnyObject
| `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:30:50: error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
28 | let response: URLResponse
29 | do {
30 | (data, response) = try await session.data(for: request)
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
31 | } catch {
32 | throw UPnPError.network(error.localizedDescription)
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:34:32: warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
32 | throw UPnPError.network(error.localizedDescription)
33 | }
34 | let status = (response as? HTTPURLResponse)?.statusCode ?? 200
| `- warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
35 | if status == 500, let fault = Self.fault(in: data) { throw fault }
36 | guard (200...299).contains(status) else { throw UPnPError.httpStatus(status) }
/host/spi-builder-workspace/Sources/UPnPCast/SOAP.swift:34:54: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
32 | throw UPnPError.network(error.localizedDescription)
33 | }
34 | let status = (response as? HTTPURLResponse)?.statusCode ?? 200
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
35 | if status == 500, let fault = Self.fault(in: data) { throw fault }
36 | guard (200...299).contains(status) else { throw UPnPError.httpStatus(status) }
BUILD FAILURE 6.2 linux