Build Information
Failed to build DeviceGuru, reference master (0e551a), with Swift 6.1 for Android on 20 Oct 2025 12:38:02 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/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.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/InderKumarRathore/DeviceGuru.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/InderKumarRathore/DeviceGuru
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 0e551a5 Bumping 10.0.11
Cloned https://github.com/InderKumarRathore/DeviceGuru.git
Revision (git rev-parse @):
0e551a59320f932888513458848021ccc8401881
SUCCESS checkout https://github.com/InderKumarRathore/DeviceGuru.git at master
========================================
Build
========================================
Selected platform: android
Swift version: 6.1
Building package at path: $PWD
https://github.com/InderKumarRathore/DeviceGuru.git
https://github.com/InderKumarRathore/DeviceGuru.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "DeviceGuru",
"name" : "DeviceGuru",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "9.0"
},
{
"name" : "tvos",
"version" : "9.0"
},
{
"name" : "watchos",
"version" : "2.0"
}
],
"products" : [
{
"name" : "DeviceGuru",
"targets" : [
"DeviceGuru"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "DeviceGuru",
"module_type" : "SwiftTarget",
"name" : "DeviceGuru",
"path" : "Sources",
"product_memberships" : [
"DeviceGuru"
],
"resources" : [
{
"path" : "/host/spi-builder-workspace/Sources/DeviceList.plist",
"rule" : {
"copy" : {
}
}
},
{
"path" : "/host/spi-builder-workspace/Sources/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"DeviceGuru.swift",
"DeviceGuruImplementation+Extension.swift",
"DeviceGuruImplementation.swift",
"DeviceVersion.swift",
"Hardware.swift",
"HardwareDetailProvider.swift",
"Platform.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/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.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:496d77b037d0552dd779110e0d7093275ebb8376a63c7a364a5a4acca11a4ff5
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Building for debugging...
[0/4] Copying PrivacyInfo.xcprivacy
[1/4] Copying DeviceList.plist
[2/4] Write sources
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/12] Compiling DeviceGuru Hardware.swift
[6/13] Compiling DeviceGuru resource_bundle_accessor.swift
[7/13] Compiling DeviceGuru DeviceGuruImplementation+Extension.swift
[8/13] Compiling DeviceGuru DeviceVersion.swift
[9/13] Compiling DeviceGuru DeviceGuruImplementation.swift
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:241:1: error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
239 | // Mark:- Private UserDefaults
240 |
241 | extension UserDefaults: LocalStorage {}
| |- error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
| `- note: add stubs for conformance
242 |
243 | private enum Constants {
/host/spi-builder-workspace/Sources/DeviceGuru.swift:29:10: note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
27 |
28 | public protocol LocalStorage {
29 | func setValue(_ value: Any?, forKey key: String)
| `- note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
30 | func object(forKey defaultName: String) -> Any?
31 | }
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:119:15: error: type of expression is ambiguous without a type annotation
117 | }
118 | return String(text[range])
119 | }.first
| `- error: type of expression is ambiguous without a type annotation
120 | } catch let error {
121 | print("invalid regex: \(error.localizedDescription)")
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:180:32: warning: 'init(contentsOfFile:)' is deprecated
178 |
179 | func loadDeviceDictionary(fromPath path: String) -> [String: AnyObject] {
180 | guard let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
181 | assertionFailure("Plist is malformed")
182 | return [:]
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:197:32: warning: 'init(contentsOfFile:)' is deprecated
195 |
196 | guard let path = bundle.path(forResource: Constants.plistFileName, ofType: Constants.plistFileType),
197 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
198 | assertionFailure("DeviceList.plist not found in the bundle.")
199 | return nil
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:208:32: warning: 'init(contentsOfFile:)' is deprecated
206 |
207 | guard let path = bundle.path(forResource: Constants.plistFileName, ofType: Constants.plistFileType),
208 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
209 | return nil
210 | }
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:217:32: warning: 'init(contentsOfFile:)' is deprecated
215 | func loadDeviceDictionaryFromMainBundle() -> [String: AnyObject]? {
216 | guard let path = Bundle.main.path(forResource: Constants.plistFileName, ofType: Constants.plistFileType),
217 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
218 | return nil
219 | }
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:229:32: warning: 'init(contentsOfFile:)' is deprecated
227 | let type = "plist"
228 | guard let path = Bundle.module.path(forResource: resource, ofType: type),
229 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
230 | return nil
231 | }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/13] Compiling DeviceGuru DeviceGuru.swift
[11/13] Emitting module DeviceGuru
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:241:1: error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
239 | // Mark:- Private UserDefaults
240 |
241 | extension UserDefaults: LocalStorage {}
| |- error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
| `- note: add stubs for conformance
242 |
243 | private enum Constants {
/host/spi-builder-workspace/Sources/DeviceGuru.swift:29:10: note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
27 |
28 | public protocol LocalStorage {
29 | func setValue(_ value: Any?, forKey key: String)
| `- note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
30 | func object(forKey defaultName: String) -> Any?
31 | }
[12/13] Compiling DeviceGuru Platform.swift
[13/13] Compiling DeviceGuru HardwareDetailProvider.swift
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:14:30: error: cannot find 'CTL_HW' in scope
12 |
13 | public var hardwareString: String {
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
| `- error: cannot find 'CTL_HW' in scope
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:14:38: error: cannot find 'HW_MACHINE' in scope
12 |
13 | public var hardwareString: String {
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
| `- error: cannot find 'HW_MACHINE' in scope
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:16:9: error: cannot find 'sysctl' in scope
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
| `- error: cannot find 'sysctl' in scope
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:16:26: error: 'nil' requires a contextual type
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
| `- error: 'nil' requires a contextual type
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:16:38: error: 'nil' requires a contextual type
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
| `- error: 'nil' requires a contextual type
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:18:9: error: cannot find 'sysctl' in scope
16 | sysctl(&name, 2, nil, &size, nil, 0)
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
| `- error: cannot find 'sysctl' in scope
19 |
20 | var hardware: String = String(cString: hw_machine)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:18:46: error: 'nil' requires a contextual type
16 | sysctl(&name, 2, nil, &size, nil, 0)
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
| `- error: 'nil' requires a contextual type
19 |
20 | var hardware: String = String(cString: hw_machine)
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/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.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:496d77b037d0552dd779110e0d7093275ebb8376a63c7a364a5a4acca11a4ff5
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/9] Compiling DeviceGuru Platform.swift
[3/9] Compiling DeviceGuru HardwareDetailProvider.swift
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:14:30: error: cannot find 'CTL_HW' in scope
12 |
13 | public var hardwareString: String {
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
| `- error: cannot find 'CTL_HW' in scope
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:14:38: error: cannot find 'HW_MACHINE' in scope
12 |
13 | public var hardwareString: String {
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
| `- error: cannot find 'HW_MACHINE' in scope
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:16:9: error: cannot find 'sysctl' in scope
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
| `- error: cannot find 'sysctl' in scope
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:16:26: error: 'nil' requires a contextual type
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
| `- error: 'nil' requires a contextual type
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:16:38: error: 'nil' requires a contextual type
14 | var name: [Int32] = [CTL_HW, HW_MACHINE]
15 | var size: Int = 2
16 | sysctl(&name, 2, nil, &size, nil, 0)
| `- error: 'nil' requires a contextual type
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:18:9: error: cannot find 'sysctl' in scope
16 | sysctl(&name, 2, nil, &size, nil, 0)
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
| `- error: cannot find 'sysctl' in scope
19 |
20 | var hardware: String = String(cString: hw_machine)
/host/spi-builder-workspace/Sources/HardwareDetailProvider.swift:18:46: error: 'nil' requires a contextual type
16 | sysctl(&name, 2, nil, &size, nil, 0)
17 | var hw_machine = [CChar](repeating: 0, count: Int(size))
18 | sysctl(&name, 2, &hw_machine, &size, nil, 0)
| `- error: 'nil' requires a contextual type
19 |
20 | var hardware: String = String(cString: hw_machine)
[4/10] Compiling DeviceGuru DeviceVersion.swift
[5/10] Compiling DeviceGuru Hardware.swift
[6/10] Compiling DeviceGuru DeviceGuruImplementation.swift
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:241:1: error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
239 | // Mark:- Private UserDefaults
240 |
241 | extension UserDefaults: LocalStorage {}
| |- error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
| `- note: add stubs for conformance
242 |
243 | private enum Constants {
/host/spi-builder-workspace/Sources/DeviceGuru.swift:29:10: note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
27 |
28 | public protocol LocalStorage {
29 | func setValue(_ value: Any?, forKey key: String)
| `- note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
30 | func object(forKey defaultName: String) -> Any?
31 | }
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:180:32: warning: 'init(contentsOfFile:)' is deprecated
178 |
179 | func loadDeviceDictionary(fromPath path: String) -> [String: AnyObject] {
180 | guard let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
181 | assertionFailure("Plist is malformed")
182 | return [:]
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:197:32: warning: 'init(contentsOfFile:)' is deprecated
195 |
196 | guard let path = bundle.path(forResource: Constants.plistFileName, ofType: Constants.plistFileType),
197 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
198 | assertionFailure("DeviceList.plist not found in the bundle.")
199 | return nil
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:208:32: warning: 'init(contentsOfFile:)' is deprecated
206 |
207 | guard let path = bundle.path(forResource: Constants.plistFileName, ofType: Constants.plistFileType),
208 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
209 | return nil
210 | }
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:217:32: warning: 'init(contentsOfFile:)' is deprecated
215 | func loadDeviceDictionaryFromMainBundle() -> [String: AnyObject]? {
216 | guard let path = Bundle.main.path(forResource: Constants.plistFileName, ofType: Constants.plistFileType),
217 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
218 | return nil
219 | }
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:229:32: warning: 'init(contentsOfFile:)' is deprecated
227 | let type = "plist"
228 | guard let path = Bundle.module.path(forResource: resource, ofType: type),
229 | let dictionary = NSDictionary(contentsOfFile: path) as? [String: AnyObject] else {
| `- warning: 'init(contentsOfFile:)' is deprecated
230 | return nil
231 | }
[7/10] Compiling DeviceGuru resource_bundle_accessor.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/10] Compiling DeviceGuru DeviceGuru.swift
[9/10] Compiling DeviceGuru DeviceGuruImplementation+Extension.swift
[10/10] Emitting module DeviceGuru
/host/spi-builder-workspace/Sources/DeviceGuruImplementation.swift:241:1: error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
239 | // Mark:- Private UserDefaults
240 |
241 | extension UserDefaults: LocalStorage {}
| |- error: type 'UserDefaults' does not conform to protocol 'LocalStorage'
| `- note: add stubs for conformance
242 |
243 | private enum Constants {
/host/spi-builder-workspace/Sources/DeviceGuru.swift:29:10: note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
27 |
28 | public protocol LocalStorage {
29 | func setValue(_ value: Any?, forKey key: String)
| `- note: protocol requires function 'setValue(_:forKey:)' with type '(Any?, String) -> ()'
30 | func object(forKey defaultName: String) -> Any?
31 | }
BUILD FAILURE 6.1 android