Build Information
Failed to build herald-ios, reference main (560f87), with Swift 6.3 for Wasm on 18 Oct 2026 21:27:14 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-53886768-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.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/MkhytarMkhoian/herald-ios.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/MkhytarMkhoian/herald-ios
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 560f870 Drop the quote under the banner
Cloned https://github.com/MkhytarMkhoian/herald-ios.git
Revision (git rev-parse @):
560f870ea7b415e8679a447ed22758e4086f0cbe
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/MkhytarMkhoian/herald-ios.git at main
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.3
Building package at path: $PWD
https://github.com/MkhytarMkhoian/herald-ios.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886768-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:11aa8e4a9dbcd813ae44128d01e945c51d260b4dfda77b6bb7d997d0cc236164
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest
Building for debugging...
[0/6] Write sources
[5/6] Write swift-version-24593BA9C3E375BF.txt
[7/21] Compiling HeraldCore IdentifiableUserService.swift
[8/21] Compiling HeraldCore Identity.swift
[9/21] Compiling HeraldCore Herald.swift
[10/21] Compiling HeraldCore HeraldProvider.swift
[11/21] Compiling HeraldCore ConsentService.swift
[12/21] Compiling HeraldCore Event.swift
[13/21] Compiling HeraldCore EventTrackerService.swift
[14/21] Compiling HeraldCore FallbackFactory.swift
[15/21] Compiling HeraldCore Property.swift
[16/21] Compiling HeraldCore PropertyTrackerService.swift
[17/23] Compiling HeraldCore Resolution.swift
[18/23] Compiling HeraldCore UnhandledErrors.swift
[19/23] Compiling HeraldCore AnalyticsOperation.swift
[20/23] Compiling HeraldCore AnalyticsValue.swift
[21/23] Emitting module HeraldCore
[22/23] Compiling HeraldCore AnalyticsFailure.swift
[23/23] Compiling HeraldCore AnalyticsLifecycleService.swift
[25/49] Emitting module HeraldLog
[26/50] Compiling HeraldLog AnalyticsLogger.swift
[27/50] Compiling HeraldLog LogAnalyticsService.swift
[28/50] Compiling HeraldLog GenericLogPropertySetter.swift
[29/50] Compiling HeraldLog GenericLogEventTracker.swift
[30/50] Compiling HeraldLog ScreenViewLogEventTracker.swift
[31/50] Compiling HeraldLog LogAnalyticsTrackerService.swift
[32/50] Compiling HeraldLog LogEventTracker.swift
[33/50] Compiling HeraldLog LogPropertySetter.swift
[34/50] Compiling HeraldLog LogPropertySetterFactory.swift
[35/50] Compiling HeraldLog LogRecord.swift
[36/50] Compiling HeraldLog RequireMappedLogFactories.swift
[37/50] Compiling HeraldLog LogEventTrackerFactory.swift
[38/50] Compiling HeraldLog LogFactories.swift
[40/51] Compiling HeraldSwiftUI ScreenTracking.swift
/host/spi-builder-workspace/Sources/HeraldSwiftUI/EventTrackerEnvironment.swift:3:8: error: no such module 'SwiftUI'
1 | import Foundation
2 | import HeraldCore
3 | import SwiftUI
| `- error: no such module 'SwiftUI'
4 |
5 | extension EnvironmentValues {
[41/51] Compiling HeraldSwiftUI WindowReader.swift
/host/spi-builder-workspace/Sources/HeraldSwiftUI/EventTrackerEnvironment.swift:3:8: error: no such module 'SwiftUI'
1 | import Foundation
2 | import HeraldCore
3 | import SwiftUI
| `- error: no such module 'SwiftUI'
4 |
5 | extension EnvironmentValues {
[42/51] Compiling HeraldSwiftUI TrackImpression.swift
/host/spi-builder-workspace/Sources/HeraldSwiftUI/EventTrackerEnvironment.swift:3:8: error: no such module 'SwiftUI'
1 | import Foundation
2 | import HeraldCore
3 | import SwiftUI
| `- error: no such module 'SwiftUI'
4 |
5 | extension EnvironmentValues {
[43/51] Compiling HeraldSwiftUI ImpressionState.swift
/host/spi-builder-workspace/Sources/HeraldSwiftUI/EventTrackerEnvironment.swift:3:8: error: no such module 'SwiftUI'
1 | import Foundation
2 | import HeraldCore
3 | import SwiftUI
| `- error: no such module 'SwiftUI'
4 |
5 | extension EnvironmentValues {
[44/51] Compiling HeraldSwiftUI EventTrackerEnvironment.swift
/host/spi-builder-workspace/Sources/HeraldSwiftUI/EventTrackerEnvironment.swift:3:8: error: no such module 'SwiftUI'
1 | import Foundation
2 | import HeraldCore
3 | import SwiftUI
| `- error: no such module 'SwiftUI'
4 |
5 | extension EnvironmentValues {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[45/51] Emitting module HeraldSwiftUI
/host/spi-builder-workspace/Sources/HeraldSwiftUI/EventTrackerEnvironment.swift:3:8: error: no such module 'SwiftUI'
1 | import Foundation
2 | import HeraldCore
3 | import SwiftUI
| `- error: no such module 'SwiftUI'
4 |
5 | extension EnvironmentValues {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[46/51] Emitting module HeraldInterop
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:8:2: error: Objective-C interoperability is disabled
6 | /// Kotlin can call it because it's visible to Objective-C. Each call becomes an ordinary Herald
7 | /// event or property, so vendors treat it as if Swift had sent it.
8 | @objc(HRBHerald)
| `- error: Objective-C interoperability is disabled
9 | public final class HeraldBridge: NSObject, Sendable {
10 | /// Turns a Kotlin event into a herald-ios one, such as a revenue event, or returns nil to track
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:35:6: error: Objective-C interoperability is disabled
33 | /// Tracks an event. `kotlinEvent` is the original Kotlin object, so factories can check its
34 | /// labels. `needsTranslation` marks a vendor event that `translate` must handle.
35 | @objc public func track(
| `- error: Objective-C interoperability is disabled
36 | name: String, parameters: [String: BridgeValue], isScreenView: Bool,
37 | needsTranslation: Bool, kotlinEvent: AnyObject
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:55:6: error: Objective-C interoperability is disabled
53 | }
54 |
55 | @objc public func set(name: String, value: BridgeValue, isUserProperty: Bool) {
| `- error: Objective-C interoperability is disabled
56 | if isUserProperty {
57 | herald.set(BridgedUserProperty(name: name, value: value.value))
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:63:6: error: Objective-C interoperability is disabled
61 | }
62 |
63 | @objc public func identify(userId: String) { herald.identify(Identity(userId: userId)) }
| `- error: Objective-C interoperability is disabled
64 |
65 | @objc public func reset() { herald.reset() }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:65:6: error: Objective-C interoperability is disabled
63 | @objc public func identify(userId: String) { herald.identify(Identity(userId: userId)) }
64 |
65 | @objc public func reset() { herald.reset() }
| `- error: Objective-C interoperability is disabled
66 |
67 | @objc public func start() { herald.start() }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:67:6: error: Objective-C interoperability is disabled
65 | @objc public func reset() { herald.reset() }
66 |
67 | @objc public func start() { herald.start() }
| `- error: Objective-C interoperability is disabled
68 |
69 | @objc public func flush() { herald.flush() }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:69:6: error: Objective-C interoperability is disabled
67 | @objc public func start() { herald.start() }
68 |
69 | @objc public func flush() { herald.flush() }
| `- error: Objective-C interoperability is disabled
70 |
71 | @objc public func setEnabled(_ enabled: Bool) { herald.setEnabled(enabled) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:71:6: error: Objective-C interoperability is disabled
69 | @objc public func flush() { herald.flush() }
70 |
71 | @objc public func setEnabled(_ enabled: Bool) { herald.setEnabled(enabled) }
| `- error: Objective-C interoperability is disabled
72 |
73 | private func reportUntranslated(name: String, kotlinEvent: AnyObject) {
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:97:2: error: Objective-C interoperability is disabled
95 | /// A value that keeps its type on the way from Kotlin. An `NSNumber` would lose whether 3 was an
96 | /// Int, a Double or a Bool.
97 | @objc(HRBValue)
| `- error: Objective-C interoperability is disabled
98 | public final class BridgeValue: NSObject, Sendable {
99 | let value: AnalyticsValue
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:105:6: error: Objective-C interoperability is disabled
103 | }
104 |
105 | @objc public static func string(_ value: String) -> BridgeValue { BridgeValue(.string(value)) }
| `- error: Objective-C interoperability is disabled
106 |
107 | @objc public static func int(_ value: Int) -> BridgeValue { BridgeValue(.int(value)) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:107:6: error: Objective-C interoperability is disabled
105 | @objc public static func string(_ value: String) -> BridgeValue { BridgeValue(.string(value)) }
106 |
107 | @objc public static func int(_ value: Int) -> BridgeValue { BridgeValue(.int(value)) }
| `- error: Objective-C interoperability is disabled
108 |
109 | @objc public static func double(_ value: Double) -> BridgeValue { BridgeValue(.double(value)) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:109:6: error: Objective-C interoperability is disabled
107 | @objc public static func int(_ value: Int) -> BridgeValue { BridgeValue(.int(value)) }
108 |
109 | @objc public static func double(_ value: Double) -> BridgeValue { BridgeValue(.double(value)) }
| `- error: Objective-C interoperability is disabled
110 |
111 | @objc public static func bool(_ value: Bool) -> BridgeValue { BridgeValue(.bool(value)) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:111:6: error: Objective-C interoperability is disabled
109 | @objc public static func double(_ value: Double) -> BridgeValue { BridgeValue(.double(value)) }
110 |
111 | @objc public static func bool(_ value: Bool) -> BridgeValue { BridgeValue(.bool(value)) }
| `- error: Objective-C interoperability is disabled
112 | }
113 |
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:8:2: error: Objective-C interoperability is disabled
6 | /// Kotlin can call it because it's visible to Objective-C. Each call becomes an ordinary Herald
7 | /// event or property, so vendors treat it as if Swift had sent it.
8 | @objc(HRBHerald)
| `- error: Objective-C interoperability is disabled
9 | public final class HeraldBridge: NSObject, Sendable {
10 | /// Turns a Kotlin event into a herald-ios one, such as a revenue event, or returns nil to track
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:35:6: error: Objective-C interoperability is disabled
33 | /// Tracks an event. `kotlinEvent` is the original Kotlin object, so factories can check its
34 | /// labels. `needsTranslation` marks a vendor event that `translate` must handle.
35 | @objc public func track(
| `- error: Objective-C interoperability is disabled
36 | name: String, parameters: [String: BridgeValue], isScreenView: Bool,
37 | needsTranslation: Bool, kotlinEvent: AnyObject
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:55:6: error: Objective-C interoperability is disabled
53 | }
54 |
55 | @objc public func set(name: String, value: BridgeValue, isUserProperty: Bool) {
| `- error: Objective-C interoperability is disabled
56 | if isUserProperty {
57 | herald.set(BridgedUserProperty(name: name, value: value.value))
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:63:6: error: Objective-C interoperability is disabled
61 | }
62 |
63 | @objc public func identify(userId: String) { herald.identify(Identity(userId: userId)) }
| `- error: Objective-C interoperability is disabled
64 |
65 | @objc public func reset() { herald.reset() }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:65:6: error: Objective-C interoperability is disabled
63 | @objc public func identify(userId: String) { herald.identify(Identity(userId: userId)) }
64 |
65 | @objc public func reset() { herald.reset() }
| `- error: Objective-C interoperability is disabled
66 |
67 | @objc public func start() { herald.start() }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:67:6: error: Objective-C interoperability is disabled
65 | @objc public func reset() { herald.reset() }
66 |
67 | @objc public func start() { herald.start() }
| `- error: Objective-C interoperability is disabled
68 |
69 | @objc public func flush() { herald.flush() }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:69:6: error: Objective-C interoperability is disabled
67 | @objc public func start() { herald.start() }
68 |
69 | @objc public func flush() { herald.flush() }
| `- error: Objective-C interoperability is disabled
70 |
71 | @objc public func setEnabled(_ enabled: Bool) { herald.setEnabled(enabled) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:71:6: error: Objective-C interoperability is disabled
69 | @objc public func flush() { herald.flush() }
70 |
71 | @objc public func setEnabled(_ enabled: Bool) { herald.setEnabled(enabled) }
| `- error: Objective-C interoperability is disabled
72 |
73 | private func reportUntranslated(name: String, kotlinEvent: AnyObject) {
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:97:2: error: Objective-C interoperability is disabled
95 | /// A value that keeps its type on the way from Kotlin. An `NSNumber` would lose whether 3 was an
96 | /// Int, a Double or a Bool.
97 | @objc(HRBValue)
| `- error: Objective-C interoperability is disabled
98 | public final class BridgeValue: NSObject, Sendable {
99 | let value: AnalyticsValue
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:105:6: error: Objective-C interoperability is disabled
103 | }
104 |
105 | @objc public static func string(_ value: String) -> BridgeValue { BridgeValue(.string(value)) }
| `- error: Objective-C interoperability is disabled
106 |
107 | @objc public static func int(_ value: Int) -> BridgeValue { BridgeValue(.int(value)) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:107:6: error: Objective-C interoperability is disabled
105 | @objc public static func string(_ value: String) -> BridgeValue { BridgeValue(.string(value)) }
106 |
107 | @objc public static func int(_ value: Int) -> BridgeValue { BridgeValue(.int(value)) }
| `- error: Objective-C interoperability is disabled
108 |
109 | @objc public static func double(_ value: Double) -> BridgeValue { BridgeValue(.double(value)) }
/host/spi-builder-workspace/Sources/HeraldInterop/HeraldBridge.swift:109:6: error: Objective-C interoperability is disabled
107 | @objc public static func int(_ value: Int) -> BridgeValue { BridgeValue(.int(value)) }
108 |
109 | @objc public static func double(_ value: Double) -> BridgeValue { BridgeValue(.double(value)) }
| `- error: Objective-C interoperability is disabled
110 |
111 | @objc public static func bool(_ value: Bool) -> BridgeValue { BridgeValue(.bool(value)) }
[47/51] Compiling HeraldTesting TrackedEventAssert.swift
[48/51] Emitting module HeraldTesting
[49/51] Compiling HeraldTesting AnalyticsRecord.swift
BUILD FAILURE 6.3 wasm