Build Information
Failed to build CurrencyConverter, reference main (4a75a8
), with Swift 6.0 for Linux on 12 Apr 2025 02:25:43 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.60.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/pixyzehn/currency-converter.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/pixyzehn/currency-converter
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 4a75a84 Update ci.yml
Cloned https://github.com/pixyzehn/currency-converter.git
Revision (git rev-parse @):
4a75a8416f3d2b614032f191fd0994b1376fe739
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/pixyzehn/currency-converter.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $PWD
https://github.com/pixyzehn/currency-converter.git
https://github.com/pixyzehn/currency-converter.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/swiftlang/swift-docc-plugin"
}
],
"manifest_display_name" : "CurrencyConverter",
"name" : "CurrencyConverter",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "macos",
"version" : "11.0"
}
],
"products" : [
{
"name" : "CurrencyConverter",
"targets" : [
"CurrencyConverter"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CurrencyConverterTests",
"module_type" : "SwiftTarget",
"name" : "CurrencyConverterTests",
"path" : "Tests/CurrencyConverterTests",
"sources" : [
"CurrencyConverterTests.swift"
],
"target_dependencies" : [
"CurrencyConverter"
],
"type" : "test"
},
{
"c99name" : "CurrencyConverter",
"module_type" : "SwiftTarget",
"name" : "CurrencyConverter",
"path" : "Sources/CurrencyConverter",
"product_memberships" : [
"CurrencyConverter"
],
"sources" : [
"CurrencyConverter.swift",
"CurrencyRate.swift",
"ReferenceRates.swift",
"ReferenceRatesXMLParser.swift",
"XMLParserError.swift"
],
"type" : "library"
}
],
"tools_version" : "6.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
8f84a9f2102e: Already exists
803e83960fa4: Pulling fs layer
731260fb6157: Pulling fs layer
340afc28ae42: Pulling fs layer
072280c597da: Pulling fs layer
6a08fe791bab: Pulling fs layer
072280c597da: Waiting
6a08fe791bab: Waiting
340afc28ae42: Download complete
803e83960fa4: Verifying Checksum
803e83960fa4: Download complete
6a08fe791bab: Download complete
072280c597da: Verifying Checksum
072280c597da: Download complete
803e83960fa4: Pull complete
731260fb6157: Verifying Checksum
731260fb6157: Download complete
731260fb6157: Pull complete
340afc28ae42: Pull complete
072280c597da: Pull complete
6a08fe791bab: Pull complete
Digest: sha256:9029076bb687edc160a3d5201c89e92dd9fa7309f33f090c4234365c83366c31
Status: Downloaded newer image for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2050] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.36s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (2.34s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3365] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.36s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.69s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
[1/1] Compiling plugin Swift-DocC
[2/2] Compiling plugin Swift-DocC Preview
Building for debugging...
[2/4] Write sources
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/10] Compiling CurrencyConverter CurrencyConverter.swift
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:3:42: error: cannot find type 'XMLParserDelegate' in scope
1 | import Foundation
2 |
3 | class ReferenceRatesXMLParser: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[6/10] Emitting module CurrencyConverter
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:3:42: error: cannot find type 'XMLParserDelegate' in scope
1 | import Foundation
2 |
3 | class ReferenceRatesXMLParser: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:6:25: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
6 | private let parser: XMLParser?
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
7 |
8 | private var resultDate: String?
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/CurrencyConverter/ReferenceRatesXMLParser.swift:41:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
39 | // MARK: - XMLParserDelegate
40 |
41 | 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.
42 | guard elementName == "Cube", !attributeDict.isEmpty else {
43 | // Skip throwing an error as there will be element names to ignore,
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/CurrencyConverter/ReferenceRatesXMLParser.swift:84:41: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
82 | }
83 |
84 | func parserDidEndDocument(_ parser: XMLParser) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
85 | if let resultDate = resultDate {
86 | callbacks.parseSucceeded?(.init(date: resultDate, rates: resultRates))
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/CurrencyConverter/ReferenceRatesXMLParser.swift:92:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
90 | }
91 |
92 | func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
93 | callbacks.parseErrorOccurred?(.general(parseError))
94 | }
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
[7/10] Compiling CurrencyConverter XMLParserError.swift
[8/10] Compiling CurrencyConverter ReferenceRatesXMLParser.swift
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:3:42: error: cannot find type 'XMLParserDelegate' in scope
1 | import Foundation
2 |
3 | class ReferenceRatesXMLParser: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:6:25: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
6 | private let parser: XMLParser?
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
7 |
8 | private var resultDate: String?
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/CurrencyConverter/ReferenceRatesXMLParser.swift:41:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
39 | // MARK: - XMLParserDelegate
40 |
41 | 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.
42 | guard elementName == "Cube", !attributeDict.isEmpty else {
43 | // Skip throwing an error as there will be element names to ignore,
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/CurrencyConverter/ReferenceRatesXMLParser.swift:84:41: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
82 | }
83 |
84 | func parserDidEndDocument(_ parser: XMLParser) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
85 | if let resultDate = resultDate {
86 | callbacks.parseSucceeded?(.init(date: resultDate, rates: resultRates))
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/CurrencyConverter/ReferenceRatesXMLParser.swift:92:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
90 | }
91 |
92 | func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
93 | callbacks.parseErrorOccurred?(.general(parseError))
94 | }
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/CurrencyConverter/ReferenceRatesXMLParser.swift:24:18: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
22 |
23 | init(contentsOf url: URL = defaultXMLURL) {
24 | parser = XMLParser(contentsOf: url)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
25 | super.init()
26 | parser?.delegate = self
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:26:17: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
24 | parser = XMLParser(contentsOf: url)
25 | super.init()
26 | parser?.delegate = self
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
27 | }
28 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:30:18: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |
29 | init(data: Data) {
30 | parser = XMLParser(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 | super.init()
32 | parser?.delegate = self
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:32:17: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
30 | parser = XMLParser(data: data)
31 | super.init()
32 | parser?.delegate = self
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
33 | }
34 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:36:17: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'parse'
34 |
35 | func parse() {
36 | parser?.parse()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'parse'
37 | }
38 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:68:27: warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
66 | }
67 | case XMLParserKeys.currency.rawValue:
68 | if Locale.isoCurrencyCodes.contains(attribute.value) {
| `- warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
69 | currencyRate.currencyCode = attribute.value
70 | } else {
[9/10] Compiling CurrencyConverter CurrencyRate.swift
[10/10] Compiling CurrencyConverter ReferenceRates.swift
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRates.swift:22:22: warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
20 | /// - baseCurrencyCode: The base currency code for the currency rates. The default is "EUR".
21 | public func rates(amount: Double = 1, baseCurrencyCode: String = "EUR") -> [CurrencyRate] {
22 | guard Locale.isoCurrencyCodes.contains(baseCurrencyCode) else {
| `- warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
23 | return []
24 | }
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRates.swift:57:39: warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
55 | }
56 |
57 | let isoCurrencyCodes = Locale.isoCurrencyCodes
| `- warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
58 |
59 | guard isoCurrencyCodes.contains(fromCurrencyCode) && isoCurrencyCodes.contains(toCurrencyCode) else {
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:9029076bb687edc160a3d5201c89e92dd9fa7309f33f090c4234365c83366c31
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
[0/1] Planning build
[1/1] Compiling plugin Swift-DocC
[2/2] Compiling plugin Swift-DocC Preview
Building for debugging...
[2/3] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/9] Emitting module CurrencyConverter
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:3:42: error: cannot find type 'XMLParserDelegate' in scope
1 | import Foundation
2 |
3 | class ReferenceRatesXMLParser: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:6:25: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
6 | private let parser: XMLParser?
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
7 |
8 | private var resultDate: String?
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/CurrencyConverter/ReferenceRatesXMLParser.swift:41:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
39 | // MARK: - XMLParserDelegate
40 |
41 | 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.
42 | guard elementName == "Cube", !attributeDict.isEmpty else {
43 | // Skip throwing an error as there will be element names to ignore,
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/CurrencyConverter/ReferenceRatesXMLParser.swift:84:41: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
82 | }
83 |
84 | func parserDidEndDocument(_ parser: XMLParser) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
85 | if let resultDate = resultDate {
86 | callbacks.parseSucceeded?(.init(date: resultDate, rates: resultRates))
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/CurrencyConverter/ReferenceRatesXMLParser.swift:92:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
90 | }
91 |
92 | func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
93 | callbacks.parseErrorOccurred?(.general(parseError))
94 | }
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
[5/9] Compiling CurrencyConverter XMLParserError.swift
[6/9] Compiling CurrencyConverter CurrencyRate.swift
[7/9] Compiling CurrencyConverter ReferenceRates.swift
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRates.swift:22:22: warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
20 | /// - baseCurrencyCode: The base currency code for the currency rates. The default is "EUR".
21 | public func rates(amount: Double = 1, baseCurrencyCode: String = "EUR") -> [CurrencyRate] {
22 | guard Locale.isoCurrencyCodes.contains(baseCurrencyCode) else {
| `- warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
23 | return []
24 | }
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRates.swift:57:39: warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
55 | }
56 |
57 | let isoCurrencyCodes = Locale.isoCurrencyCodes
| `- warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
58 |
59 | guard isoCurrencyCodes.contains(fromCurrencyCode) && isoCurrencyCodes.contains(toCurrencyCode) else {
[8/9] Compiling CurrencyConverter CurrencyConverter.swift
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:3:42: error: cannot find type 'XMLParserDelegate' in scope
1 | import Foundation
2 |
3 | class ReferenceRatesXMLParser: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
[9/9] Compiling CurrencyConverter ReferenceRatesXMLParser.swift
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:3:42: error: cannot find type 'XMLParserDelegate' in scope
1 | import Foundation
2 |
3 | class ReferenceRatesXMLParser: NSObject, XMLParserDelegate {
| `- error: cannot find type 'XMLParserDelegate' in scope
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:6:25: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
4 | private static let defaultXMLURL = URL(string: "https://getexpenses.app/eurofxref/eurofxref.xml")!
5 |
6 | private let parser: XMLParser?
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
7 |
8 | private var resultDate: String?
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/CurrencyConverter/ReferenceRatesXMLParser.swift:41:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
39 | // MARK: - XMLParserDelegate
40 |
41 | 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.
42 | guard elementName == "Cube", !attributeDict.isEmpty else {
43 | // Skip throwing an error as there will be element names to ignore,
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/CurrencyConverter/ReferenceRatesXMLParser.swift:84:41: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
82 | }
83 |
84 | func parserDidEndDocument(_ parser: XMLParser) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
85 | if let resultDate = resultDate {
86 | callbacks.parseSucceeded?(.init(date: resultDate, rates: resultRates))
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/CurrencyConverter/ReferenceRatesXMLParser.swift:92:27: error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
90 | }
91 |
92 | func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error) {
| `- error: 'XMLParser' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
93 | callbacks.parseErrorOccurred?(.general(parseError))
94 | }
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/CurrencyConverter/ReferenceRatesXMLParser.swift:24:18: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
22 |
23 | init(contentsOf url: URL = defaultXMLURL) {
24 | parser = XMLParser(contentsOf: url)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
25 | super.init()
26 | parser?.delegate = self
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:26:17: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
24 | parser = XMLParser(contentsOf: url)
25 | super.init()
26 | parser?.delegate = self
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
27 | }
28 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:30:18: error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |
29 | init(data: Data) {
30 | parser = XMLParser(data: data)
| `- error: 'XMLParser' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 | super.init()
32 | parser?.delegate = self
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:32:17: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
30 | parser = XMLParser(data: data)
31 | super.init()
32 | parser?.delegate = self
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'delegate'
33 | }
34 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:36:17: error: value of type 'XMLParser' (aka 'AnyObject') has no member 'parse'
34 |
35 | func parse() {
36 | parser?.parse()
| `- error: value of type 'XMLParser' (aka 'AnyObject') has no member 'parse'
37 | }
38 |
/host/spi-builder-workspace/Sources/CurrencyConverter/ReferenceRatesXMLParser.swift:68:27: warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
66 | }
67 | case XMLParserKeys.currency.rawValue:
68 | if Locale.isoCurrencyCodes.contains(attribute.value) {
| `- warning: 'isoCurrencyCodes' is deprecated: Use `Locale.Currency.isoCurrencies` instead
69 | currencyRate.currencyCode = attribute.value
70 | } else {
BUILD FAILURE 6.0 linux