Build Information
Failed to build InAppTools, reference 0.4.0 (b25576), with Swift 6.3 for Android on 14 Apr 2026 15:07:03 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dhennessy/inapptools-ios-sdk.git
Reference: 0.4.0
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/dhennessy/inapptools-ios-sdk
* tag 0.4.0 -> FETCH_HEAD
HEAD is now at b25576b Prepare for SDK release
Cloned https://github.com/dhennessy/inapptools-ios-sdk.git
Revision (git rev-parse @):
b25576bb1c6c478da8516ba3016849f6dd0beb12
SUCCESS checkout https://github.com/dhennessy/inapptools-ios-sdk.git at 0.4.0
========================================
Build
========================================
Selected platform: android
Swift version: 6.3
Building package at path: $PWD
https://github.com/dhennessy/inapptools-ios-sdk.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:9008270ea37a55e78725e6225015adb5eff8582da520c5232bf0499f32c36dc4
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest
Fetching https://github.com/WeTransfer/Mocker.git
[1/1889] Fetching mocker
Fetched https://github.com/WeTransfer/Mocker.git from cache (0.36s)
Computing version for https://github.com/WeTransfer/Mocker.git
Computed https://github.com/WeTransfer/Mocker.git at 3.0.2 (1.01s)
Creating working copy for https://github.com/WeTransfer/Mocker.git
Working copy of https://github.com/WeTransfer/Mocker.git resolved at 3.0.2
Building for debugging...
[0/3] Copying PrivacyInfo.xcprivacy
[1/3] Write sources
[2/3] Write swift-version--4F562202D5529B1.txt
[4/7] Compiling InAppTools InAppTools.swift
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:5:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | public class MailingList {
4 | private let apiKey: String
5 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
6 | private let baseURL: URL
7 |
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:39:42: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
37 | }
38 |
39 | public init(apiKey: String, session: URLSession = .shared, baseURL: URL = URL(string: "https://api.inapptools.com/v1/")!) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
40 | self.apiKey = apiKey
41 | self.session = session
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:39:56: error: value of type '_' expected to be instance of class or class-constrained type
37 | }
38 |
39 | public init(apiKey: String, session: URLSession = .shared, baseURL: URL = URL(string: "https://api.inapptools.com/v1/")!) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
40 | self.apiKey = apiKey
41 | self.session = session
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:39:56: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
37 | }
38 |
39 | public init(apiKey: String, session: URLSession = .shared, baseURL: URL = URL(string: "https://api.inapptools.com/v1/")!) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
40 | self.apiKey = apiKey
41 | self.session = session
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:81:61: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
79 | // MARK: Implementation helpers
80 |
81 | private func validateHttpResponse(data: Data, response: URLResponse) throws {
| `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
82 | guard let http = response as? HTTPURLResponse else {
83 | throw InAppToolsError.invalidResponse
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/InAppTools/InAppTools.swift:50:23: error: cannot find 'URLRequest' in scope
48 | let body = try jsonEncoder.encode(MemberChanges(email: email, firstName: firstName, lastName: lastName, name: name, fields: fields, tags: tags, status: .subscribed))
49 | let url = baseURL.appendingPathComponent("lists/\(listId)/members/\(email)/")
50 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
51 | request.httpMethod = "PUT"
52 | request.setValue(apiKey, forHTTPHeaderField: "X-API-Key")
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:55:50: error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
53 | request.setValue("application/json", forHTTPHeaderField: "Content-Type")
54 | request.httpBody = body
55 | let (data, response) = try await session.data(for: request)
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
56 | try validateHttpResponse(data: data, response: response)
57 | let jsonDecoder = JSONDecoder()
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:67:23: error: cannot find 'URLRequest' in scope
65 | let body = try jsonEncoder.encode(StatusChanges(status: .unsubscribed))
66 | let url = baseURL.appendingPathComponent("lists/\(listId)/members/\(uuid)/")
67 | var request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
68 | request.httpMethod = "PUT"
69 | request.setValue(apiKey, forHTTPHeaderField: "X-API-Key")
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:72:50: error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
70 | request.setValue("application/json", forHTTPHeaderField: "Content-Type")
71 | request.httpBody = body
72 | let (data, response) = try await session.data(for: request)
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'data'
73 | try validateHttpResponse(data: data, response: response)
74 | let jsonDecoder = JSONDecoder()
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:82:35: warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
80 |
81 | private func validateHttpResponse(data: Data, response: URLResponse) throws {
82 | guard let http = response as? HTTPURLResponse else {
| `- warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
83 | throw InAppToolsError.invalidResponse
84 | }
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:82:39: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
80 |
81 | private func validateHttpResponse(data: Data, response: URLResponse) throws {
82 | guard let http = response as? HTTPURLResponse else {
| `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
83 | throw InAppToolsError.invalidResponse
84 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' 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 HTTPURLResponse = AnyObject
| `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:86:21: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
84 | }
85 |
86 | switch http.statusCode {
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
87 | case 200...299:
88 | return
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:92:53: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
90 | case 400...599:
91 | let body = String(data: data, encoding: .utf8) ?? ""
92 | throw InAppToolsError.requestError(http.statusCode, body)
| `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
93 |
94 | default:
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/7] Compiling InAppTools resource_bundle_accessor.swift
[6/7] Compiling InAppTools InAppToolsError.swift
[7/7] Emitting module InAppTools
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:5:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | public class MailingList {
4 | private let apiKey: String
5 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
6 | private let baseURL: URL
7 |
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:39:42: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
37 | }
38 |
39 | public init(apiKey: String, session: URLSession = .shared, baseURL: URL = URL(string: "https://api.inapptools.com/v1/")!) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
40 | self.apiKey = apiKey
41 | self.session = session
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:39:56: error: value of type '_' expected to be instance of class or class-constrained type
37 | }
38 |
39 | public init(apiKey: String, session: URLSession = .shared, baseURL: URL = URL(string: "https://api.inapptools.com/v1/")!) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
40 | self.apiKey = apiKey
41 | self.session = session
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:39:56: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
37 | }
38 |
39 | public init(apiKey: String, session: URLSession = .shared, baseURL: URL = URL(string: "https://api.inapptools.com/v1/")!) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
40 | self.apiKey = apiKey
41 | self.session = session
/host/spi-builder-workspace/Sources/InAppTools/InAppTools.swift:81:61: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
79 | // MARK: Implementation helpers
80 |
81 | private func validateHttpResponse(data: Data, response: URLResponse) throws {
| `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
82 | guard let http = response as? HTTPURLResponse else {
83 | throw InAppToolsError.invalidResponse
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
BUILD FAILURE 6.3 android