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