The Swift Package Index logo.Swift Package Index

Build Information

Failed to build DSFRational, reference master (64ab89), with Swift 6.3 for Linux on 12 Apr 2026 04:34:06 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/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:basic-6.3-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dagronf/DSFRational.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/dagronf/DSFRational
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 64ab899 Initial Commit
Cloned https://github.com/dagronf/DSFRational.git
Revision (git rev-parse @):
64ab899d65be9e98d767033ccf48a0edfe74a2e8
SUCCESS checkout https://github.com/dagronf/DSFRational.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.3
Building package at path:  $PWD
https://github.com/dagronf/DSFRational.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/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:basic-6.3-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:5a7d791d2ead8a924b1292cb31bf3288eabcfe8880e0b005b00b45b71a5bc36a
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:basic-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/4] Emitting module DSFRational
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:25:2: error: Objective-C interoperability is disabled
 23 |
 24 | /// Representation of a deconstructed `BinaryFloatingPoint` value into its rational components
 25 | @objc public protocol RationalRepresentation: class {
    |  `- error: Objective-C interoperability is disabled
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:26:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 24 | /// Representation of a deconstructed `BinaryFloatingPoint` value into its rational components
 25 | @objc public protocol RationalRepresentation: class {
 26 | 	@objc var fraction: Double { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 27 | 	@objc var whole: Int { get }
 28 | 	@objc var numerator: UInt { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:27:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 25 | @objc public protocol RationalRepresentation: class {
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 28 | 	@objc var numerator: UInt { get }
 29 | 	@objc var denominator: UInt { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:28:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
 28 | 	@objc var numerator: UInt { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 29 | 	@objc var denominator: UInt { get }
 30 | 	@objc var description: String { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:29:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 27 | 	@objc var whole: Int { get }
 28 | 	@objc var numerator: UInt { get }
 29 | 	@objc var denominator: UInt { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 30 | 	@objc var description: String { get }
 31 | }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:30:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 28 | 	@objc var numerator: UInt { get }
 29 | 	@objc var denominator: UInt { get }
 30 | 	@objc var description: String { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 31 | }
 32 |
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:25:47: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
 23 |
 24 | /// Representation of a deconstructed `BinaryFloatingPoint` value into its rational components
 25 | @objc public protocol RationalRepresentation: class {
    |                                               `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:35:2: error: Objective-C interoperability is disabled
 33 | // MARK: - Objective-C compatible functions
 34 |
 35 | @objc public class DSFRational: NSObject {
    |  `- error: Objective-C interoperability is disabled
 36 |
 37 | 	/// Convert a fractional value (eg. 44.25) to numerator/denominators (44 1/4)
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:51:3: error: Objective-C interoperability is disabled
 49 | 	/// assert([[result description] isEqual: @"-11 14/125"]);
 50 | 	/// ```
 51 | 	@objc static func value(for fraction: Double) -> RationalRepresentation {
    |   `- error: Objective-C interoperability is disabled
 52 | 		return fraction.rationalValue
 53 | 	}
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:70:3: error: Objective-C interoperability is disabled
 68 | 	/// assert([[result description] isEqual: @"-11 14/125"]);
 69 | 	/// ```
 70 | 	@objc static func value(for fraction: Double, maxDenominator: Int) -> RationalRepresentation {
    |   `- error: Objective-C interoperability is disabled
 71 | 		return fraction.rational(maxDenominator: maxDenominator)
 72 | 	}
[4/4] Compiling DSFRational DSFRational.swift
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:25:2: error: Objective-C interoperability is disabled
 23 |
 24 | /// Representation of a deconstructed `BinaryFloatingPoint` value into its rational components
 25 | @objc public protocol RationalRepresentation: class {
    |  `- error: Objective-C interoperability is disabled
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:26:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 24 | /// Representation of a deconstructed `BinaryFloatingPoint` value into its rational components
 25 | @objc public protocol RationalRepresentation: class {
 26 | 	@objc var fraction: Double { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 27 | 	@objc var whole: Int { get }
 28 | 	@objc var numerator: UInt { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:27:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 25 | @objc public protocol RationalRepresentation: class {
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 28 | 	@objc var numerator: UInt { get }
 29 | 	@objc var denominator: UInt { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:28:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
 28 | 	@objc var numerator: UInt { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 29 | 	@objc var denominator: UInt { get }
 30 | 	@objc var description: String { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:29:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 27 | 	@objc var whole: Int { get }
 28 | 	@objc var numerator: UInt { get }
 29 | 	@objc var denominator: UInt { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 30 | 	@objc var description: String { get }
 31 | }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:30:3: error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 28 | 	@objc var numerator: UInt { get }
 29 | 	@objc var denominator: UInt { get }
 30 | 	@objc var description: String { get }
    |   `- error: '@objc' can only be used with members of classes, '@objc' protocols, and concrete extensions of classes
 31 | }
 32 |
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:25:47: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
 23 |
 24 | /// Representation of a deconstructed `BinaryFloatingPoint` value into its rational components
 25 | @objc public protocol RationalRepresentation: class {
    |                                               `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
 26 | 	@objc var fraction: Double { get }
 27 | 	@objc var whole: Int { get }
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:35:2: error: Objective-C interoperability is disabled
 33 | // MARK: - Objective-C compatible functions
 34 |
 35 | @objc public class DSFRational: NSObject {
    |  `- error: Objective-C interoperability is disabled
 36 |
 37 | 	/// Convert a fractional value (eg. 44.25) to numerator/denominators (44 1/4)
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:51:3: error: Objective-C interoperability is disabled
 49 | 	/// assert([[result description] isEqual: @"-11 14/125"]);
 50 | 	/// ```
 51 | 	@objc static func value(for fraction: Double) -> RationalRepresentation {
    |   `- error: Objective-C interoperability is disabled
 52 | 		return fraction.rationalValue
 53 | 	}
/host/spi-builder-workspace/Sources/DSFRational/DSFRational.swift:70:3: error: Objective-C interoperability is disabled
 68 | 	/// assert([[result description] isEqual: @"-11 14/125"]);
 69 | 	/// ```
 70 | 	@objc static func value(for fraction: Double, maxDenominator: Int) -> RationalRepresentation {
    |   `- error: Objective-C interoperability is disabled
 71 | 		return fraction.rational(maxDenominator: maxDenominator)
 72 | 	}
BUILD FAILURE 6.3 linux