Build Information
Failed to build AvWeather, reference master (1de683), with Swift 6.1 for Android on 27 May 2025 06:58:06 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bmonty/AvWeather.git
Reference: master
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/bmonty/AvWeather
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 1de6833 Support for TAF, async/await, and example application. (#6)
Cloned https://github.com/bmonty/AvWeather.git
Revision (git rev-parse @):
1de68338b6d122c2cf707bbe3398ecbb58fa7f1e
SUCCESS checkout https://github.com/bmonty/AvWeather.git at master
========================================
Build
========================================
Selected platform: android
Swift version: 6.1
Building package at path: $PWD
https://github.com/bmonty/AvWeather.git
https://github.com/bmonty/AvWeather.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "AvWeather",
"name" : "AvWeather",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "AvWeather",
"targets" : [
"AvWeather"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "AvWeatherTests",
"module_type" : "SwiftTarget",
"name" : "AvWeatherTests",
"path" : "Tests/AvWeatherTests",
"sources" : [
"MetarTests.swift",
"SigmetTests.swift",
"TAFTests.swift",
"URLProtocolAvWeatherMock.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"AvWeather"
],
"type" : "test"
},
{
"c99name" : "AvWeather",
"module_type" : "SwiftTarget",
"name" : "AvWeather",
"path" : "Sources/AvWeather",
"product_memberships" : [
"AvWeather"
],
"sources" : [
"AWCClient.swift",
"Models/AvWeatherError.swift",
"Models/Metar.swift",
"Models/Sigmet.swift",
"Models/TAF.swift",
"Requests/AWCRequest.swift",
"Requests/MetarRequest.swift",
"Requests/SigmetRequest.swift",
"Requests/TAFRequest.swift"
],
"type" : "library"
}
],
"tools_version" : "5.1"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/11] Compiling AvWeather Sigmet.swift
[4/12] Compiling AvWeather SigmetRequest.swift
[5/12] Compiling AvWeather AWCRequest.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[6/12] Compiling AvWeather TAF.swift
[7/12] Compiling AvWeather Metar.swift
[8/12] Emitting module AvWeather
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 | private let awcHostUrlString = "https://aviationweather.gov"
19 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 | public init(session: URLSession = .shared) {
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/AvWeather/AWCClient.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 | self.session = session
23 | }
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/AvWeather/AWCClient.swift:21:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
22 | self.session = session
23 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:69:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
67 | }
68 |
69 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
70 | switch elementName {
71 | case "data":
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/AvWeather/Requests/MetarRequest.swift:114:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
112 | }
113 |
114 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
115 | // found end of the METAR section, so save the data
116 | if elementName == "METAR" {
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/AvWeather/Requests/MetarRequest.swift:349:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
347 |
348 | // get data from an element
349 | public 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.
350 | buffer += string
351 | }
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/AvWeather/Requests/MetarRequest.swift:11:38: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class MetarRequest: NSObject, XMLParserDelegate, ADDSRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [Metar]
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:71:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
69 | }
70 |
71 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
72 |
73 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:139:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
137 | }
138 |
139 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
140 |
141 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:387:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
385 |
386 | // get data from an element
387 | public 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.
388 | buffer += string
389 | }
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/AvWeather/Requests/TAFRequest.swift:11:36: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class TAFRequest: NSObject, XMLParserDelegate, AWCRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [TAF]
[9/12] Compiling AvWeather AWCClient.swift
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 | private let awcHostUrlString = "https://aviationweather.gov"
19 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 | public init(session: URLSession = .shared) {
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/AvWeather/AWCClient.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 | self.session = session
23 | }
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/AvWeather/AWCClient.swift:21:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
22 | self.session = session
23 | }
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:42:28: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
40 | public func send<T: AWCRequest>(_ request: T,
41 | completion: @escaping AWCClientCallback<T.Response>) {
42 | let task = session.dataTask(with: getUrl(for: request)) { data, response, error in
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
43 | guard let httpResponse = response as? HTTPURLResponse else {
44 | completion(.failure(AvWeatherError.generic(message: "Can't get HTTP response info.")))
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:48:51: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
46 | }
47 |
48 | if !(200...299).contains(httpResponse.statusCode) {
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
49 | completion(.failure(AvWeatherError.server(message: "Got status code \(httpResponse.statusCode) from server.")))
50 | return
[10/12] Compiling AvWeather AvWeatherError.swift
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 | private let awcHostUrlString = "https://aviationweather.gov"
19 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 | public init(session: URLSession = .shared) {
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/AvWeather/AWCClient.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 | self.session = session
23 | }
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/AvWeather/AWCClient.swift:21:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
22 | self.session = session
23 | }
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:42:28: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
40 | public func send<T: AWCRequest>(_ request: T,
41 | completion: @escaping AWCClientCallback<T.Response>) {
42 | let task = session.dataTask(with: getUrl(for: request)) { data, response, error in
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
43 | guard let httpResponse = response as? HTTPURLResponse else {
44 | completion(.failure(AvWeatherError.generic(message: "Can't get HTTP response info.")))
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:48:51: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
46 | }
47 |
48 | if !(200...299).contains(httpResponse.statusCode) {
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
49 | completion(.failure(AvWeatherError.server(message: "Got status code \(httpResponse.statusCode) from server.")))
50 | return
[11/12] Compiling AvWeather MetarRequest.swift
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:69:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
67 | }
68 |
69 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
70 | switch elementName {
71 | case "data":
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/AvWeather/Requests/MetarRequest.swift:114:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
112 | }
113 |
114 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
115 | // found end of the METAR section, so save the data
116 | if elementName == "METAR" {
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/AvWeather/Requests/MetarRequest.swift:349:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
347 |
348 | // get data from an element
349 | public 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.
350 | buffer += string
351 | }
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/AvWeather/Requests/MetarRequest.swift:11:38: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class MetarRequest: NSObject, XMLParserDelegate, ADDSRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [Metar]
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:55:35: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
53 | public func decode(with data: Data) throws -> [Metar] {
54 | // parse data from ADDS and create an array of Metar structs
55 | let xmlParser = XMLParser.init(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
56 | xmlParser.delegate = self
57 | if !xmlParser.parse() {
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:75:30: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
73 | let count = Int(strCount) else {
74 | parsingErrorMessage = "Failed to parse METAR XML."
75 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
76 | return
77 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:82:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
80 | guard count > 0 else {
81 | parsingErrorMessage = "Invalid station string."
82 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
83 | return
84 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:126:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
124 | if !buffer.isEmpty {
125 | parsingErrorMessage = buffer
126 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
127 | return
128 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:146:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
144 | } else {
145 | parsingErrorMessage = "Failed to parse date from METAR XML."
146 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
147 | return
148 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:153:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
151 | guard let value = Double(buffer) else {
152 | parsingErrorMessage = "Failed to parse latitude."
153 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
154 | return
155 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:161:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
159 | guard let value = Double(buffer) else {
160 | parsingErrorMessage = "Failed to parse longitude."
161 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
162 | return
163 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:169:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
167 | guard let value = Double(buffer) else {
168 | parsingErrorMessage = "Failed to parse temperature."
169 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
170 | return
171 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:177:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
175 | guard let value = Double(buffer) else {
176 | parsingErrorMessage = "Failed to parse dewpoint."
177 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
178 | return
179 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:185:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
183 | guard let value = Int(buffer) else {
184 | parsingErrorMessage = "Failed to parse wind direction."
185 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
186 | return
187 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:193:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
191 | guard let value = Int(buffer) else {
192 | parsingErrorMessage = "Failed to parse wind speed."
193 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
194 | return
195 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:201:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
199 | guard let value = Int(buffer) else {
200 | parsingErrorMessage = "Failed to parse wind gust."
201 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
202 | return
203 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:209:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
207 | guard let value = Double(buffer) else {
208 | parsingErrorMessage = "Failed to parse visbility."
209 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
210 | return
211 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:217:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
215 | guard let value = Double(buffer) else {
216 | parsingErrorMessage = "Failed to parse altimeter setting."
217 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
218 | return
219 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:225:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
223 | guard let value = Double(buffer) else {
224 | parsingErrorMessage = "Failed to parse sea level pressure."
225 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
226 | return
227 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:233:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
231 | guard let flightCategory = Metar.FlightCategory.init(rawValue: buffer) else {
232 | parsingErrorMessage = "Failed to parse flight category."
233 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
234 | return
235 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:241:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
239 | guard let value = Double(buffer) else {
240 | parsingErrorMessage = "Failed to parse three hour pressure tendency."
241 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
242 | return
243 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:249:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
247 | guard let value = Double(buffer) else {
248 | parsingErrorMessage = "Failed to parse maximum air temperature from the past 6 hours."
249 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
250 | return
251 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:257:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
255 | guard let value = Double(buffer) else {
256 | parsingErrorMessage = "Failed to parse minimum air temperature from the past 6 hours."
257 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
258 | return
259 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:265:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
263 | guard let value = Double(buffer) else {
264 | parsingErrorMessage = "Failed to parse maximum air temperature from the past 24 hours."
265 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
266 | return
267 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:273:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
271 | guard let value = Double(buffer) else {
272 | parsingErrorMessage = "Failed to parse minimum air temperature from the past 24 hours."
273 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
274 | return
275 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:281:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
279 | guard let value = Double(buffer) else {
280 | parsingErrorMessage = "Failed to parse precip since last METAR."
281 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
282 | return
283 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:289:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
287 | guard let value = Double(buffer) else {
288 | parsingErrorMessage = "Failed to parse precip from last 3 hours."
289 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
290 | return
291 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:297:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
295 | guard let value = Double(buffer) else {
296 | parsingErrorMessage = "Failed to parse precip from last 6 hours."
297 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
298 | return
299 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:305:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
303 | guard let value = Double(buffer) else {
304 | parsingErrorMessage = "Failed to parse precip from last 24 hours."
305 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
306 | return
307 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:313:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
311 | guard let value = Double(buffer) else {
312 | parsingErrorMessage = "Failed to parse snow depth."
313 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
314 | return
315 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:321:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
319 | guard let value = Int(buffer) else {
320 | parsingErrorMessage = "Failed to parse vertical visibility."
321 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
322 | return
323 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:329:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
327 | guard let metarType = Metar.MetarType.init(rawValue: buffer) else {
328 | parsingErrorMessage = "Failed to parse METAR type."
329 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
330 | return
331 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:337:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
335 | guard let value = Double(buffer) else {
336 | parsingErrorMessage = "Failed to parse station elevation."
337 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
338 | return
339 | }
[12/12] Compiling AvWeather TAFRequest.swift
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:71:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
69 | }
70 |
71 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
72 |
73 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:139:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
137 | }
138 |
139 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
140 |
141 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:387:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
385 |
386 | // get data from an element
387 | public 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.
388 | buffer += string
389 | }
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/AvWeather/Requests/TAFRequest.swift:11:36: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class TAFRequest: NSObject, XMLParserDelegate, AWCRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [TAF]
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:57:35: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
55 | public func decode(with data: Data) throws -> [TAF] {
56 | // parse data from AWC and create an array of TAF structs
57 | let xmlParser = XMLParser.init(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
58 | xmlParser.delegate = self
59 | if !xmlParser.parse() {
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:79:30: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
77 | let count = Int(strCount) else {
78 | parsingErrorMessage = "Failed to parse TAF XML."
79 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
80 | return
81 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:86:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
84 | guard count > 0 else {
85 | parsingErrorMessage = "Invalid station string."
86 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
87 | return
88 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:147:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
145 | if !buffer.isEmpty {
146 | parsingErrorMessage = buffer
147 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
148 | }
149 | return
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:188:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
186 | } else {
187 | parsingErrorMessage = "Failed to parse date from TAF XML."
188 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
189 | return
190 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:198:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
196 | } else {
197 | parsingErrorMessage = "Failed to parse date from TAF XML."
198 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
199 | return
200 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:208:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
206 | } else {
207 | parsingErrorMessage = "Failed to parse date from TAF XML."
208 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
209 | return
210 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:218:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
216 | } else {
217 | parsingErrorMessage = "Failed to parse date from TAF XML."
218 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
219 | return
220 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:228:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
226 | guard let value = Double(buffer) else {
227 | parsingErrorMessage = "Failed to parse latitude."
228 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
229 | return
230 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:236:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
234 | guard let value = Double(buffer) else {
235 | parsingErrorMessage = "Failed to parse longitude."
236 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
237 | return
238 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:244:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
242 | guard let value = Double(buffer) else {
243 | parsingErrorMessage = "Failed to parse station elevation."
244 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
245 | return
246 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:262:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
260 | } else {
261 | parsingErrorMessage = "Failed to parse date from Forecast XML."
262 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
263 | return
264 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:271:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
269 | } else {
270 | parsingErrorMessage = "Failed to parse date from Forecast XML."
271 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
272 | return
273 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:278:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
276 | guard let changeIndicator = TAF.Forecast.ChangeIndicator(rawValue: buffer) else {
277 | parsingErrorMessage = "Failed to parse Forecast change indicator."
278 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
279 | return
280 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:289:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
287 | } else {
288 | parsingErrorMessage = "Failed to parse date from Forecast XML."
289 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
290 | return
291 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:296:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
294 | guard let value = Int(buffer) else {
295 | parsingErrorMessage = "Failed to parse probability."
296 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
297 | return
298 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:304:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
302 | guard let value = Int(buffer) else {
303 | parsingErrorMessage = "Failed to parse wind direction."
304 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
305 | return
306 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:312:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
310 | guard let value = Int(buffer) else {
311 | parsingErrorMessage = "Failed to parse wind speed."
312 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
313 | return
314 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:320:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
318 | guard let value = Int(buffer) else {
319 | parsingErrorMessage = "Failed to parse wind gust."
320 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
321 | return
322 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:328:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
326 | guard let value = Int(buffer) else {
327 | parsingErrorMessage = "Failed to parse wind shear direction."
328 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
329 | return
330 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:336:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
334 | guard let value = Int(buffer) else {
335 | parsingErrorMessage = "Failed to parse wind shear speed."
336 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
337 | return
338 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:344:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
342 | guard let value = Int(buffer) else {
343 | parsingErrorMessage = "Failed to parse wind shear height."
344 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
345 | return
346 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:352:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
350 | guard let value = Double(buffer) else {
351 | parsingErrorMessage = "Failed to parse visbility."
352 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
353 | return
354 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:360:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
358 | guard let value = Double(buffer) else {
359 | parsingErrorMessage = "Failed to parse altimeter inch Hg."
360 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
361 | return
362 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:368:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
366 | guard let value = Double(buffer) else {
367 | parsingErrorMessage = "Failed to parse vertical visbility."
368 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
369 | return
370 | }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/10] Compiling AvWeather SigmetRequest.swift
[3/11] Compiling AvWeather AWCRequest.swift
[4/11] Compiling AvWeather MetarRequest.swift
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:69:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
67 | }
68 |
69 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
70 | switch elementName {
71 | case "data":
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/AvWeather/Requests/MetarRequest.swift:114:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
112 | }
113 |
114 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
115 | // found end of the METAR section, so save the data
116 | if elementName == "METAR" {
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/AvWeather/Requests/MetarRequest.swift:349:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
347 |
348 | // get data from an element
349 | public 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.
350 | buffer += string
351 | }
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/AvWeather/Requests/MetarRequest.swift:11:38: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class MetarRequest: NSObject, XMLParserDelegate, ADDSRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [Metar]
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:55:35: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
53 | public func decode(with data: Data) throws -> [Metar] {
54 | // parse data from ADDS and create an array of Metar structs
55 | let xmlParser = XMLParser.init(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
56 | xmlParser.delegate = self
57 | if !xmlParser.parse() {
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:75:30: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
73 | let count = Int(strCount) else {
74 | parsingErrorMessage = "Failed to parse METAR XML."
75 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
76 | return
77 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:82:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
80 | guard count > 0 else {
81 | parsingErrorMessage = "Invalid station string."
82 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
83 | return
84 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:126:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
124 | if !buffer.isEmpty {
125 | parsingErrorMessage = buffer
126 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
127 | return
128 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:146:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
144 | } else {
145 | parsingErrorMessage = "Failed to parse date from METAR XML."
146 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
147 | return
148 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:153:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
151 | guard let value = Double(buffer) else {
152 | parsingErrorMessage = "Failed to parse latitude."
153 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
154 | return
155 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:161:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
159 | guard let value = Double(buffer) else {
160 | parsingErrorMessage = "Failed to parse longitude."
161 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
162 | return
163 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:169:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
167 | guard let value = Double(buffer) else {
168 | parsingErrorMessage = "Failed to parse temperature."
169 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
170 | return
171 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:177:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
175 | guard let value = Double(buffer) else {
176 | parsingErrorMessage = "Failed to parse dewpoint."
177 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
178 | return
179 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:185:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
183 | guard let value = Int(buffer) else {
184 | parsingErrorMessage = "Failed to parse wind direction."
185 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
186 | return
187 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:193:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
191 | guard let value = Int(buffer) else {
192 | parsingErrorMessage = "Failed to parse wind speed."
193 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
194 | return
195 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:201:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
199 | guard let value = Int(buffer) else {
200 | parsingErrorMessage = "Failed to parse wind gust."
201 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
202 | return
203 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:209:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
207 | guard let value = Double(buffer) else {
208 | parsingErrorMessage = "Failed to parse visbility."
209 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
210 | return
211 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:217:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
215 | guard let value = Double(buffer) else {
216 | parsingErrorMessage = "Failed to parse altimeter setting."
217 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
218 | return
219 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:225:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
223 | guard let value = Double(buffer) else {
224 | parsingErrorMessage = "Failed to parse sea level pressure."
225 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
226 | return
227 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:233:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
231 | guard let flightCategory = Metar.FlightCategory.init(rawValue: buffer) else {
232 | parsingErrorMessage = "Failed to parse flight category."
233 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
234 | return
235 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:241:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
239 | guard let value = Double(buffer) else {
240 | parsingErrorMessage = "Failed to parse three hour pressure tendency."
241 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
242 | return
243 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:249:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
247 | guard let value = Double(buffer) else {
248 | parsingErrorMessage = "Failed to parse maximum air temperature from the past 6 hours."
249 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
250 | return
251 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:257:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
255 | guard let value = Double(buffer) else {
256 | parsingErrorMessage = "Failed to parse minimum air temperature from the past 6 hours."
257 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
258 | return
259 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:265:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
263 | guard let value = Double(buffer) else {
264 | parsingErrorMessage = "Failed to parse maximum air temperature from the past 24 hours."
265 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
266 | return
267 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:273:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
271 | guard let value = Double(buffer) else {
272 | parsingErrorMessage = "Failed to parse minimum air temperature from the past 24 hours."
273 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
274 | return
275 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:281:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
279 | guard let value = Double(buffer) else {
280 | parsingErrorMessage = "Failed to parse precip since last METAR."
281 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
282 | return
283 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:289:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
287 | guard let value = Double(buffer) else {
288 | parsingErrorMessage = "Failed to parse precip from last 3 hours."
289 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
290 | return
291 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:297:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
295 | guard let value = Double(buffer) else {
296 | parsingErrorMessage = "Failed to parse precip from last 6 hours."
297 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
298 | return
299 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:305:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
303 | guard let value = Double(buffer) else {
304 | parsingErrorMessage = "Failed to parse precip from last 24 hours."
305 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
306 | return
307 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:313:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
311 | guard let value = Double(buffer) else {
312 | parsingErrorMessage = "Failed to parse snow depth."
313 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
314 | return
315 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:321:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
319 | guard let value = Int(buffer) else {
320 | parsingErrorMessage = "Failed to parse vertical visibility."
321 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
322 | return
323 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:329:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
327 | guard let metarType = Metar.MetarType.init(rawValue: buffer) else {
328 | parsingErrorMessage = "Failed to parse METAR type."
329 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
330 | return
331 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:337:28: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
335 | guard let value = Double(buffer) else {
336 | parsingErrorMessage = "Failed to parse station elevation."
337 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
338 | return
339 | }
[5/11] Compiling AvWeather TAFRequest.swift
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:71:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
69 | }
70 |
71 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
72 |
73 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:139:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
137 | }
138 |
139 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
140 |
141 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:387:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
385 |
386 | // get data from an element
387 | public 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.
388 | buffer += string
389 | }
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/AvWeather/Requests/TAFRequest.swift:11:36: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class TAFRequest: NSObject, XMLParserDelegate, AWCRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [TAF]
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:57:35: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
55 | public func decode(with data: Data) throws -> [TAF] {
56 | // parse data from AWC and create an array of TAF structs
57 | let xmlParser = XMLParser.init(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
58 | xmlParser.delegate = self
59 | if !xmlParser.parse() {
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:79:30: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
77 | let count = Int(strCount) else {
78 | parsingErrorMessage = "Failed to parse TAF XML."
79 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
80 | return
81 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:86:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
84 | guard count > 0 else {
85 | parsingErrorMessage = "Invalid station string."
86 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
87 | return
88 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:147:24: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
145 | if !buffer.isEmpty {
146 | parsingErrorMessage = buffer
147 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
148 | }
149 | return
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:188:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
186 | } else {
187 | parsingErrorMessage = "Failed to parse date from TAF XML."
188 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
189 | return
190 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:198:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
196 | } else {
197 | parsingErrorMessage = "Failed to parse date from TAF XML."
198 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
199 | return
200 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:208:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
206 | } else {
207 | parsingErrorMessage = "Failed to parse date from TAF XML."
208 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
209 | return
210 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:218:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
216 | } else {
217 | parsingErrorMessage = "Failed to parse date from TAF XML."
218 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
219 | return
220 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:228:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
226 | guard let value = Double(buffer) else {
227 | parsingErrorMessage = "Failed to parse latitude."
228 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
229 | return
230 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:236:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
234 | guard let value = Double(buffer) else {
235 | parsingErrorMessage = "Failed to parse longitude."
236 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
237 | return
238 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:244:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
242 | guard let value = Double(buffer) else {
243 | parsingErrorMessage = "Failed to parse station elevation."
244 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
245 | return
246 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:262:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
260 | } else {
261 | parsingErrorMessage = "Failed to parse date from Forecast XML."
262 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
263 | return
264 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:271:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
269 | } else {
270 | parsingErrorMessage = "Failed to parse date from Forecast XML."
271 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
272 | return
273 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:278:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
276 | guard let changeIndicator = TAF.Forecast.ChangeIndicator(rawValue: buffer) else {
277 | parsingErrorMessage = "Failed to parse Forecast change indicator."
278 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
279 | return
280 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:289:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
287 | } else {
288 | parsingErrorMessage = "Failed to parse date from Forecast XML."
289 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
290 | return
291 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:296:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
294 | guard let value = Int(buffer) else {
295 | parsingErrorMessage = "Failed to parse probability."
296 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
297 | return
298 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:304:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
302 | guard let value = Int(buffer) else {
303 | parsingErrorMessage = "Failed to parse wind direction."
304 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
305 | return
306 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:312:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
310 | guard let value = Int(buffer) else {
311 | parsingErrorMessage = "Failed to parse wind speed."
312 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
313 | return
314 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:320:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
318 | guard let value = Int(buffer) else {
319 | parsingErrorMessage = "Failed to parse wind gust."
320 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
321 | return
322 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:328:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
326 | guard let value = Int(buffer) else {
327 | parsingErrorMessage = "Failed to parse wind shear direction."
328 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
329 | return
330 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:336:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
334 | guard let value = Int(buffer) else {
335 | parsingErrorMessage = "Failed to parse wind shear speed."
336 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
337 | return
338 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:344:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
342 | guard let value = Int(buffer) else {
343 | parsingErrorMessage = "Failed to parse wind shear height."
344 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
345 | return
346 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:352:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
350 | guard let value = Double(buffer) else {
351 | parsingErrorMessage = "Failed to parse visbility."
352 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
353 | return
354 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:360:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
358 | guard let value = Double(buffer) else {
359 | parsingErrorMessage = "Failed to parse altimeter inch Hg."
360 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
361 | return
362 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:368:32: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
366 | guard let value = Double(buffer) else {
367 | parsingErrorMessage = "Failed to parse vertical visbility."
368 | parser.abortParsing()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'abortParsing'
369 | return
370 | }
[6/11] Compiling AvWeather Metar.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/11] Emitting module AvWeather
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 | private let awcHostUrlString = "https://aviationweather.gov"
19 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 | public init(session: URLSession = .shared) {
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/AvWeather/AWCClient.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 | self.session = session
23 | }
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/AvWeather/AWCClient.swift:21:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
22 | self.session = session
23 | }
/host/spi-builder-workspace/Sources/AvWeather/Requests/MetarRequest.swift:69:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
67 | }
68 |
69 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
70 | switch elementName {
71 | case "data":
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/AvWeather/Requests/MetarRequest.swift:114:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
112 | }
113 |
114 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
115 | // found end of the METAR section, so save the data
116 | if elementName == "METAR" {
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/AvWeather/Requests/MetarRequest.swift:349:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
347 |
348 | // get data from an element
349 | public 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.
350 | buffer += string
351 | }
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/AvWeather/Requests/MetarRequest.swift:11:38: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class MetarRequest: NSObject, XMLParserDelegate, ADDSRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [Metar]
/host/spi-builder-workspace/Sources/AvWeather/Requests/TAFRequest.swift:71:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
69 | }
70 |
71 | public func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
72 |
73 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:139:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
137 | }
138 |
139 | public func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
140 |
141 | switch elementName {
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/AvWeather/Requests/TAFRequest.swift:387:34: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
385 |
386 | // get data from an element
387 | public 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.
388 | buffer += string
389 | }
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/AvWeather/Requests/TAFRequest.swift:11:36: error: cannot find type 'XMLParserDelegate' in scope
9 |
10 |
11 | public class TAFRequest: NSObject, XMLParserDelegate, AWCRequest {
| `- error: cannot find type 'XMLParserDelegate' in scope
12 |
13 | public typealias Response = [TAF]
[8/11] Compiling AvWeather AWCClient.swift
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 | private let awcHostUrlString = "https://aviationweather.gov"
19 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 | public init(session: URLSession = .shared) {
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/AvWeather/AWCClient.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 | self.session = session
23 | }
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/AvWeather/AWCClient.swift:21:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
22 | self.session = session
23 | }
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:42:28: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
40 | public func send<T: AWCRequest>(_ request: T,
41 | completion: @escaping AWCClientCallback<T.Response>) {
42 | let task = session.dataTask(with: getUrl(for: request)) { data, response, error in
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
43 | guard let httpResponse = response as? HTTPURLResponse else {
44 | completion(.failure(AvWeatherError.generic(message: "Can't get HTTP response info.")))
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:48:51: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
46 | }
47 |
48 | if !(200...299).contains(httpResponse.statusCode) {
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
49 | completion(.failure(AvWeatherError.server(message: "Got status code \(httpResponse.statusCode) from server.")))
50 | return
[9/11] Compiling AvWeather AvWeatherError.swift
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 | private let awcHostUrlString = "https://aviationweather.gov"
19 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 | public init(session: URLSession = .shared) {
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/AvWeather/AWCClient.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 | self.session = session
23 | }
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/AvWeather/AWCClient.swift:21:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
19 | private let session: URLSession
20 |
21 | public init(session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
22 | self.session = session
23 | }
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:42:28: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
40 | public func send<T: AWCRequest>(_ request: T,
41 | completion: @escaping AWCClientCallback<T.Response>) {
42 | let task = session.dataTask(with: getUrl(for: request)) { data, response, error in
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
43 | guard let httpResponse = response as? HTTPURLResponse else {
44 | completion(.failure(AvWeatherError.generic(message: "Can't get HTTP response info.")))
/host/spi-builder-workspace/Sources/AvWeather/AWCClient.swift:48:51: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
46 | }
47 |
48 | if !(200...299).contains(httpResponse.statusCode) {
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
49 | completion(.failure(AvWeatherError.server(message: "Got status code \(httpResponse.statusCode) from server.")))
50 | return
[10/11] Compiling AvWeather TAF.swift
[11/11] Compiling AvWeather Sigmet.swift
BUILD FAILURE 6.1 android