Build Information
Failed to build Thingy, reference 3.0.2 (1ed5bf
), with Swift 6.1 for macOS (SPM) on 25 Apr 2025 20:57:52 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
Build Log
========================================
RunAll
========================================
Builder version: 4.61.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
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "thingy",
"name": "Thingy",
"url": "https://github.com/bojan/Thingy.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Thingy",
"dependencies": [
]
}
]
}
Fetching https://github.com/bojan/Thingy.git
[1/1177] Fetching thingy
Fetched https://github.com/bojan/Thingy.git from cache (0.86s)
Creating working copy for https://github.com/bojan/Thingy.git
Working copy of https://github.com/bojan/Thingy.git resolved at 3.0.2 (1ed5bfc)
warning: '.resolve-product-dependencies': dependency 'thingy' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/bojan/Thingy.git
https://github.com/bojan/Thingy.git
{
"dependencies" : [
],
"manifest_display_name" : "Thingy",
"name" : "Thingy",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "9.0"
},
{
"name" : "watchos",
"version" : "2.0"
}
],
"products" : [
{
"name" : "Thingy",
"targets" : [
"Thingy"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ThingyTests",
"module_type" : "SwiftTarget",
"name" : "ThingyTests",
"path" : "Tests",
"sources" : [
"ComparisonTests.swift",
"DeviceTests.swift",
"RawDeviceTests.swift",
"XCTest+Throwable.swift"
],
"target_dependencies" : [
"Thingy"
],
"type" : "test"
},
{
"c99name" : "Thingy",
"module_type" : "SwiftTarget",
"name" : "Thingy",
"path" : "Sources",
"product_memberships" : [
"Thingy"
],
"sources" : [
"Device.swift",
"Extensions/Device+Comparison.swift",
"Extensions/Device+Display.swift",
"Extensions/Device+Family.swift",
"Extensions/Device+MarketingName.swift",
"Extensions/Device+ModelNumbers.swift",
"Extensions/Device+ProductLines.swift",
"Model/Display.swift",
"Model/Family.swift",
"Model/Lines.swift",
"Model/ThingyError.swift",
"Protocols.swift",
"RawDevice.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/15] Compiling Thingy Lines.swift
[4/16] Compiling Thingy Protocols.swift
[5/16] Compiling Thingy Family.swift
[6/16] Compiling Thingy ThingyError.swift
[7/16] Compiling Thingy Device+ProductLines.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/16] Compiling Thingy Device+MarketingName.swift
[9/16] Compiling Thingy Device+ModelNumbers.swift
[10/16] Compiling Thingy Device.swift
/Users/admin/builder/spi-builder-workspace/Sources/Device.swift:148:20: warning: static property 'allCases' is not concurrency-safe because non-'Sendable' type '[Device]' may have shared mutable state; this is an error in the Swift 6 language mode
27 | ///
28 | /// For iOS devices, only devices supporting iOS 8 are included.
29 | public enum Device: CaseIterable {
| `- note: consider making enum 'Device' conform to the 'Sendable' protocol
30 |
31 | /// - iPhone4S: iPhone 4S.
:
146 |
147 | /// All real-device values.
148 | public static let allCases: [Device] = [
| |- warning: static property 'allCases' is not concurrency-safe because non-'Sendable' type '[Device]' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'allCases' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
149 | .iPhone4S,
150 | .iPhone5,
[11/16] Compiling Thingy Device+Comparison.swift
/Users/admin/builder/spi-builder-workspace/Sources/Device.swift:148:20: warning: static property 'allCases' is not concurrency-safe because non-'Sendable' type '[Device]' may have shared mutable state; this is an error in the Swift 6 language mode
27 | ///
28 | /// For iOS devices, only devices supporting iOS 8 are included.
29 | public enum Device: CaseIterable {
| `- note: consider making enum 'Device' conform to the 'Sendable' protocol
30 |
31 | /// - iPhone4S: iPhone 4S.
:
146 |
147 | /// All real-device values.
148 | public static let allCases: [Device] = [
| |- warning: static property 'allCases' is not concurrency-safe because non-'Sendable' type '[Device]' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'allCases' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
149 | .iPhone4S,
150 | .iPhone5,
[12/16] Emitting module Thingy
/Users/admin/builder/spi-builder-workspace/Sources/Device.swift:148:20: warning: static property 'allCases' is not concurrency-safe because non-'Sendable' type '[Device]' may have shared mutable state; this is an error in the Swift 6 language mode
27 | ///
28 | /// For iOS devices, only devices supporting iOS 8 are included.
29 | public enum Device: CaseIterable {
| `- note: consider making enum 'Device' conform to the 'Sendable' protocol
30 |
31 | /// - iPhone4S: iPhone 4S.
:
146 |
147 | /// All real-device values.
148 | public static let allCases: [Device] = [
| |- warning: static property 'allCases' is not concurrency-safe because non-'Sendable' type '[Device]' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'allCases' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
149 | .iPhone4S,
150 | .iPhone5,
/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
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/14] Compiling Thingy Protocols.swift
[3/14] Compiling Thingy Lines.swift
[4/14] Compiling Thingy ThingyError.swift
[5/14] 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 |
[6/15] Compiling Thingy Device+ProductLines.swift
[7/15] Compiling Thingy Family.swift
[8/15] Compiling Thingy Device+MarketingName.swift
[9/15] Compiling Thingy Device+ModelNumbers.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/15] Compiling Thingy Device.swift
[11/15] Compiling Thingy Device+Comparison.swift
[12/15] 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/15] 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 | }
[14/15] 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 | }
[15/15] Compiling Thingy RawDevice.swift
BUILD FAILURE 6.1 macosSpm