Build Information
Failed to build ZohoBooksClient, reference main (cab7c3), with Swift 6.2 for Android on 18 Aug 2026 14:37:57 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344847-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.0.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/emotiveapps/ZohoBooksClient.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/emotiveapps/ZohoBooksClient
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at cab7c31 Card-payment categorization and transaction matching
Cloned https://github.com/emotiveapps/ZohoBooksClient.git
Revision (git rev-parse @):
cab7c31b36db70b50750f9b3cde86aa32ee56436
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/emotiveapps/ZohoBooksClient.git at main
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/emotiveapps/ZohoBooksClient.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:573917aa137cc6f081a4f3d2a0330bac24553e9cd713cd758adf65046f5c6b90
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.2-latest
Fetching https://github.com/ChimeHQ/OAuthenticator
Fetching https://github.com/emotiveapps/MimeTypeEnum
[1/46] Fetching mimetypeenum
Fetched https://github.com/emotiveapps/MimeTypeEnum from cache (0.47s)
[1/1274] Fetching oauthenticator
Fetched https://github.com/ChimeHQ/OAuthenticator from cache (0.55s)
Computing version for https://github.com/emotiveapps/MimeTypeEnum
Computed https://github.com/emotiveapps/MimeTypeEnum at 1.0.2 (0.69s)
Computing version for https://github.com/ChimeHQ/OAuthenticator
Computed https://github.com/ChimeHQ/OAuthenticator at 0.7.2 (0.13s)
Creating working copy for https://github.com/emotiveapps/MimeTypeEnum
Working copy of https://github.com/emotiveapps/MimeTypeEnum resolved at 1.0.2
Creating working copy for https://github.com/ChimeHQ/OAuthenticator
Working copy of https://github.com/ChimeHQ/OAuthenticator resolved at 0.7.2
Building for debugging...
[0/5] Write sources
[0/5] Copying PrivacyInfo.xcprivacy
[0/5] Write sources
[4/5] Write swift-version--11D90AFD9DD3AB2.txt
[6/23] Emitting module OAuthenticator
[7/25] Compiling MimeTypeEnum MimeType.swift
[8/25] Emitting module MimeTypeEnum
[9/26] Compiling OAuthenticator WellknownEndpoints.swift
[10/26] Compiling OAuthenticator resource_bundle_accessor.swift
[12/26] Compiling OAuthenticator Mastodon.swift
[13/26] Compiling OAuthenticator URL+QueryParams.swift
[14/26] Compiling OAuthenticator ASWebAuthenticationSession+Utility.swift
[15/26] Compiling OAuthenticator Authenticator.swift
[16/26] Compiling OAuthenticator CredentialWindowProvider.swift
[17/26] Compiling OAuthenticator PKCE.swift
[18/26] Compiling OAuthenticator Bluesky.swift
[19/26] Compiling OAuthenticator GitHub.swift
[20/26] Compiling OAuthenticator GoogleAPI.swift
[21/26] Compiling OAuthenticator URLSession+ResponseProvider.swift
[22/26] Compiling OAuthenticator WebAuthenticationSession+Utility.swift
[23/26] Compiling OAuthenticator Data+Base64URLEncode.swift
[24/26] Compiling OAuthenticator Models.swift
[25/26] Compiling OAuthenticator DPoPKey.swift
[26/26] Compiling OAuthenticator DPoPSigner.swift
[28/42] Compiling ZohoBooksClient ZohoConfig.swift
[29/42] Compiling ZohoBooksClient ZohoError.swift
[30/44] Compiling ZohoBooksClient ZohoOAuth.swift
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuth.swift:72:19: error: cannot find 'URLRequest' in scope
70 | ]
71 |
72 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
73 | request.httpMethod = "POST"
74 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuth.swift:77:49: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
75 | request.httpBody = Data((bodyComponents.percentEncodedQuery ?? "").utf8)
76 |
77 | let (data, response) = try await URLSession.shared.data(for: request)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
78 |
79 | guard let httpResponse = response as? HTTPURLResponse else {
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:149:49: error: cannot find type 'URLRequest' in scope
147 | /// Make an authenticated request using OAuthenticator
148 | /// This is the primary way to make API calls - OAuthenticator handles auth automatically
149 | public func authenticatedRequest(for request: URLRequest) async throws -> (Data, URLResponse) {
| `- error: cannot find type 'URLRequest' in scope
150 | let (data, response) = try await authenticator.response(for: request)
151 |
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:149:84: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
147 | /// Make an authenticated request using OAuthenticator
148 | /// This is the primary way to make API calls - OAuthenticator handles auth automatically
149 | public func authenticatedRequest(for request: URLRequest) async throws -> (Data, URLResponse) {
| `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
150 | let (data, response) = try await authenticator.response(for: request)
151 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
| `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:60:23: error: cannot find 'URLRequest' in scope
58 | }
59 |
60 | var request = URLRequest(url: config.tokenURL)
| `- error: cannot find 'URLRequest' in scope
61 | request.httpMethod = "POST"
62 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:95:23: error: cannot find 'URLRequest' in scope
93 | ]
94 |
95 | var request = URLRequest(url: components.url!)
| `- error: cannot find 'URLRequest' in scope
96 | request.httpMethod = "POST"
97 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:119:35: error: missing argument for parameter 'userAuthenticator' in call
117 | appCredentials: appCredentials,
118 | loginStorage: loginStorage,
119 | tokenHandling: tokenHandling
| `- error: missing argument for parameter 'userAuthenticator' in call
120 | )
121 |
/host/spi-builder-workspace/.build/checkouts/OAuthenticator/Sources/OAuthenticator/Authenticator.swift:101:10: note: 'init(appCredentials:loginStorage:tokenHandling:mode:userAuthenticator:authenticationStatusHandler:)' declared here
99 | #endif
100 |
101 | public init(
| `- note: 'init(appCredentials:loginStorage:tokenHandling:mode:userAuthenticator:authenticationStatusHandler:)' declared here
102 | appCredentials: AppCredentials,
103 | loginStorage: LoginStorage? = nil,
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:139:24: error: cannot find 'URLRequest' in scope
137 | // Make a request to trigger token refresh
138 | let urlString = "https://www.zohoapis.\(config.region.rawValue)/books/v3/contacts"
139 | let dummyRequest = URLRequest(url: URL(string: urlString)!)
| `- error: cannot find 'URLRequest' in scope
140 | _ = try await authenticator.response(for: dummyRequest)
141 |
[31/44] Compiling ZohoBooksClient ZohoOAuthenticator.swift
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuth.swift:72:19: error: cannot find 'URLRequest' in scope
70 | ]
71 |
72 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
73 | request.httpMethod = "POST"
74 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuth.swift:77:49: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
75 | request.httpBody = Data((bodyComponents.percentEncodedQuery ?? "").utf8)
76 |
77 | let (data, response) = try await URLSession.shared.data(for: request)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
78 |
79 | guard let httpResponse = response as? HTTPURLResponse else {
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:149:49: error: cannot find type 'URLRequest' in scope
147 | /// Make an authenticated request using OAuthenticator
148 | /// This is the primary way to make API calls - OAuthenticator handles auth automatically
149 | public func authenticatedRequest(for request: URLRequest) async throws -> (Data, URLResponse) {
| `- error: cannot find type 'URLRequest' in scope
150 | let (data, response) = try await authenticator.response(for: request)
151 |
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:149:84: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
147 | /// Make an authenticated request using OAuthenticator
148 | /// This is the primary way to make API calls - OAuthenticator handles auth automatically
149 | public func authenticatedRequest(for request: URLRequest) async throws -> (Data, URLResponse) {
| `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
150 | let (data, response) = try await authenticator.response(for: request)
151 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
| `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:60:23: error: cannot find 'URLRequest' in scope
58 | }
59 |
60 | var request = URLRequest(url: config.tokenURL)
| `- error: cannot find 'URLRequest' in scope
61 | request.httpMethod = "POST"
62 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:95:23: error: cannot find 'URLRequest' in scope
93 | ]
94 |
95 | var request = URLRequest(url: components.url!)
| `- error: cannot find 'URLRequest' in scope
96 | request.httpMethod = "POST"
97 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:119:35: error: missing argument for parameter 'userAuthenticator' in call
117 | appCredentials: appCredentials,
118 | loginStorage: loginStorage,
119 | tokenHandling: tokenHandling
| `- error: missing argument for parameter 'userAuthenticator' in call
120 | )
121 |
/host/spi-builder-workspace/.build/checkouts/OAuthenticator/Sources/OAuthenticator/Authenticator.swift:101:10: note: 'init(appCredentials:loginStorage:tokenHandling:mode:userAuthenticator:authenticationStatusHandler:)' declared here
99 | #endif
100 |
101 | public init(
| `- note: 'init(appCredentials:loginStorage:tokenHandling:mode:userAuthenticator:authenticationStatusHandler:)' declared here
102 | appCredentials: AppCredentials,
103 | loginStorage: LoginStorage? = nil,
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:139:24: error: cannot find 'URLRequest' in scope
137 | // Make a request to trigger token refresh
138 | let urlString = "https://www.zohoapis.\(config.region.rawValue)/books/v3/contacts"
139 | let dummyRequest = URLRequest(url: URL(string: urlString)!)
| `- error: cannot find 'URLRequest' in scope
140 | _ = try await authenticator.response(for: dummyRequest)
141 |
[32/44] Compiling ZohoBooksClient ZBPayment.swift
[33/44] Compiling ZohoBooksClient ZBTax.swift
[34/44] Compiling ZohoBooksClient ZBItem.swift
[35/44] Compiling ZohoBooksClient ZBPagedResponse.swift
[36/44] Compiling ZohoBooksClient OAuthProviding.swift
[37/44] Compiling ZohoBooksClient ZohoBooksClient.swift
[38/44] Compiling ZohoBooksClient ZBExpense.swift
[39/44] Compiling ZohoBooksClient ZBInvoice.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[40/44] Compiling ZohoBooksClient ZBBankTransaction.swift
[41/44] Compiling ZohoBooksClient ZBContact.swift
[42/44] Emitting module ZohoBooksClient
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:149:49: error: cannot find type 'URLRequest' in scope
147 | /// Make an authenticated request using OAuthenticator
148 | /// This is the primary way to make API calls - OAuthenticator handles auth automatically
149 | public func authenticatedRequest(for request: URLRequest) async throws -> (Data, URLResponse) {
| `- error: cannot find type 'URLRequest' in scope
150 | let (data, response) = try await authenticator.response(for: request)
151 |
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:149:84: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
147 | /// Make an authenticated request using OAuthenticator
148 | /// This is the primary way to make API calls - OAuthenticator handles auth automatically
149 | public func authenticatedRequest(for request: URLRequest) async throws -> (Data, URLResponse) {
| `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
150 | let (data, response) = try await authenticator.response(for: request)
151 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
| `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:60:23: error: cannot find 'URLRequest' in scope
58 | }
59 |
60 | var request = URLRequest(url: config.tokenURL)
| `- error: cannot find 'URLRequest' in scope
61 | request.httpMethod = "POST"
62 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:95:23: error: cannot find 'URLRequest' in scope
93 | ]
94 |
95 | var request = URLRequest(url: components.url!)
| `- error: cannot find 'URLRequest' in scope
96 | request.httpMethod = "POST"
97 | request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/ZohoOAuthenticator.swift:119:35: error: missing argument for parameter 'userAuthenticator' in call
117 | appCredentials: appCredentials,
118 | loginStorage: loginStorage,
119 | tokenHandling: tokenHandling
| `- error: missing argument for parameter 'userAuthenticator' in call
120 | )
121 |
/host/spi-builder-workspace/.build/checkouts/OAuthenticator/Sources/OAuthenticator/Authenticator.swift:101:10: note: 'init(appCredentials:loginStorage:tokenHandling:mode:userAuthenticator:authenticationStatusHandler:)' declared here
99 | #endif
100 |
101 | public init(
| `- note: 'init(appCredentials:loginStorage:tokenHandling:mode:userAuthenticator:authenticationStatusHandler:)' declared here
102 | appCredentials: AppCredentials,
103 | loginStorage: LoginStorage? = nil,
[43/44] Compiling ZohoBooksClient HttpService.swift
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:102:19: error: cannot find 'URLRequest' in scope
100 | }
101 |
102 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
103 | request.httpMethod = method
104 | request.setValue("application/json", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:124:49: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
122 | }
123 |
124 | let (data, response) = try await URLSession.shared.data(for: request)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
125 |
126 | guard let httpResponse = response as? HTTPURLResponse else {
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:264:19: error: cannot find 'URLRequest' in scope
262 |
263 | let boundary = "Boundary-\(UUID().uuidString)"
264 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
265 | request.httpMethod = "POST"
266 | request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:298:49: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
296 | }
297 |
298 | let (data, response) = try await URLSession.shared.data(for: request)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
299 |
300 | guard let httpResponse = response as? HTTPURLResponse else {
[44/44] Compiling ZohoBooksClient ZBAccount.swift
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:102:19: error: cannot find 'URLRequest' in scope
100 | }
101 |
102 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
103 | request.httpMethod = method
104 | request.setValue("application/json", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:124:49: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
122 | }
123 |
124 | let (data, response) = try await URLSession.shared.data(for: request)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
125 |
126 | guard let httpResponse = response as? HTTPURLResponse else {
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:264:19: error: cannot find 'URLRequest' in scope
262 |
263 | let boundary = "Boundary-\(UUID().uuidString)"
264 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
265 | request.httpMethod = "POST"
266 | request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/ZohoBooksClient/HttpService.swift:298:49: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
296 | }
297 |
298 | let (data, response) = try await URLSession.shared.data(for: request)
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
299 |
300 | guard let httpResponse = response as? HTTPURLResponse else {
BUILD FAILURE 6.2 android