Build Information
Failed to build ComicInfo, reference main (81b7a3), with Swift 6.2 for Android on 12 Nov 2025 06:58:33 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/veganstraightedge/ComicInfo.swift.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/veganstraightedge/ComicInfo.swift
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 81b7a31 Prepare 1.0.1 release
Cloned https://github.com/veganstraightedge/ComicInfo.swift.git
Revision (git rev-parse @):
81b7a31f82aafce3646612a0ce2e3127d17fee83
SUCCESS checkout https://github.com/veganstraightedge/ComicInfo.swift.git at main
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/veganstraightedge/ComicInfo.swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:d70d83f328e9f1ae04a4e17e63e2d335ae10639f90ee796a5fe3bfb139eab948
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.2-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--11D90AFD9DD3AB2.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/4] Emitting module ComicInfo
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1412:51: error: 'XMLElement' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
1410 |
1411 | /// Parse Pages element from XML root and return array of Page objects.
1412 | private static func parsePagesElement(_ root: XMLElement) throws -> [Page] {
| `- error: 'XMLElement' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
1413 | guard let pagesElement = root.elements(forName: "Pages").first else {
1414 | return []
Foundation.XMLElement:2:18: note: 'XMLElement' 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 XMLElement = AnyObject
| `- note: 'XMLElement' has been explicitly marked unavailable here
[4/4] Compiling ComicInfo ComicInfo.swift
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1412:51: error: 'XMLElement' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
1410 |
1411 | /// Parse Pages element from XML root and return array of Page objects.
1412 | private static func parsePagesElement(_ root: XMLElement) throws -> [Page] {
| `- error: 'XMLElement' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
1413 | guard let pagesElement = root.elements(forName: "Pages").first else {
1414 | return []
Foundation.XMLElement:2:18: note: 'XMLElement' 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 XMLElement = AnyObject
| `- note: 'XMLElement' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:540:44: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
538 | public static func load(from url: URL) async throws -> Issue {
539 | do {
540 | let (data, _) = try await URLSession.shared.data(from: url)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
541 | guard let xmlContent = String(data: data, encoding: .utf8) else {
542 | throw ComicInfoError.parseError("Could not decode data from URL '\(url)' as UTF-8")
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1041:22: error: 'XMLDocument' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1039 | /// - Throws: ComicInfoError.parseError if XML generation fails
1040 | public func toXMLString() throws -> String {
1041 | let document = XMLDocument(kind: .document)
| `- error: 'XMLDocument' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1042 | document.version = "1.0"
1043 | document.characterEncoding = "utf-8"
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1041:41: error: cannot infer contextual base in reference to member 'document'
1039 | /// - Throws: ComicInfoError.parseError if XML generation fails
1040 | public func toXMLString() throws -> String {
1041 | let document = XMLDocument(kind: .document)
| `- error: cannot infer contextual base in reference to member 'document'
1042 | document.version = "1.0"
1043 | document.characterEncoding = "utf-8"
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1045:18: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1043 | document.characterEncoding = "utf-8"
1044 |
1045 | let root = XMLElement(name: "ComicInfo")
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1046 | document.setRootElement(root)
1047 |
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1050:17: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1048 | // Add schema attributes
1049 | root.addAttribute(
1050 | XMLNode.attribute(withName: "xmlns:xsi", stringValue: "http://www.w3.org/2001/XMLSchema-instance") as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1051 | root.addAttribute(
1052 | XMLNode.attribute(withName: "xmlns:xsd", stringValue: "http://www.w3.org/2001/XMLSchema") as! XMLNode)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1052:17: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1050 | XMLNode.attribute(withName: "xmlns:xsi", stringValue: "http://www.w3.org/2001/XMLSchema-instance") as! XMLNode)
1051 | root.addAttribute(
1052 | XMLNode.attribute(withName: "xmlns:xsd", stringValue: "http://www.w3.org/2001/XMLSchema") as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1053 |
1054 | // Add all properties in alphabetical order (matching ComicInfo standard)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1056:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1054 | // Add all properties in alphabetical order (matching ComicInfo standard)
1055 | if let ageRating = self.ageRating {
1056 | root.addChild(XMLElement(name: "AgeRating", stringValue: ageRating.stringValue))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1057 | }
1058 | if let alternateCount = self.alternateCount {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1059:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1057 | }
1058 | if let alternateCount = self.alternateCount {
1059 | root.addChild(XMLElement(name: "AlternateCount", stringValue: String(alternateCount)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1060 | }
1061 | if let alternateNumber = self.alternateNumber {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1062:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1060 | }
1061 | if let alternateNumber = self.alternateNumber {
1062 | root.addChild(XMLElement(name: "AlternateNumber", stringValue: alternateNumber))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1063 | }
1064 | if let alternateSeries = self.alternateSeries {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1065:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1063 | }
1064 | if let alternateSeries = self.alternateSeries {
1065 | root.addChild(XMLElement(name: "AlternateSeries", stringValue: alternateSeries))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1066 | }
1067 | if let blackAndWhite = self.blackAndWhite {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1068:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1066 | }
1067 | if let blackAndWhite = self.blackAndWhite {
1068 | root.addChild(XMLElement(name: "BlackAndWhite", stringValue: blackAndWhite.stringValue))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1069 | }
1070 | if let charactersRawData = self.charactersRawData {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1071:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1069 | }
1070 | if let charactersRawData = self.charactersRawData {
1071 | root.addChild(XMLElement(name: "Characters", stringValue: charactersRawData))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1072 | }
1073 | if let colorist = self.colorist {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1074:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1072 | }
1073 | if let colorist = self.colorist {
1074 | root.addChild(XMLElement(name: "Colorist", stringValue: colorist))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1075 | }
1076 | if let communityRating = self.communityRating {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1077:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1075 | }
1076 | if let communityRating = self.communityRating {
1077 | root.addChild(XMLElement(name: "CommunityRating", stringValue: String(communityRating)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1078 | }
1079 | if let count = self.count {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1080:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1078 | }
1079 | if let count = self.count {
1080 | root.addChild(XMLElement(name: "Count", stringValue: String(count)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1081 | }
1082 | if let coverArtist = self.coverArtist {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1083:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1081 | }
1082 | if let coverArtist = self.coverArtist {
1083 | root.addChild(XMLElement(name: "CoverArtist", stringValue: coverArtist))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1084 | }
1085 | if let day = self.day {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1086:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1084 | }
1085 | if let day = self.day {
1086 | root.addChild(XMLElement(name: "Day", stringValue: String(day)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1087 | }
1088 | if let editor = self.editor {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1089:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1087 | }
1088 | if let editor = self.editor {
1089 | root.addChild(XMLElement(name: "Editor", stringValue: editor))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1090 | }
1091 | if let format = self.format {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1092:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1090 | }
1091 | if let format = self.format {
1092 | root.addChild(XMLElement(name: "Format", stringValue: format))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1093 | }
1094 | if let genreRawData = self.genreRawData {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1095:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1093 | }
1094 | if let genreRawData = self.genreRawData {
1095 | root.addChild(XMLElement(name: "Genre", stringValue: genreRawData))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1096 | }
1097 | if let imprint = self.imprint {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1098:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1096 | }
1097 | if let imprint = self.imprint {
1098 | root.addChild(XMLElement(name: "Imprint", stringValue: imprint))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1099 | }
1100 | if let inker = self.inker {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1101:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1099 | }
1100 | if let inker = self.inker {
1101 | root.addChild(XMLElement(name: "Inker", stringValue: inker))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1102 | }
1103 | if let languageISO = self.languageISO {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1104:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1102 | }
1103 | if let languageISO = self.languageISO {
1104 | root.addChild(XMLElement(name: "LanguageISO", stringValue: languageISO))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1105 | }
1106 | if let letterer = self.letterer {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1107:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1105 | }
1106 | if let letterer = self.letterer {
1107 | root.addChild(XMLElement(name: "Letterer", stringValue: letterer))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1108 | }
1109 | if let locationsRawData = self.locationsRawData {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1110:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1108 | }
1109 | if let locationsRawData = self.locationsRawData {
1110 | root.addChild(XMLElement(name: "Locations", stringValue: locationsRawData))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1111 | }
1112 | if let mainCharacterOrTeam = self.mainCharacterOrTeam {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1113:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1111 | }
1112 | if let mainCharacterOrTeam = self.mainCharacterOrTeam {
1113 | root.addChild(XMLElement(name: "MainCharacterOrTeam", stringValue: mainCharacterOrTeam))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1114 | }
1115 | if let manga = self.manga {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1116:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1114 | }
1115 | if let manga = self.manga {
1116 | root.addChild(XMLElement(name: "Manga", stringValue: manga.stringValue))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1117 | }
1118 | if let month = self.month {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1119:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1117 | }
1118 | if let month = self.month {
1119 | root.addChild(XMLElement(name: "Month", stringValue: String(month)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1120 | }
1121 | if let notes = self.notes {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1122:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1120 | }
1121 | if let notes = self.notes {
1122 | root.addChild(XMLElement(name: "Notes", stringValue: notes))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1123 | }
1124 | if let number = self.number {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1125:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1123 | }
1124 | if let number = self.number {
1125 | root.addChild(XMLElement(name: "Number", stringValue: number))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1126 | }
1127 | if let pageCount = self.pageCount {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1128:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1126 | }
1127 | if let pageCount = self.pageCount {
1128 | root.addChild(XMLElement(name: "PageCount", stringValue: String(pageCount)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1129 | }
1130 | if let penciller = self.penciller {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1131:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1129 | }
1130 | if let penciller = self.penciller {
1131 | root.addChild(XMLElement(name: "Penciller", stringValue: penciller))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1132 | }
1133 | if let publisher = self.publisher {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1134:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1132 | }
1133 | if let publisher = self.publisher {
1134 | root.addChild(XMLElement(name: "Publisher", stringValue: publisher))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1135 | }
1136 | if let review = self.review {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1137:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1135 | }
1136 | if let review = self.review {
1137 | root.addChild(XMLElement(name: "Review", stringValue: review))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1138 | }
1139 | if let scanInformation = self.scanInformation {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1140:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1138 | }
1139 | if let scanInformation = self.scanInformation {
1140 | root.addChild(XMLElement(name: "ScanInformation", stringValue: scanInformation))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1141 | }
1142 | if let series = self.series {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1143:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1141 | }
1142 | if let series = self.series {
1143 | root.addChild(XMLElement(name: "Series", stringValue: series))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1144 | }
1145 | if let seriesGroup = self.seriesGroup {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1146:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1144 | }
1145 | if let seriesGroup = self.seriesGroup {
1146 | root.addChild(XMLElement(name: "SeriesGroup", stringValue: seriesGroup))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1147 | }
1148 | if let storyArc = self.storyArc {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1149:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1147 | }
1148 | if let storyArc = self.storyArc {
1149 | root.addChild(XMLElement(name: "StoryArc", stringValue: storyArc))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1150 | }
1151 | if let storyArcNumber = self.storyArcNumber {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1152:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1150 | }
1151 | if let storyArcNumber = self.storyArcNumber {
1152 | root.addChild(XMLElement(name: "StoryArcNumber", stringValue: storyArcNumber))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1153 | }
1154 | if let summary = self.summary {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1155:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1153 | }
1154 | if let summary = self.summary {
1155 | root.addChild(XMLElement(name: "Summary", stringValue: summary))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1156 | }
1157 | if let teamsRawData = self.teamsRawData {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1158:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1156 | }
1157 | if let teamsRawData = self.teamsRawData {
1158 | root.addChild(XMLElement(name: "Teams", stringValue: teamsRawData))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1159 | }
1160 | if let title = self.title {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1161:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1159 | }
1160 | if let title = self.title {
1161 | root.addChild(XMLElement(name: "Title", stringValue: title))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1162 | }
1163 | if let translator = self.translator {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1164:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1162 | }
1163 | if let translator = self.translator {
1164 | root.addChild(XMLElement(name: "Translator", stringValue: translator))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1165 | }
1166 | if let volume = self.volume {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1167:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1165 | }
1166 | if let volume = self.volume {
1167 | root.addChild(XMLElement(name: "Volume", stringValue: String(volume)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1168 | }
1169 | if let webRawData = self.webRawData {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1170:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1168 | }
1169 | if let webRawData = self.webRawData {
1170 | root.addChild(XMLElement(name: "Web", stringValue: webRawData))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1171 | }
1172 | if let writer = self.writer {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1173:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1171 | }
1172 | if let writer = self.writer {
1173 | root.addChild(XMLElement(name: "Writer", stringValue: writer))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1174 | }
1175 | if let year = self.year {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1176:23: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1174 | }
1175 | if let year = self.year {
1176 | root.addChild(XMLElement(name: "Year", stringValue: String(year)))
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1177 | }
1178 |
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1181:28: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1179 | // Add Pages element if there are any pages
1180 | if !pages.isEmpty {
1181 | let pagesElement = XMLElement(name: "Pages")
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1182 | for page in pages {
1183 | let pageElement = XMLElement(name: "Page")
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1183:29: error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1181 | let pagesElement = XMLElement(name: "Pages")
1182 | for page in pages {
1183 | let pageElement = XMLElement(name: "Page")
| `- error: 'XMLElement' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1184 |
1185 | pageElement.addAttribute(XMLNode.attribute(withName: "Image", stringValue: String(page.image)) as! XMLNode)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1185:44: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1183 | let pageElement = XMLElement(name: "Page")
1184 |
1185 | pageElement.addAttribute(XMLNode.attribute(withName: "Image", stringValue: String(page.image)) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1186 | pageElement.addAttribute(XMLNode.attribute(withName: "Type", stringValue: page.type.stringValue) as! XMLNode)
1187 |
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1186:44: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1184 |
1185 | pageElement.addAttribute(XMLNode.attribute(withName: "Image", stringValue: String(page.image)) as! XMLNode)
1186 | pageElement.addAttribute(XMLNode.attribute(withName: "Type", stringValue: page.type.stringValue) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1187 |
1188 | if page.doublePage {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1189:46: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1187 |
1188 | if page.doublePage {
1189 | pageElement.addAttribute(XMLNode.attribute(withName: "DoublePage", stringValue: "true") as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1190 | }
1191 | if page.imageSize != 0 {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1193:23: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1191 | if page.imageSize != 0 {
1192 | pageElement.addAttribute(
1193 | XMLNode.attribute(withName: "ImageSize", stringValue: String(page.imageSize)) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1194 | }
1195 | if !page.key.isEmpty {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1196:46: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1194 | }
1195 | if !page.key.isEmpty {
1196 | pageElement.addAttribute(XMLNode.attribute(withName: "Key", stringValue: page.key) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1197 | }
1198 | if !page.bookmark.isEmpty {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1199:46: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1197 | }
1198 | if !page.bookmark.isEmpty {
1199 | pageElement.addAttribute(XMLNode.attribute(withName: "Bookmark", stringValue: page.bookmark) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1200 | }
1201 | if page.imageWidth != -1 {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1203:23: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1201 | if page.imageWidth != -1 {
1202 | pageElement.addAttribute(
1203 | XMLNode.attribute(withName: "ImageWidth", stringValue: String(page.imageWidth)) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1204 | }
1205 | if page.imageHeight != -1 {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1207:23: error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1205 | if page.imageHeight != -1 {
1206 | pageElement.addAttribute(
1207 | XMLNode.attribute(withName: "ImageHeight", stringValue: String(page.imageHeight)) as! XMLNode)
| `- error: type 'XMLNode' (aka 'AnyObject') has no member 'attribute'
1208 | }
1209 |
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1215:49: error: reference to member 'nodePrettyPrint' cannot be resolved without a contextual type
1213 | }
1214 |
1215 | let xmlData = document.xmlData(options: [.nodePrettyPrint])
| `- error: reference to member 'nodePrettyPrint' cannot be resolved without a contextual type
1216 | guard let xmlString = String(data: xmlData, encoding: .utf8) else {
1217 | throw ComicInfoError.parseError("Failed to convert XML data to string")
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1241:21: error: 'XMLDocument' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
1239 | }
1240 |
1241 | let document: XMLDocument
| `- error: 'XMLDocument' is unavailable: This type has moved to the FoundationXML module. Import that module to use it.
1242 | do {
1243 | document = try XMLDocument(data: data, options: [])
Foundation.XMLDocument:2:18: note: 'XMLDocument' 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 XMLDocument = AnyObject
| `- note: 'XMLDocument' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1243:24: error: 'XMLDocument' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1241 | let document: XMLDocument
1242 | do {
1243 | document = try XMLDocument(data: data, options: [])
| `- error: 'XMLDocument' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
1244 | } catch {
1245 | throw ComicInfoError.parseError("Invalid XML syntax: \(error.localizedDescription)")
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1248:33: error: value of type 'XMLDocument' (aka 'AnyObject') has no member 'rootElement'
1246 | }
1247 |
1248 | guard let root = document.rootElement() else {
| `- error: value of type 'XMLDocument' (aka 'AnyObject') has no member 'rootElement'
1249 | throw ComicInfoError.parseError("No root element found")
1250 | }
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1261:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1259 | let alternateCount = root.elements(forName: "AlternateCount").first?.stringValue.flatMap { Int($0) }
1260 | let alternateNumber = root.elements(forName: "AlternateNumber").first?.stringValue?.trimmingCharacters(
1261 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1262 | ).nilIfEmpty
1263 | let alternateSeries = root.elements(forName: "AlternateSeries").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1264:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1262 | ).nilIfEmpty
1263 | let alternateSeries = root.elements(forName: "AlternateSeries").first?.stringValue?.trimmingCharacters(
1264 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1265 | ).nilIfEmpty
1266 | let blackAndWhite = try root.elements(forName: "BlackAndWhite").first?.stringValue.map {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1270:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1268 | }
1269 | let charactersRawData = root.elements(forName: "Characters").first?.stringValue?.trimmingCharacters(
1270 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1271 | ).nilIfEmpty
1272 | let colorist = root.elements(forName: "Colorist").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1272:101: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1270 | in: .whitespacesAndNewlines
1271 | ).nilIfEmpty
1272 | let colorist = root.elements(forName: "Colorist").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1273 | .nilIfEmpty
1274 | let communityRating = try root.elements(forName: "CommunityRating").first?.stringValue.map {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1278:36: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1276 | }
1277 | let count = root.elements(forName: "Count").first?.stringValue.map {
1278 | $0.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1279 | }.flatMap { trimmed in
1280 | trimmed.isEmpty ? nil : Int(trimmed)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1283:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1281 | }
1282 | let coverArtist = root.elements(forName: "CoverArtist").first?.stringValue?.trimmingCharacters(
1283 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1284 | ).nilIfEmpty
1285 | let day = try root.elements(forName: "Day").first?.stringValue.map {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1289:97: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1287 | return result == 0 ? nil : result
1288 | }.flatMap { $0 }
1289 | let editor = root.elements(forName: "Editor").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1290 | .nilIfEmpty
1291 | let format = root.elements(forName: "Format").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1291:97: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1289 | let editor = root.elements(forName: "Editor").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1290 | .nilIfEmpty
1291 | let format = root.elements(forName: "Format").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1292 | .nilIfEmpty
1293 | let genreRawData = root.elements(forName: "Genre").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1293:102: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1291 | let format = root.elements(forName: "Format").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1292 | .nilIfEmpty
1293 | let genreRawData = root.elements(forName: "Genre").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1294 | .nilIfEmpty
1295 | let imprint = root.elements(forName: "Imprint").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1295:99: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1293 | let genreRawData = root.elements(forName: "Genre").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1294 | .nilIfEmpty
1295 | let imprint = root.elements(forName: "Imprint").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1296 | .nilIfEmpty
1297 | let inker = root.elements(forName: "Inker").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1297:95: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1295 | let imprint = root.elements(forName: "Imprint").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1296 | .nilIfEmpty
1297 | let inker = root.elements(forName: "Inker").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1298 | .nilIfEmpty
1299 | let languageISO = root.elements(forName: "LanguageISO").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1300:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1298 | .nilIfEmpty
1299 | let languageISO = root.elements(forName: "LanguageISO").first?.stringValue?.trimmingCharacters(
1300 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1301 | ).nilIfEmpty
1302 | let letterer = root.elements(forName: "Letterer").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1302:101: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1300 | in: .whitespacesAndNewlines
1301 | ).nilIfEmpty
1302 | let letterer = root.elements(forName: "Letterer").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1303 | .nilIfEmpty
1304 | let locationsRawData = root.elements(forName: "Locations").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1305:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1303 | .nilIfEmpty
1304 | let locationsRawData = root.elements(forName: "Locations").first?.stringValue?.trimmingCharacters(
1305 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1306 | ).nilIfEmpty
1307 | let mainCharacterOrTeam = root.elements(forName: "MainCharacterOrTeam").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1308:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1306 | ).nilIfEmpty
1307 | let mainCharacterOrTeam = root.elements(forName: "MainCharacterOrTeam").first?.stringValue?.trimmingCharacters(
1308 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1309 | ).nilIfEmpty
1310 | let manga = try root.elements(forName: "Manga").first?.stringValue.map {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1317:95: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1315 | return result == 0 ? nil : result
1316 | }.flatMap { $0 }
1317 | let notes = root.elements(forName: "Notes").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1318 | .nilIfEmpty
1319 | let number = root.elements(forName: "Number").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1319:97: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1317 | let notes = root.elements(forName: "Notes").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1318 | .nilIfEmpty
1319 | let number = root.elements(forName: "Number").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1320 | .nilIfEmpty
1321 | let pageCount = root.elements(forName: "PageCount").first?.stringValue.flatMap { Int($0) }
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1322:103: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1320 | .nilIfEmpty
1321 | let pageCount = root.elements(forName: "PageCount").first?.stringValue.flatMap { Int($0) }
1322 | let penciller = root.elements(forName: "Penciller").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1323 | .nilIfEmpty
1324 | let publisher = root.elements(forName: "Publisher").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1324:103: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1322 | let penciller = root.elements(forName: "Penciller").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1323 | .nilIfEmpty
1324 | let publisher = root.elements(forName: "Publisher").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1325 | .nilIfEmpty
1326 | let review = root.elements(forName: "Review").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1326:97: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1324 | let publisher = root.elements(forName: "Publisher").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1325 | .nilIfEmpty
1326 | let review = root.elements(forName: "Review").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1327 | .nilIfEmpty
1328 | let scanInformation = root.elements(forName: "ScanInformation").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1329:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1327 | .nilIfEmpty
1328 | let scanInformation = root.elements(forName: "ScanInformation").first?.stringValue?.trimmingCharacters(
1329 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1330 | ).nilIfEmpty
1331 | let series = root.elements(forName: "Series").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1331:97: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1329 | in: .whitespacesAndNewlines
1330 | ).nilIfEmpty
1331 | let series = root.elements(forName: "Series").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1332 | .nilIfEmpty
1333 | let seriesGroup = root.elements(forName: "SeriesGroup").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1334:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1332 | .nilIfEmpty
1333 | let seriesGroup = root.elements(forName: "SeriesGroup").first?.stringValue?.trimmingCharacters(
1334 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1335 | ).nilIfEmpty
1336 | let storyArc = root.elements(forName: "StoryArc").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1336:101: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1334 | in: .whitespacesAndNewlines
1335 | ).nilIfEmpty
1336 | let storyArc = root.elements(forName: "StoryArc").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1337 | .nilIfEmpty
1338 | let storyArcNumber = root.elements(forName: "StoryArcNumber").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1339:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1337 | .nilIfEmpty
1338 | let storyArcNumber = root.elements(forName: "StoryArcNumber").first?.stringValue?.trimmingCharacters(
1339 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1340 | ).nilIfEmpty
1341 | let summary = root.elements(forName: "Summary").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1341:99: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1339 | in: .whitespacesAndNewlines
1340 | ).nilIfEmpty
1341 | let summary = root.elements(forName: "Summary").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1342 | .nilIfEmpty
1343 | let teamsRawData = root.elements(forName: "Teams").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1343:102: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1341 | let summary = root.elements(forName: "Summary").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1342 | .nilIfEmpty
1343 | let teamsRawData = root.elements(forName: "Teams").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1344 | .nilIfEmpty
1345 | let title = root.elements(forName: "Title").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1345:95: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1343 | let teamsRawData = root.elements(forName: "Teams").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1344 | .nilIfEmpty
1345 | let title = root.elements(forName: "Title").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1346 | .nilIfEmpty
1347 | let translator = root.elements(forName: "Translator").first?.stringValue?.trimmingCharacters(
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1348:14: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1346 | .nilIfEmpty
1347 | let translator = root.elements(forName: "Translator").first?.stringValue?.trimmingCharacters(
1348 | in: .whitespacesAndNewlines
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1349 | ).nilIfEmpty
1350 | let volume = root.elements(forName: "Volume").first?.stringValue.map {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1351:36: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1349 | ).nilIfEmpty
1350 | let volume = root.elements(forName: "Volume").first?.stringValue.map {
1351 | $0.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1352 | }.flatMap { trimmed in
1353 | trimmed.isEmpty ? nil : Int(trimmed)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1355:98: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1353 | trimmed.isEmpty ? nil : Int(trimmed)
1354 | }
1355 | let webRawData = root.elements(forName: "Web").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1356 | .nilIfEmpty
1357 | let writer = root.elements(forName: "Writer").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1357:97: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1355 | let webRawData = root.elements(forName: "Web").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
1356 | .nilIfEmpty
1357 | let writer = root.elements(forName: "Writer").first?.stringValue?.trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
1358 | .nilIfEmpty
1359 | let year = try root.elements(forName: "Year").first?.stringValue.map {
/host/spi-builder-workspace/Sources/ComicInfo/ComicInfo.swift:1413:37: error: value of type 'XMLElement' (aka 'AnyObject') has no member 'elements'
1411 | /// Parse Pages element from XML root and return array of Page objects.
1412 | private static func parsePagesElement(_ root: XMLElement) throws -> [Page] {
1413 | guard let pagesElement = root.elements(forName: "Pages").first else {
| `- error: value of type 'XMLElement' (aka 'AnyObject') has no member 'elements'
1414 | return []
1415 | }
BUILD FAILURE 6.2 android