The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build Thingy, reference 3.0.2 (1ed5bf), with Swift 6.2 (beta) for macOS (SPM) on 18 Jun 2025 11:53:20 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bojan/Thingy.git
Reference: 3.0.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/bojan/Thingy
 * tag               3.0.2      -> FETCH_HEAD
HEAD is now at 1ed5bfc Update the documentation.
Cloned https://github.com/bojan/Thingy.git
Revision (git rev-parse @):
1ed5bfc174be905e4aed9c15269c17e3e6facec1
SUCCESS checkout https://github.com/bojan/Thingy.git at 3.0.2
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/bojan/Thingy.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-1EA4D86E10B52AF.txt
[3/15] Compiling Thingy Protocols.swift
[4/16] Compiling Thingy Device+ProductLines.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/16] Compiling Thingy Device+MarketingName.swift
[6/16] Compiling Thingy Device+ModelNumbers.swift
[7/16] Compiling Thingy Family.swift
[8/16] Compiling Thingy ThingyError.swift
[9/16] Compiling Thingy Device.swift
[10/16] Compiling Thingy Device+Comparison.swift
[11/16] Compiling Thingy Lines.swift
[12/16] Emitting module Thingy
/Users/admin/builder/spi-builder-workspace/Sources/Model/Display.swift:27:15: error: type 'Display' does not conform to protocol 'Equatable'
 25 |
 26 | /// A struct that provides an extended info on the display.
 27 | public struct Display: Equatable {
    |               |- error: type 'Display' does not conform to protocol 'Equatable'
    |               `- note: add stubs for conformance
 28 |
 29 | 	/// An enum that describes the display size.
    :
 98 |
 99 | 	/// Resolution of the device.
100 | 	public var resolution: CGSize
    |             `- note: stored property type 'CGSize' does not conform to protocol 'Equatable', preventing synthesized conformance of 'Display' to 'Equatable'
101 |
102 | 	/// Full physical resolution of the device, without any down-/up-sampling.
103 | 	public var physicalResolution: CGSize
    |             `- note: stored property type 'CGSize' does not conform to protocol 'Equatable', preventing synthesized conformance of 'Display' to 'Equatable'
104 |
105 | 	/// Rendered resolution of the device, with down-/up-sampling.
106 | 	public var renderedResolution: CGSize
    |             `- note: stored property type 'CGSize' does not conform to protocol 'Equatable', preventing synthesized conformance of 'Display' to 'Equatable'
107 |
108 | 	/// Screen scale, 1.0 for non-Retina devices.
Swift.==:1:24: note: candidate would match if 'Display' conformed to 'RawRepresentable'
1 | @inlinable public func == <T>(lhs: T, rhs: T) -> Bool where T : RawRepresentable, T.RawValue : Equatable
  |                        `- note: candidate would match if 'Display' conformed to 'RawRepresentable'
Swift.FloatingPoint.==:2:20: note: candidate would match if 'Display' conformed to 'FloatingPoint'
1 | protocol FloatingPoint {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to 'FloatingPoint'
3 |
Swift.BinaryInteger.==:2:20: note: candidate would match if 'Display' conformed to 'BinaryInteger'
1 | protocol BinaryInteger {
2 | public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : BinaryInteger}
  |                    `- note: candidate would match if 'Display' conformed to 'BinaryInteger'
3 |
Swift._Pointer.==:2:20: note: candidate would match if 'Display' conformed to '_Pointer'
1 | protocol _Pointer {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to '_Pointer'
3 |
Swift._Pointer.==:2:31: note: candidate would match if 'Display' conformed to '_Pointer'
1 | protocol _Pointer {
2 | @inlinable public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : _Pointer}
  |                               `- note: candidate would match if 'Display' conformed to '_Pointer'
3 |
Swift.Strideable.==:2:31: note: candidate would match if 'Display' conformed to 'Strideable'
1 | protocol Strideable {
2 | @inlinable public static func == (x: Self, y: Self) -> Bool}
  |                               `- note: candidate would match if 'Display' conformed to 'Strideable'
3 |
Swift.StringProtocol.==:2:31: note: candidate would match if 'Display' conformed to 'StringProtocol'
1 | protocol StringProtocol {
2 | @inlinable public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : StringProtocol}
  |                               `- note: candidate would match if 'Display' conformed to 'StringProtocol'
3 |
Swift.SIMD.==:2:20: note: candidate would match if 'Display' conformed to 'SIMD'
1 | protocol SIMD {
2 | public static func == (a: Self, b: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to 'SIMD'
3 |
Foundation.AttributedStringProtocol.==:2:20: note: candidate would match if 'Display' conformed to 'AttributedStringProtocol'
1 | protocol AttributedStringProtocol {
2 | public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : AttributedStringProtocol}
  |                    `- note: candidate would match if 'Display' conformed to 'AttributedStringProtocol'
3 |
Foundation._BridgedStoredNSError.==:2:20: note: candidate would match if 'Display' conformed to '_BridgedStoredNSError'
1 | protocol _BridgedStoredNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to '_BridgedStoredNSError'
3 |
CoreFoundation._CFObject.==:2:20: note: candidate would match if 'Display' conformed to '_CFObject'
1 | protocol _CFObject {
2 | public static func == (left: Self, right: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to '_CFObject'
3 |
Swift.Equatable.==:2:13: note: protocol requires function '==' with type '(Display, Display) -> Bool'
1 | protocol Equatable {
2 | static func == (lhs: Self, rhs: Self) -> Bool}
  |             `- note: protocol requires function '==' with type '(Display, Display) -> Bool'
3 |
[13/16] Compiling Thingy Display.swift
/Users/admin/builder/spi-builder-workspace/Sources/Model/Display.swift:27:15: error: type 'Display' does not conform to protocol 'Equatable'
 25 |
 26 | /// A struct that provides an extended info on the display.
 27 | public struct Display: Equatable {
    |               |- error: type 'Display' does not conform to protocol 'Equatable'
    |               `- note: add stubs for conformance
 28 |
 29 | 	/// An enum that describes the display size.
    :
 98 |
 99 | 	/// Resolution of the device.
100 | 	public var resolution: CGSize
    |             `- note: stored property type 'CGSize' does not conform to protocol 'Equatable', preventing synthesized conformance of 'Display' to 'Equatable'
101 |
102 | 	/// Full physical resolution of the device, without any down-/up-sampling.
103 | 	public var physicalResolution: CGSize
    |             `- note: stored property type 'CGSize' does not conform to protocol 'Equatable', preventing synthesized conformance of 'Display' to 'Equatable'
104 |
105 | 	/// Rendered resolution of the device, with down-/up-sampling.
106 | 	public var renderedResolution: CGSize
    |             `- note: stored property type 'CGSize' does not conform to protocol 'Equatable', preventing synthesized conformance of 'Display' to 'Equatable'
107 |
108 | 	/// Screen scale, 1.0 for non-Retina devices.
Swift.==:1:24: note: candidate would match if 'Display' conformed to 'RawRepresentable'
1 | @inlinable public func == <T>(lhs: T, rhs: T) -> Bool where T : RawRepresentable, T.RawValue : Equatable
  |                        `- note: candidate would match if 'Display' conformed to 'RawRepresentable'
Swift.FloatingPoint.==:2:20: note: candidate would match if 'Display' conformed to 'FloatingPoint'
1 | protocol FloatingPoint {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to 'FloatingPoint'
3 |
Swift.BinaryInteger.==:2:20: note: candidate would match if 'Display' conformed to 'BinaryInteger'
1 | protocol BinaryInteger {
2 | public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : BinaryInteger}
  |                    `- note: candidate would match if 'Display' conformed to 'BinaryInteger'
3 |
Swift._Pointer.==:2:20: note: candidate would match if 'Display' conformed to '_Pointer'
1 | protocol _Pointer {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to '_Pointer'
3 |
Swift._Pointer.==:2:31: note: candidate would match if 'Display' conformed to '_Pointer'
1 | protocol _Pointer {
2 | @inlinable public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : _Pointer}
  |                               `- note: candidate would match if 'Display' conformed to '_Pointer'
3 |
Swift.Strideable.==:2:31: note: candidate would match if 'Display' conformed to 'Strideable'
1 | protocol Strideable {
2 | @inlinable public static func == (x: Self, y: Self) -> Bool}
  |                               `- note: candidate would match if 'Display' conformed to 'Strideable'
3 |
Swift.StringProtocol.==:2:31: note: candidate would match if 'Display' conformed to 'StringProtocol'
1 | protocol StringProtocol {
2 | @inlinable public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : StringProtocol}
  |                               `- note: candidate would match if 'Display' conformed to 'StringProtocol'
3 |
Swift.SIMD.==:2:20: note: candidate would match if 'Display' conformed to 'SIMD'
1 | protocol SIMD {
2 | public static func == (a: Self, b: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to 'SIMD'
3 |
Foundation.AttributedStringProtocol.==:2:20: note: candidate would match if 'Display' conformed to 'AttributedStringProtocol'
1 | protocol AttributedStringProtocol {
2 | public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : AttributedStringProtocol}
  |                    `- note: candidate would match if 'Display' conformed to 'AttributedStringProtocol'
3 |
Foundation._BridgedStoredNSError.==:2:20: note: candidate would match if 'Display' conformed to '_BridgedStoredNSError'
1 | protocol _BridgedStoredNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to '_BridgedStoredNSError'
3 |
CoreFoundation._CFObject.==:2:20: note: candidate would match if 'Display' conformed to '_CFObject'
1 | protocol _CFObject {
2 | public static func == (left: Self, right: Self) -> Bool}
  |                    `- note: candidate would match if 'Display' conformed to '_CFObject'
3 |
Swift.Equatable.==:2:13: note: protocol requires function '==' with type '(Display, Display) -> Bool'
1 | protocol Equatable {
2 | static func == (lhs: Self, rhs: Self) -> Bool}
  |             `- note: protocol requires function '==' with type '(Display, Display) -> Bool'
3 |
[14/16] Compiling Thingy Device+Display.swift
/Users/admin/builder/spi-builder-workspace/Sources/Extensions/Device+Display.swift:132:60: error: type 'CGSize' has no member 'zero'
130 |
131 | 		default:
132 | 			return Display(size: .notApplicable, resolution: CGSize.zero, physicalResolution: CGSize.zero, renderedResolution: CGSize.zero, scale: 0, density: 0, hasTrueTone: false, colorSpace: .sRGB)
    |                                                            `- error: type 'CGSize' has no member 'zero'
133 |
134 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/Extensions/Device+Display.swift:132:93: error: type 'CGSize' has no member 'zero'
130 |
131 | 		default:
132 | 			return Display(size: .notApplicable, resolution: CGSize.zero, physicalResolution: CGSize.zero, renderedResolution: CGSize.zero, scale: 0, density: 0, hasTrueTone: false, colorSpace: .sRGB)
    |                                                                                             `- error: type 'CGSize' has no member 'zero'
133 |
134 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/Extensions/Device+Display.swift:132:126: error: type 'CGSize' has no member 'zero'
130 |
131 | 		default:
132 | 			return Display(size: .notApplicable, resolution: CGSize.zero, physicalResolution: CGSize.zero, renderedResolution: CGSize.zero, scale: 0, density: 0, hasTrueTone: false, colorSpace: .sRGB)
    |                                                                                                                              `- error: type 'CGSize' has no member 'zero'
133 |
134 | 		}
[15/16] Compiling Thingy Device+Family.swift
/Users/admin/builder/spi-builder-workspace/Sources/Extensions/Device+Display.swift:132:60: error: type 'CGSize' has no member 'zero'
130 |
131 | 		default:
132 | 			return Display(size: .notApplicable, resolution: CGSize.zero, physicalResolution: CGSize.zero, renderedResolution: CGSize.zero, scale: 0, density: 0, hasTrueTone: false, colorSpace: .sRGB)
    |                                                            `- error: type 'CGSize' has no member 'zero'
133 |
134 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/Extensions/Device+Display.swift:132:93: error: type 'CGSize' has no member 'zero'
130 |
131 | 		default:
132 | 			return Display(size: .notApplicable, resolution: CGSize.zero, physicalResolution: CGSize.zero, renderedResolution: CGSize.zero, scale: 0, density: 0, hasTrueTone: false, colorSpace: .sRGB)
    |                                                                                             `- error: type 'CGSize' has no member 'zero'
133 |
134 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/Extensions/Device+Display.swift:132:126: error: type 'CGSize' has no member 'zero'
130 |
131 | 		default:
132 | 			return Display(size: .notApplicable, resolution: CGSize.zero, physicalResolution: CGSize.zero, renderedResolution: CGSize.zero, scale: 0, density: 0, hasTrueTone: false, colorSpace: .sRGB)
    |                                                                                                                              `- error: type 'CGSize' has no member 'zero'
133 |
134 | 		}
[16/16] Compiling Thingy RawDevice.swift
BUILD FAILURE 6.2 macosSpm