Build Information
Failed to build Zephyr, reference master (6acddc), with Swift 6.3 for Wasm on 16 Aug 2026 09:05:18 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344849-1":/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:wasm-6.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.0.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ArtSabintsev/Zephyr.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/ArtSabintsev/Zephyr
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 6acddc8 Release 5.0.1: inbound iCloud events stay inside monitored keys
Cloned https://github.com/ArtSabintsev/Zephyr.git
Revision (git rev-parse @):
6acddc82e7dded8725d2b752caeae3735e72715d
SUCCESS checkout https://github.com/ArtSabintsev/Zephyr.git at master
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.3
Building package at path: $PWD
https://github.com/ArtSabintsev/Zephyr.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344849-1":/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:wasm-6.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:e92e38b97676c18adb57b57429ddfb766786102cb50cb918e0d9e8055d05b35d
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/5] Compiling Zephyr ZephyrReconciler.swift
[4/5] Emitting module Zephyr
/host/spi-builder-workspace/Sources/Zephyr.swift:16:1: error: Objective-C interoperability is disabled
14 | #endif
15 |
16 | @objcMembers
| `- error: Objective-C interoperability is disabled
17 | public final class Zephyr: NSObject, @unchecked Sendable {
18 | /// If **true**, console log statements are printed. Default **false**.
/host/spi-builder-workspace/Sources/Zephyr.swift:44:35: error: cannot find 'DispatchSpecificKey' in scope
42 | private static let shared = Zephyr()
43 |
44 | private static let queueKey = DispatchSpecificKey<UInt8>()
| `- error: cannot find 'DispatchSpecificKey' in scope
45 | private let zephyrQueue: DispatchQueue = {
46 | let queue = DispatchQueue(label: "com.zephyr.queue")
/host/spi-builder-workspace/Sources/Zephyr.swift:45:30: error: cannot find type 'DispatchQueue' in scope
43 |
44 | private static let queueKey = DispatchSpecificKey<UInt8>()
45 | private let zephyrQueue: DispatchQueue = {
| `- error: cannot find type 'DispatchQueue' in scope
46 | let queue = DispatchQueue(label: "com.zephyr.queue")
47 | queue.setSpecific(key: queueKey, value: 1)
/host/spi-builder-workspace/Sources/Zephyr.swift:46:21: error: cannot find 'DispatchQueue' in scope
44 | private static let queueKey = DispatchSpecificKey<UInt8>()
45 | private let zephyrQueue: DispatchQueue = {
46 | let queue = DispatchQueue(label: "com.zephyr.queue")
| `- error: cannot find 'DispatchQueue' in scope
47 | queue.setSpecific(key: queueKey, value: 1)
48 | return queue
/host/spi-builder-workspace/Sources/Zephyr.swift:536:2: error: Objective-C interoperability is disabled
534 | // MARK: - Notifications
535 |
536 | @objc
| `- error: Objective-C interoperability is disabled
537 | extension Zephyr {
538 | func willEnterForeground(notification: Notification) {
[5/5] Compiling Zephyr Zephyr.swift
/host/spi-builder-workspace/Sources/Zephyr.swift:16:1: error: Objective-C interoperability is disabled
14 | #endif
15 |
16 | @objcMembers
| `- error: Objective-C interoperability is disabled
17 | public final class Zephyr: NSObject, @unchecked Sendable {
18 | /// If **true**, console log statements are printed. Default **false**.
/host/spi-builder-workspace/Sources/Zephyr.swift:44:35: error: cannot find 'DispatchSpecificKey' in scope
42 | private static let shared = Zephyr()
43 |
44 | private static let queueKey = DispatchSpecificKey<UInt8>()
| `- error: cannot find 'DispatchSpecificKey' in scope
45 | private let zephyrQueue: DispatchQueue = {
46 | let queue = DispatchQueue(label: "com.zephyr.queue")
/host/spi-builder-workspace/Sources/Zephyr.swift:45:30: error: cannot find type 'DispatchQueue' in scope
43 |
44 | private static let queueKey = DispatchSpecificKey<UInt8>()
45 | private let zephyrQueue: DispatchQueue = {
| `- error: cannot find type 'DispatchQueue' in scope
46 | let queue = DispatchQueue(label: "com.zephyr.queue")
47 | queue.setSpecific(key: queueKey, value: 1)
/host/spi-builder-workspace/Sources/Zephyr.swift:46:21: error: cannot find 'DispatchQueue' in scope
44 | private static let queueKey = DispatchSpecificKey<UInt8>()
45 | private let zephyrQueue: DispatchQueue = {
46 | let queue = DispatchQueue(label: "com.zephyr.queue")
| `- error: cannot find 'DispatchQueue' in scope
47 | queue.setSpecific(key: queueKey, value: 1)
48 | return queue
/host/spi-builder-workspace/Sources/Zephyr.swift:536:2: error: Objective-C interoperability is disabled
534 | // MARK: - Notifications
535 |
536 | @objc
| `- error: Objective-C interoperability is disabled
537 | extension Zephyr {
538 | func willEnterForeground(notification: Notification) {
/host/spi-builder-workspace/Sources/Zephyr.swift:63:9: error: cannot find 'NSUbiquitousKeyValueStore' in scope
61 | super.init()
62 | setupNotifications()
63 | NSUbiquitousKeyValueStore.default.synchronize()
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
64 | }
65 |
/host/spi-builder-workspace/Sources/Zephyr.swift:68:12: error: cannot find 'DispatchQueue' in scope
66 | @discardableResult
67 | private func onQueue<T>(_ body: () -> T) -> T {
68 | if DispatchQueue.getSpecific(key: Self.queueKey) != nil {
| `- error: cannot find 'DispatchQueue' in scope
69 | return body()
70 | }
/host/spi-builder-workspace/Sources/Zephyr.swift:176:19: error: cannot find 'NSUbiquitousKeyValueStore' in scope
174 | self,
175 | selector: #selector(keysDidChangeOnCloud(notification:)),
176 | name: NSUbiquitousKeyValueStore.didChangeExternallyNotification,
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
177 | object: NSUbiquitousKeyValueStore.default
178 | )
/host/spi-builder-workspace/Sources/Zephyr.swift:177:21: error: cannot find 'NSUbiquitousKeyValueStore' in scope
175 | selector: #selector(keysDidChangeOnCloud(notification:)),
176 | name: NSUbiquitousKeyValueStore.didChangeExternallyNotification,
177 | object: NSUbiquitousKeyValueStore.default
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
178 | )
179 |
/host/spi-builder-workspace/Sources/Zephyr.swift:175:23: error: '#selector' can only be used with the Objective-C runtime
173 | NotificationCenter.default.addObserver(
174 | self,
175 | selector: #selector(keysDidChangeOnCloud(notification:)),
| `- error: '#selector' can only be used with the Objective-C runtime
176 | name: NSUbiquitousKeyValueStore.didChangeExternallyNotification,
177 | object: NSUbiquitousKeyValueStore.default
/host/spi-builder-workspace/Sources/Zephyr.swift:204:54: error: extra arguments at positions #2, #3 in call
202 | }
203 | if observingDefaults {
204 | NotificationCenter.default.removeObserver(
| `- error: extra arguments at positions #2, #3 in call
205 | self,
206 | name: UserDefaults.didChangeNotification,
FoundationEssentials.NotificationCenter.removeObserver:3:15: note: 'removeObserver' declared here
1 | class NotificationCenter {
2 | @available(macOS 15, iOS 18, tvOS 18, watchOS 11, *)
3 | public func removeObserver(_ token: NotificationCenter.ObservationToken)}
| `- note: 'removeObserver' declared here
4 |
/host/spi-builder-workspace/Sources/Zephyr.swift:205:17: error: cannot convert value of type 'Zephyr' to expected argument type 'NotificationCenter.ObservationToken'
203 | if observingDefaults {
204 | NotificationCenter.default.removeObserver(
205 | self,
| `- error: cannot convert value of type 'Zephyr' to expected argument type 'NotificationCenter.ObservationToken'
206 | name: UserDefaults.didChangeNotification,
207 | object: userDefaults
/host/spi-builder-workspace/Sources/Zephyr.swift:222:23: error: '#selector' can only be used with the Objective-C runtime
220 | NotificationCenter.default.addObserver(
221 | self,
222 | selector: #selector(userDefaultsDidChange(notification:)),
| `- error: '#selector' can only be used with the Objective-C runtime
223 | name: UserDefaults.didChangeNotification,
224 | object: userDefaults
/host/spi-builder-workspace/Sources/Zephyr.swift:323:21: error: cannot find 'NSUbiquitousKeyValueStore' in scope
321 | case .pushValue:
322 | if let value = local.values[key] {
323 | NSUbiquitousKeyValueStore.default.set(unwrap(value), forKey: key)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
324 | printKeySyncStatus(key: key, value: unwrap(value), destination: .remote)
325 | didWriteRemote = true
/host/spi-builder-workspace/Sources/Zephyr.swift:346:17: error: cannot find 'NSUbiquitousKeyValueStore' in scope
344 | }
345 | case .pushDelete:
346 | NSUbiquitousKeyValueStore.default.removeObject(forKey: key)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
347 | local.values.removeValue(forKey: key)
348 | printKeySyncStatus(key: key, value: nil, destination: .remote)
/host/spi-builder-workspace/Sources/Zephyr.swift:365:13: error: cannot find 'NSUbiquitousKeyValueStore' in scope
363 |
364 | if didWriteRemote && Zephyr.syncUbiquitousKeyValueStoreOnChange {
365 | NSUbiquitousKeyValueStore.default.synchronize()
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
366 | }
367 |
/host/spi-builder-workspace/Sources/Zephyr.swift:381:29: error: cannot find 'NSUbiquitousKeyValueStore' in scope
379 | func loadRemoteSnapshot() -> ZephyrSnapshot {
380 | var values: [String: Any] = [:]
381 | for (key, value) in NSUbiquitousKeyValueStore.default.dictionaryRepresentation
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
382 | where !ZephyrReconciler.isMetadataKey(key) {
383 | values[key] = value
/host/spi-builder-workspace/Sources/Zephyr.swift:399:30: error: cannot find 'NSUbiquitousKeyValueStore' in scope
397 | remoteVersions: readUInt64Map(fromCloud: ZephyrReconciler.versionsKey),
398 | remoteTombstones: readUInt64Map(fromCloud: ZephyrReconciler.tombstonesKey),
399 | remoteKnown: Set(NSUbiquitousKeyValueStore.default.array(forKey: ZephyrReconciler.knownKeysKey) as? [String] ?? []),
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
400 | updateVersions: versions,
401 | updateTombstones: tombstones,
/host/spi-builder-workspace/Sources/Zephyr.swift:433:13: error: cannot find 'NSUbiquitousKeyValueStore' in scope
431 | userDefaults.removeObject(forKey: ZephyrReconciler.legacySyncKey)
432 | case .remote:
433 | NSUbiquitousKeyValueStore.default.set(versionPlist, forKey: ZephyrReconciler.versionsKey)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
434 | NSUbiquitousKeyValueStore.default.set(tombPlist, forKey: ZephyrReconciler.tombstonesKey)
435 | NSUbiquitousKeyValueStore.default.set(knownArray, forKey: ZephyrReconciler.knownKeysKey)
/host/spi-builder-workspace/Sources/Zephyr.swift:434:13: error: cannot find 'NSUbiquitousKeyValueStore' in scope
432 | case .remote:
433 | NSUbiquitousKeyValueStore.default.set(versionPlist, forKey: ZephyrReconciler.versionsKey)
434 | NSUbiquitousKeyValueStore.default.set(tombPlist, forKey: ZephyrReconciler.tombstonesKey)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
435 | NSUbiquitousKeyValueStore.default.set(knownArray, forKey: ZephyrReconciler.knownKeysKey)
436 | NSUbiquitousKeyValueStore.default.removeObject(forKey: ZephyrReconciler.legacySyncKey)
/host/spi-builder-workspace/Sources/Zephyr.swift:435:13: error: cannot find 'NSUbiquitousKeyValueStore' in scope
433 | NSUbiquitousKeyValueStore.default.set(versionPlist, forKey: ZephyrReconciler.versionsKey)
434 | NSUbiquitousKeyValueStore.default.set(tombPlist, forKey: ZephyrReconciler.tombstonesKey)
435 | NSUbiquitousKeyValueStore.default.set(knownArray, forKey: ZephyrReconciler.knownKeysKey)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
436 | NSUbiquitousKeyValueStore.default.removeObject(forKey: ZephyrReconciler.legacySyncKey)
437 | }
/host/spi-builder-workspace/Sources/Zephyr.swift:436:13: error: cannot find 'NSUbiquitousKeyValueStore' in scope
434 | NSUbiquitousKeyValueStore.default.set(tombPlist, forKey: ZephyrReconciler.tombstonesKey)
435 | NSUbiquitousKeyValueStore.default.set(knownArray, forKey: ZephyrReconciler.knownKeysKey)
436 | NSUbiquitousKeyValueStore.default.removeObject(forKey: ZephyrReconciler.legacySyncKey)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
437 | }
438 | }
/host/spi-builder-workspace/Sources/Zephyr.swift:473:21: error: cannot find 'NSUbiquitousKeyValueStore' in scope
471 | case .pushValue:
472 | if let value = working.values[key] {
473 | NSUbiquitousKeyValueStore.default.set(unwrap(value), forKey: key)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
474 | printKeySyncStatus(key: key, value: unwrap(value), destination: .remote)
475 | }
/host/spi-builder-workspace/Sources/Zephyr.swift:477:17: error: cannot find 'NSUbiquitousKeyValueStore' in scope
475 | }
476 | case .pushDelete:
477 | NSUbiquitousKeyValueStore.default.removeObject(forKey: key)
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
478 | printKeySyncStatus(key: key, value: nil, destination: .remote)
479 | case .pullValue:
/host/spi-builder-workspace/Sources/Zephyr.swift:500:13: error: cannot find 'NSUbiquitousKeyValueStore' in scope
498 |
499 | if Zephyr.syncUbiquitousKeyValueStoreOnChange {
500 | NSUbiquitousKeyValueStore.default.synchronize()
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
501 | }
502 | return pulled
/host/spi-builder-workspace/Sources/Zephyr.swift:539:9: error: cannot find 'NSUbiquitousKeyValueStore' in scope
537 | extension Zephyr {
538 | func willEnterForeground(notification: Notification) {
539 | NSUbiquitousKeyValueStore.default.synchronize()
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
540 | }
541 |
/host/spi-builder-workspace/Sources/Zephyr.swift:554:36: error: cannot find 'NSUbiquitousKeyValueStore' in scope
552 |
553 | func keysDidChangeOnCloud(notification: Notification) {
554 | guard notification.name == NSUbiquitousKeyValueStore.didChangeExternallyNotification else { return }
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
555 | let userInfo = (notification as NSNotification).userInfo ?? [:]
556 | let reason = userInfo[NSUbiquitousKeyValueStoreChangeReasonKey] as? Int
/host/spi-builder-workspace/Sources/Zephyr.swift:556:31: error: cannot find 'NSUbiquitousKeyValueStoreChangeReasonKey' in scope
554 | guard notification.name == NSUbiquitousKeyValueStore.didChangeExternallyNotification else { return }
555 | let userInfo = (notification as NSNotification).userInfo ?? [:]
556 | let reason = userInfo[NSUbiquitousKeyValueStoreChangeReasonKey] as? Int
| `- error: cannot find 'NSUbiquitousKeyValueStoreChangeReasonKey' in scope
557 | let cloudKeys = userInfo[NSUbiquitousKeyValueStoreChangedKeysKey] as? [String] ?? []
558 |
/host/spi-builder-workspace/Sources/Zephyr.swift:557:34: error: cannot find 'NSUbiquitousKeyValueStoreChangedKeysKey' in scope
555 | let userInfo = (notification as NSNotification).userInfo ?? [:]
556 | let reason = userInfo[NSUbiquitousKeyValueStoreChangeReasonKey] as? Int
557 | let cloudKeys = userInfo[NSUbiquitousKeyValueStoreChangedKeysKey] as? [String] ?? []
| `- error: cannot find 'NSUbiquitousKeyValueStoreChangedKeysKey' in scope
558 |
559 | switch reason {
/host/spi-builder-workspace/Sources/Zephyr.swift:560:14: error: cannot find 'NSUbiquitousKeyValueStoreQuotaViolationChange' in scope
558 |
559 | switch reason {
560 | case NSUbiquitousKeyValueStoreQuotaViolationChange:
| `- error: cannot find 'NSUbiquitousKeyValueStoreQuotaViolationChange' in scope
561 | Zephyr.printStatus(status: "iCloud key-value store quota exceeded. Sync paused until the store shrinks.")
562 | return
/host/spi-builder-workspace/Sources/Zephyr.swift:563:14: error: cannot find 'NSUbiquitousKeyValueStoreAccountChange' in scope
561 | Zephyr.printStatus(status: "iCloud key-value store quota exceeded. Sync paused until the store shrinks.")
562 | return
563 | case NSUbiquitousKeyValueStoreAccountChange:
| `- error: cannot find 'NSUbiquitousKeyValueStoreAccountChange' in scope
564 | Zephyr.printStatus(status: "iCloud account changed. Pulling remote values; not pushing the previous account's data.")
565 | let pulled = onQueue {
/host/spi-builder-workspace/Sources/Zephyr.swift:572:14: error: cannot find 'NSUbiquitousKeyValueStoreInitialSyncChange' in scope
570 | }
571 | return
572 | case NSUbiquitousKeyValueStoreInitialSyncChange, NSUbiquitousKeyValueStoreServerChange:
| `- error: cannot find 'NSUbiquitousKeyValueStoreInitialSyncChange' in scope
573 | break
574 | default:
/host/spi-builder-workspace/Sources/Zephyr.swift:572:58: error: cannot find 'NSUbiquitousKeyValueStoreServerChange' in scope
570 | }
571 | return
572 | case NSUbiquitousKeyValueStoreInitialSyncChange, NSUbiquitousKeyValueStoreServerChange:
| `- error: cannot find 'NSUbiquitousKeyValueStoreServerChange' in scope
573 | break
574 | default:
/host/spi-builder-workspace/Sources/Zephyr.swift:642:9: error: cannot find 'DispatchQueue' in scope
640 | func postCloudNotification(changedKeys: [String]) {
641 | let keys = changedKeys
642 | DispatchQueue.main.async {
| `- error: cannot find 'DispatchQueue' in scope
643 | NotificationCenter.default.post(
644 | name: Zephyr.keysDidChangeOnCloudNotification,
/host/spi-builder-workspace/Sources/Zephyr.swift:643:40: error: no exact matches in call to instance method 'post'
641 | let keys = changedKeys
642 | DispatchQueue.main.async {
643 | NotificationCenter.default.post(
| |- error: no exact matches in call to instance method 'post'
| |- note: found candidate with type '(Notification.Name, Notification.Name.Subject) -> ()' (aka '(NSNotification.Name, Notification.Name.Subject) -> ()')
| `- note: found candidate with type '@MainActor (Notification.Name, Notification.Name.Subject) -> ()' (aka '@MainActor (NSNotification.Name, Notification.Name.Subject) -> ()')
644 | name: Zephyr.keysDidChangeOnCloudNotification,
645 | object: nil,
/host/spi-builder-workspace/Sources/Zephyr.swift:665:25: error: cannot find 'NSUbiquitousKeyValueStore' in scope
663 |
664 | func readUInt64Map(fromCloud key: String) -> [String: UInt64] {
665 | decodeUInt64Map(NSUbiquitousKeyValueStore.default.dictionary(forKey: key))
| `- error: cannot find 'NSUbiquitousKeyValueStore' in scope
666 | }
667 |
BUILD FAILURE 6.3 wasm