Build Information
Failed to build SwiftyUserDefaults, reference master (558c01), with Swift 6.4 for Android on 17 Sep 2026 14:17:02 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344843-0":/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.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/sunshinejr/SwiftyUserDefaults.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/sunshinejr/SwiftyUserDefaults
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 558c015 Update README.md
Cloned https://github.com/sunshinejr/SwiftyUserDefaults.git
Revision (git rev-parse @):
558c015e49524ebf5031b66980a722a4c225c302
SUCCESS checkout https://github.com/sunshinejr/SwiftyUserDefaults.git at master
========================================
Build
========================================
Selected platform: android
Swift version: 6.4
Building package at path: $PWD
https://github.com/sunshinejr/SwiftyUserDefaults.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344843-0":/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.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Building for debugging...
[Planning deferred tasks]
[28 / 36] SwiftyUserDefaults
error: SwiftCompile normal aarch64 failed with a nonzero exit code. Command line: cd /host
/host/spi-builder-workspace/Sources/Defaults+Observing.swift:32:52: [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m30 |[0;0m
[0;36m31 |[0;0m func observe<T: DefaultsSerializable>(_ key: DefaultsKey<T>,
[0;36m32 |[0;0m options: [4;39mNSKeyValueObservingOptions[0;0m = [.new, .old],
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m33 |[0;0m handler: @escaping (DefaultsObserver<T>.Update) -> Void) -> DefaultsDisposable {
[0;36m34 |[0;0m return defaults.observe(key, options: options, handler: handler)
/host/spi-builder-workspace/Sources/Defaults+Observing.swift:38:52: [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m36 |[0;0m
[0;36m37 |[0;0m func observe<T: DefaultsSerializable>(_ keyPath: KeyPath<KeyStore, DefaultsKey<T>>,
[0;36m38 |[0;0m options: [4;39mNSKeyValueObservingOptions[0;0m = [.old, .new],
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m39 |[0;0m handler: @escaping (DefaultsObserver<T>.Update) -> Void) -> DefaultsDisposable {
[0;36m40 |[0;0m return defaults.observe(keyStore[keyPath: keyPath],
/host/spi-builder-workspace/Sources/Defaults+Observing.swift:48:75: [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m46 |[0;0m public extension UserDefaults {
[0;36m47 |[0;0m
[0;36m48 |[0;0m func observe<T: DefaultsSerializable>(_ key: DefaultsKey<T>, options: [4;39mNSKeyValueObservingOptions[0;0m = [.old, .new], handler: @escaping (DefaultsObserver<T>.Update) -> Void) -> DefaultsDisposable {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m49 |[0;0m return DefaultsObserver(key: key, userDefaults: self, options: options, handler: handler)
[0;36m50 |[0;0m }
/host/spi-builder-workspace/Sources/DefaultsObserver.swift:74:68: [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m72 |[0;0m private var didRemoveObserver = false
[0;36m73 |[0;0m
[0;36m74 |[0;0m init(key: DefaultsKey<T>, userDefaults: UserDefaults, options: [4;39mNSKeyValueObservingOptions[0;0m, handler: @escaping ((Update) -> Void)) {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueObservingOptions' in scope[0;0m
[0;36m75 |[0;0m self.key = key
[0;36m76 |[0;0m self.userDefaults = userDefaults
/host/spi-builder-workspace/Sources/DefaultsObserver.swift:36:26: [1;31merror: [1;39mcannot find type 'NSKeyValueChange' in scope[0;0m
[0;36m34 |[0;0m
[0;36m35 |[0;0m public struct Update {
[0;36m36 |[0;0m public let kind: [4;39mNSKeyValueChange[0;0m
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueChange' in scope[0;0m
[0;36m37 |[0;0m public let indexes: IndexSet?
[0;36m38 |[0;0m public let isPrior: Bool
/host/spi-builder-workspace/Sources/DefaultsObserver.swift:42:21: [1;31merror: [1;39mcannot find type 'NSKeyValueChangeKey' in scope[0;0m
[0;36m40 |[0;0m public let oldValue: T.T?
[0;36m41 |[0;0m
[0;36m42 |[0;0m init(dict: [[4;39mNSKeyValueChangeKey[0;0m: Any], key: DefaultsKey<T>) {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueChangeKey' in scope[0;0m
[0;36m43 |[0;0m // swiftlint:disable:next force_cast
[0;36m44 |[0;0m kind = NSKeyValueChange(rawValue: dict[.kindKey] as! UInt)!
/host/spi-builder-workspace/Sources/DefaultsObserver.swift:51:41: [1;33mwarning: [1;39mgeneric parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode[0;0m
[0;36m31 |[0;0m #if !os(Linux)
[0;36m32 |[0;0m
[0;36m33 |[0;0m public final class DefaultsObserver<T: DefaultsSerializable>: NSObject, DefaultsDisposable where T == T.T {
[0;36m|[0;0m `- [1;39mnote: [1;39m'T' previously declared here[0;0m
[0;36m34 |[0;0m
[0;36m35 |[0;0m public struct Update {
[0;36m:[0;0m
[0;36m49 |[0;0m }
[0;36m50 |[0;0m
[0;36m51 |[0;0m private static func deserialize<T: DefaultsSerializable>(_ value: Any?, for key: DefaultsKey<T>) -> T.T? where T.T == T {
[0;36m|[0;0m `- [1;33mwarning: [1;39mgeneric parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode[0;0m
[0;36m52 |[0;0m guard let value = value else { return nil }
[0;36m53 |[0;0m
/host/spi-builder-workspace/Sources/DefaultsObserver.swift:88:94: [1;31merror: [1;39mcannot find type 'NSKeyValueChangeKey' in scope[0;0m
[0;36m86 |[0;0m
[0;36m87 |[0;0m // swiftlint:disable:next block_based_kvo
[0;36m88 |[0;0m public override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [[4;39mNSKeyValueChangeKey[0;0m: Any]?, context: UnsafeMutableRawPointer?) {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSKeyValueChangeKey' in scope[0;0m
[0;36m89 |[0;0m guard let change = change, object != nil, keyPath == key._key else {
[0;36m90 |[0;0m return
Failed frontend command:
/root/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-09-04/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/Sources/BuiltIns.swift /host/spi-builder-workspace/Sources/Defaults+Observing.swift /host/spi-builder-workspace/Sources/Defaults+StringToBool.swift /host/spi-builder-workspace/Sources/Defaults+Subscripts.swift /host/spi-builder-workspace/Sources/Defaults.swift /host/spi-builder-workspace/Sources/DefaultsAdapter.swift /host/spi-builder-workspace/Sources/DefaultsBridges.swift /host/spi-builder-workspace/Sources/DefaultsKey.swift /host/spi-builder-workspace/Sources/DefaultsKeys.swift /host/spi-builder-workspace/Sources/DefaultsObserver.swift /host/spi-builder-workspace/Sources/DefaultsSerializable.swift /host/spi-builder-workspace/Sources/OptionalType.swift /host/spi-builder-workspace/Sources/PropertyWrappers.swift -target aarch64-unknown-linux-android28 -Xllvm -aarch64-use-tbi -disable-objc-interop -sdk /android-ndk/android-ndk-r27d/toolchains/llvm/prebuilt/linux-x86_64/sysroot -sysroot /android-ndk/android-ndk-r27d/toolchains/llvm/prebuilt/linux-x86_64/sysroot -I /host/spi-builder-workspace/.build/out/Products/Debug-android-aarch64 -module-cache-path /host/spi-builder-workspace/.build/out/ModuleCache.noindex -color-diagnostics -Xcc -fcolor-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -external-plugin-path /root/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-09-04/usr/lib/swift/host/plugins/testing\#/root/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-09-04/usr/bin/swift-plugin-server -validate-clang-modules-once -clang-build-session-file /host/spi-builder-workspace/.build/out/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /host -resource-dir /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_android.artifactbundle/swift-android/swift-resources/usr/lib/swift-aarch64 -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -resource-dir -Xcc /android-ndk/android-ndk-r27d/toolchains/llvm/prebuilt/linux-x86_64/lib/clang/18 -Xcc -fno-omit-frame-pointer -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/host/spi-builder-workspace/.build/out/Products/Debug-android-aarch64/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/DerivedSources-normal/aarch64 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/DerivedSources/aarch64 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name SwiftyUserDefaults -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/SwiftyUserDefaults_const_extract_protocols.json -in-process-plugin-server-path /root/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-09-04/usr/lib/swift/host/libSwiftInProcPluginServer.so -plugin-path /root/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-09-04/usr/lib/swift/host/plugins -plugin-path /root/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-09-04/usr/local/lib/swift/host/plugins -emit-module-doc-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/Modules/SwiftyUserDefaults.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/Modules/SwiftyUserDefaults.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/SwiftyUserDefaults-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/SwiftyUserDefaults-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/SwiftyUserDefaults-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftyUserDefaults.build/Debug-android-aarch64/SwiftyUserDefaults-t.build/Objects-normal/aarch64/Modules/SwiftyUserDefaults.swiftmodule
error: Build failed
BUILD FAILURE 6.4 android