The Swift Package Index logo.Swift Package Index

Build Information

Failed to build YCFirstTime, reference master (04bda2), with Swift 6.3 for Android on 26 Apr 2026 18:22:47 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/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/fabioknoedt/YCFirstTime.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/fabioknoedt/YCFirstTime
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 04bda2c Merge pull request #38 from fabioknoedt/claude/agents-docs-link
Cloned https://github.com/fabioknoedt/YCFirstTime.git
Revision (git rev-parse @):
04bda2c2c582976de5811063a088f70de6a46453
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/fabioknoedt/YCFirstTime.git at master
========================================
Build
========================================
Selected platform:         android
Swift version:             6.3
Building package at path:  $PWD
https://github.com/fabioknoedt/YCFirstTime.git
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/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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--4F562202D5529B1.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/5] Emitting module YCFirstTime
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:47:2: error: Objective-C interoperability is disabled
 45 | /// - ``versionProvider``
 46 | /// - ``nowProvider``
 47 | @objc(YCFirstTime)
    |  `- error: Objective-C interoperability is disabled
 48 | public final class YCFirstTime: NSObject, @unchecked Sendable {
 49 |
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:67:6: error: Objective-C interoperability is disabled
 65 |     ///
 66 |     /// Obj-C callers: available as `+[YCFirstTime shared]`.
 67 |     @objc public class var shared: YCFirstTime { _shared }
    |      `- error: Objective-C interoperability is disabled
 68 |     private static let _shared = YCFirstTime()
 69 |
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:75:6: error: Objective-C interoperability is disabled
 73 |     /// that want an isolated object — set ``versionProvider`` / ``nowProvider``
 74 |     /// before calling any `execute…` method.
 75 |     @objc public override init() {
    |      `- error: Objective-C interoperability is disabled
 76 |         self.fkDict = Self.loadDictionary()
 77 |         super.init()
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:94:6: error: Objective-C interoperability is disabled
 92 |     ///   - key: A globally-unique identifier for this block. Pick something
 93 |     ///     descriptive, e.g. `"onboarding.v1"`.
 94 |     @objc(executeOnce:forKey:)
    |      `- error: Objective-C interoperability is disabled
 95 |     public func executeOnce(_ block: (() -> Void)?, forKey key: String) {
 96 |         execute(block, afterFirstTime: nil, forKey: key, perVersion: false, everyXDays: 0)
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:108:6: error: Objective-C interoperability is disabled
106 |     ///   - afterBlock: Runs on every call after the first. `nil` is a no-op.
107 |     ///   - key: A globally-unique identifier.
108 |     @objc(executeOnce:executeAfterFirstTime:forKey:)
    |      `- error: Objective-C interoperability is disabled
109 |     public func executeOnce(
110 |         _ block: (() -> Void)?,
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:126:6: error: Objective-C interoperability is disabled
124 |     ///   - block: The per-version work to perform.
125 |     ///   - key: A globally-unique identifier.
126 |     @objc(executeOncePerVersion:forKey:)
    |      `- error: Objective-C interoperability is disabled
127 |     public func executeOncePerVersion(_ block: (() -> Void)?, forKey key: String) {
128 |         execute(block, afterFirstTime: nil, forKey: key, perVersion: true, everyXDays: 0)
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:138:6: error: Objective-C interoperability is disabled
136 |     ///   - afterBlock: Runs on every other call within the same version.
137 |     ///   - key: A globally-unique identifier.
138 |     @objc(executeOncePerVersion:executeAfterFirstTime:forKey:)
    |      `- error: Objective-C interoperability is disabled
139 |     public func executeOncePerVersion(
140 |         _ block: (() -> Void)?,
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:157:6: error: Objective-C interoperability is disabled
155 |     ///   - key: A globally-unique identifier.
156 |     ///   - days: The minimum interval between runs, in days.
157 |     @objc(executeOncePerInterval:forKey:withDaysInterval:)
    |      `- error: Objective-C interoperability is disabled
158 |     public func executeOncePerInterval(
159 |         _ block: (() -> Void)?,
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:173:6: error: Objective-C interoperability is disabled
171 |     /// - Parameter key: A globally-unique identifier.
172 |     /// - Returns: Whether a block for `key` has ever successfully run.
173 |     @objc(blockWasExecuted:)
    |      `- error: Objective-C interoperability is disabled
174 |     public func blockWasExecuted(_ key: String) -> Bool {
175 |         alreadyExecuted(forKey: key, perVersion: false, everyXDays: 0)
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:187:6: error: Objective-C interoperability is disabled
185 |     /// - Parameter key: A globally-unique identifier.
186 |     /// - Returns: The recorded `Date`, or `nil` for a key that has never run.
187 |     @objc(lastExecutionDateForKey:)
    |      `- error: Objective-C interoperability is disabled
188 |     public func lastExecutionDate(forKey key: String) -> Date? {
189 |         info(forBlock: key)?.lastTime
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:196:6: error: Objective-C interoperability is disabled
194 |     /// After calling `reset()`, ``blockWasExecuted(_:)`` returns `false` for
195 |     /// every key and every `execute…` call behaves as a first-time run.
196 |     @objc public func reset() {
    |      `- error: Objective-C interoperability is disabled
197 |         UserDefaults.standard.removeObject(forKey: kDefaultsKey)
198 |         fkDict = NSMutableDictionary()
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:20:2: error: Objective-C interoperability is disabled
18 | /// don't construct or inspect this directly — it's public only because
19 | /// `NSSecureCoding` and the archive format require it.
20 | @objc(YCFirstTimeObject)
   |  `- error: Objective-C interoperability is disabled
21 | public final class YCFirstTimeObject: NSObject, NSSecureCoding, @unchecked Sendable {
22 |
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:25:6: error: Objective-C interoperability is disabled
23 |     /// The app version (`CFBundleShortVersionString`) captured the last time
24 |     /// the associated block ran.
25 |     @objc public var lastVersion: String?
   |      `- error: Objective-C interoperability is disabled
26 |
27 |     /// The wall-clock instant the associated block last ran.
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:28:6: error: Objective-C interoperability is disabled
26 |
27 |     /// The wall-clock instant the associated block last ran.
28 |     @objc public var lastTime: Date?
   |      `- error: Objective-C interoperability is disabled
29 |
30 |     public static var supportsSecureCoding: Bool { true }
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:32:6: error: Objective-C interoperability is disabled
30 |     public static var supportsSecureCoding: Bool { true }
31 |
32 |     @objc public override init() {
   |      `- error: Objective-C interoperability is disabled
33 |         super.init()
34 |     }
[4/5] Compiling YCFirstTime YCFirstTime.swift
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:47:2: error: Objective-C interoperability is disabled
 45 | /// - ``versionProvider``
 46 | /// - ``nowProvider``
 47 | @objc(YCFirstTime)
    |  `- error: Objective-C interoperability is disabled
 48 | public final class YCFirstTime: NSObject, @unchecked Sendable {
 49 |
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:67:6: error: Objective-C interoperability is disabled
 65 |     ///
 66 |     /// Obj-C callers: available as `+[YCFirstTime shared]`.
 67 |     @objc public class var shared: YCFirstTime { _shared }
    |      `- error: Objective-C interoperability is disabled
 68 |     private static let _shared = YCFirstTime()
 69 |
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:75:6: error: Objective-C interoperability is disabled
 73 |     /// that want an isolated object — set ``versionProvider`` / ``nowProvider``
 74 |     /// before calling any `execute…` method.
 75 |     @objc public override init() {
    |      `- error: Objective-C interoperability is disabled
 76 |         self.fkDict = Self.loadDictionary()
 77 |         super.init()
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:94:6: error: Objective-C interoperability is disabled
 92 |     ///   - key: A globally-unique identifier for this block. Pick something
 93 |     ///     descriptive, e.g. `"onboarding.v1"`.
 94 |     @objc(executeOnce:forKey:)
    |      `- error: Objective-C interoperability is disabled
 95 |     public func executeOnce(_ block: (() -> Void)?, forKey key: String) {
 96 |         execute(block, afterFirstTime: nil, forKey: key, perVersion: false, everyXDays: 0)
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:108:6: error: Objective-C interoperability is disabled
106 |     ///   - afterBlock: Runs on every call after the first. `nil` is a no-op.
107 |     ///   - key: A globally-unique identifier.
108 |     @objc(executeOnce:executeAfterFirstTime:forKey:)
    |      `- error: Objective-C interoperability is disabled
109 |     public func executeOnce(
110 |         _ block: (() -> Void)?,
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:126:6: error: Objective-C interoperability is disabled
124 |     ///   - block: The per-version work to perform.
125 |     ///   - key: A globally-unique identifier.
126 |     @objc(executeOncePerVersion:forKey:)
    |      `- error: Objective-C interoperability is disabled
127 |     public func executeOncePerVersion(_ block: (() -> Void)?, forKey key: String) {
128 |         execute(block, afterFirstTime: nil, forKey: key, perVersion: true, everyXDays: 0)
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:138:6: error: Objective-C interoperability is disabled
136 |     ///   - afterBlock: Runs on every other call within the same version.
137 |     ///   - key: A globally-unique identifier.
138 |     @objc(executeOncePerVersion:executeAfterFirstTime:forKey:)
    |      `- error: Objective-C interoperability is disabled
139 |     public func executeOncePerVersion(
140 |         _ block: (() -> Void)?,
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:157:6: error: Objective-C interoperability is disabled
155 |     ///   - key: A globally-unique identifier.
156 |     ///   - days: The minimum interval between runs, in days.
157 |     @objc(executeOncePerInterval:forKey:withDaysInterval:)
    |      `- error: Objective-C interoperability is disabled
158 |     public func executeOncePerInterval(
159 |         _ block: (() -> Void)?,
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:173:6: error: Objective-C interoperability is disabled
171 |     /// - Parameter key: A globally-unique identifier.
172 |     /// - Returns: Whether a block for `key` has ever successfully run.
173 |     @objc(blockWasExecuted:)
    |      `- error: Objective-C interoperability is disabled
174 |     public func blockWasExecuted(_ key: String) -> Bool {
175 |         alreadyExecuted(forKey: key, perVersion: false, everyXDays: 0)
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:187:6: error: Objective-C interoperability is disabled
185 |     /// - Parameter key: A globally-unique identifier.
186 |     /// - Returns: The recorded `Date`, or `nil` for a key that has never run.
187 |     @objc(lastExecutionDateForKey:)
    |      `- error: Objective-C interoperability is disabled
188 |     public func lastExecutionDate(forKey key: String) -> Date? {
189 |         info(forBlock: key)?.lastTime
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTime.swift:196:6: error: Objective-C interoperability is disabled
194 |     /// After calling `reset()`, ``blockWasExecuted(_:)`` returns `false` for
195 |     /// every key and every `execute…` call behaves as a first-time run.
196 |     @objc public func reset() {
    |      `- error: Objective-C interoperability is disabled
197 |         UserDefaults.standard.removeObject(forKey: kDefaultsKey)
198 |         fkDict = NSMutableDictionary()
[5/5] Compiling YCFirstTime YCFirstTimeObject.swift
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:20:2: error: Objective-C interoperability is disabled
18 | /// don't construct or inspect this directly — it's public only because
19 | /// `NSSecureCoding` and the archive format require it.
20 | @objc(YCFirstTimeObject)
   |  `- error: Objective-C interoperability is disabled
21 | public final class YCFirstTimeObject: NSObject, NSSecureCoding, @unchecked Sendable {
22 |
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:25:6: error: Objective-C interoperability is disabled
23 |     /// The app version (`CFBundleShortVersionString`) captured the last time
24 |     /// the associated block ran.
25 |     @objc public var lastVersion: String?
   |      `- error: Objective-C interoperability is disabled
26 |
27 |     /// The wall-clock instant the associated block last ran.
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:28:6: error: Objective-C interoperability is disabled
26 |
27 |     /// The wall-clock instant the associated block last ran.
28 |     @objc public var lastTime: Date?
   |      `- error: Objective-C interoperability is disabled
29 |
30 |     public static var supportsSecureCoding: Bool { true }
/host/spi-builder-workspace/Sources/YCFirstTime/YCFirstTimeObject.swift:32:6: error: Objective-C interoperability is disabled
30 |     public static var supportsSecureCoding: Bool { true }
31 |
32 |     @objc public override init() {
   |      `- error: Objective-C interoperability is disabled
33 |         super.init()
34 |     }
BUILD FAILURE 6.3 android