Build Information
Failed to build Attabench, reference master (7fc220), with Swift 6.3 for macOS (SPM) on 12 Apr 2026 08:53:23 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64Build Log
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:75:16: error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
73 |
74 | deinit {
75 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
76 | for (sink, field) in fields {
77 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:11:26: error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
9 | extension ObservableSetType {
10 | public func sorted(by areInIncreasingOrder: @escaping (Element, Element) -> Bool) -> AnyObservableArray<Element> {
11 | let comparator = Comparator(areInIncreasingOrder)
| `- error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
:
37 | }
38 |
39 | private final class Comparator<Element: Equatable> {
| `- note: where 'Element' = 'Self.Element'
40 | let comparator: (Element, Element) -> Bool
41 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:13:54: error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
11 | let comparator = Comparator(areInIncreasingOrder)
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
| `- error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
14 | .map { [comparator] in _ = comparator; return $0.element }
15 | }
:
48 | }
49 |
50 | private struct ComparableWrapper<Element: Equatable>: Comparable {
| `- note: where 'Element' = 'Self.Element'
51 | unowned(unsafe) let comparator: Comparator<Element>
52 | let element: Element
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:34:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
32 | unowned(unsafe) let owner: Owner
33 |
34 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
35 | owner.applyParentUpdate(update)
36 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:29:20: error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
27 | typealias Change = ArrayChange<Element>
28 |
29 | private struct SortingSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
30 | typealias Owner = SetSortingByMappingToComparable
31 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:60:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
58 | }
59 |
60 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
61 | switch update {
62 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:49:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
47 | super.init()
48 |
49 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
50 | let transformed = transform(element)
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:53:16: error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
52 | }
53 | parent.add(SortingSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:57:16: error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
55 |
56 | deinit {
57 | parent.remove(SortingSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:25:20: error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByMappingToObservableComparable
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:121:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
119 | }
120 |
121 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
122 | switch update {
123 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | _ = self._insert(newElement(element))
69 | }
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:70:16: error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
68 | _ = self._insert(newElement(element))
69 | }
70 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
71 | }
72 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:74:16: error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 |
73 | deinit {
74 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
75 | for (sink, field) in fields {
76 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
[178/186] Compiling GlueKit SetSortingByMappingToObservableComparable.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:27:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
25 | unowned(unsafe) let owner: Owner
26 |
27 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | owner.applyParentUpdate(update)
29 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:22:20: error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
20 | where Field.Value: Hashable {
21 |
22 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
23 | typealias Owner = SetMappingForValueField
24 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:66:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
64 | }
65 |
66 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
67 | switch update {
68 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:26:27: error: type 'Self.Element' does not conform to protocol 'Hashable'
24 | var observableCount: AnyObservableValue<Int> { get }
25 | var anyObservableValue: AnyObservableValue<Base> { get }
26 | var anyObservableSet: AnyObservableSet<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
27 | }
28 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:68:34: error: type 'Self.Element' does not conform to protocol 'Hashable'
66 | }
67 |
68 | public var anyObservableSet: AnyObservableSet<Element> {
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
69 | return AnyObservableSet(box: ObservableSetBox(self))
70 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:49:16: error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
47 | self.key = key
48 | super.init()
49 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
50 |
51 | for e in parent.value {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:19:16: error: type 'Self.Element' does not conform to protocol 'Hashable'
17 | var isBuffered: Bool { get }
18 | var count: Int { get }
19 | var value: Set<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:51:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
49 | parent.add(ParentSink(owner: self))
50 |
51 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
52 | let field = key(e)
53 | field.add(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:59:16: error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
57 |
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
60 | for e in parent.value {
61 | let field = key(e)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:60:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
60 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
61 | let field = key(e)
62 | field.remove(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:21:29: error: type 'Self.Element' does not conform to protocol 'Hashable'
19 | var value: Set<Element> { get }
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
22 | func isSuperset(of other: Set<Element>) -> Bool
23 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:22:31: error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
22 | func isSuperset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
23 |
24 | var observableCount: AnyObservableValue<Int> { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:15:22: error: type 'Self.Element' does not conform to protocol 'Hashable'
13 | associatedtype Element
14 |
15 | typealias Base = Set<Element>
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
16 |
17 | var isBuffered: Bool { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:10:31: error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
8 |
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
| `- error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
11 | return UnpackedObservableSetReference(self).anyObservableSet
12 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:17:85: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
15 | /// A mutable reference to an `AnyObservableSet` that's also an observable set.
16 | /// You can switch to another target set without having to re-register subscribers.
17 | private final class UnpackedObservableSetReference<Reference: ObservableValueType>: _BaseObservableSet<Reference.Value.Element>
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
18 | where Reference.Value: ObservableSetType {
19 | typealias Target = Reference.Value
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:21:24: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
19 | typealias Target = Reference.Value
20 | typealias Element = Target.Element
21 | typealias Change = SetChange<Element>
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
22 |
23 | private struct ReferenceSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:38:32: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
36 | unowned(unsafe) let owner: Owner
37 |
38 | func receive(_ update: SetUpdate<Reference.Value.Element>) {
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
39 | owner.applyTargetUpdate(update)
40 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:33:20: error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
31 | }
32 |
33 | private struct TargetSink: UniqueOwnedSink {
| |- error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
34 | typealias Owner = UnpackedObservableSetReference
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:79:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
77 | }
78 |
79 | func applyTargetUpdate(_ update: SetUpdate<Element>) {
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
80 | switch update {
81 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:92:25: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
90 | override var isBuffered: Bool { return false }
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:93:19: error: method does not override any method from its superclass
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
| `- error: method does not override any method from its superclass
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:120:15: note: potential overridden instance method 'contains' here
118 | open var isBuffered: Bool { return false }
119 | open var count: Int { return value.count }
120 | open func contains(_ member: Element) -> Bool { return value.contains(member) }
| `- note: potential overridden instance method 'contains' here
121 | open func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
122 | open func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:94:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
96 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:95:40: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:11:53: error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
11 | return UnpackedObservableSetReference(self).anyObservableSet
| `- error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:55:16: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
53 | let target = _reference.value
54 | _target = target
55 | target.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
56 | }
57 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:59:18: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
57 |
58 | override func deactivate() {
59 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
60 | _reference.remove(ReferenceSink(owner: self))
61 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:69:26: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
67 | case .change(let change):
68 | if isConnected {
69 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:71:26: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
69 | _target!.remove(TargetSink(owner: self))
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
73 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetChange.swift:9:15: note: where 'Element' = 'Reference.Value.Element'
7 | //
8 |
9 | public struct SetChange<Element: Hashable>: ChangeType {
| `- note: where 'Element' = 'Reference.Value.Element'
10 | public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:33:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
31 | public var count: Int { return value.count }
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:34:38: error: type 'Self.Element' does not conform to protocol 'Hashable'
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
35 |
36 | public var isEmpty: Bool { return count == 0 }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:25:20: error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByComparableField
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:115:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
113 | }
114 |
115 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
116 | switch update {
117 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | let key = newElement(element)
69 | _ = self.insert(key, element)
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:71:16: error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
69 | _ = self.insert(key, element)
70 | }
71 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 | }
73 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:75:16: error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
73 |
74 | deinit {
75 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
76 | for (sink, field) in fields {
77 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:11:26: error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
9 | extension ObservableSetType {
10 | public func sorted(by areInIncreasingOrder: @escaping (Element, Element) -> Bool) -> AnyObservableArray<Element> {
11 | let comparator = Comparator(areInIncreasingOrder)
| `- error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
:
37 | }
38 |
39 | private final class Comparator<Element: Equatable> {
| `- note: where 'Element' = 'Self.Element'
40 | let comparator: (Element, Element) -> Bool
41 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:13:54: error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
11 | let comparator = Comparator(areInIncreasingOrder)
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
| `- error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
14 | .map { [comparator] in _ = comparator; return $0.element }
15 | }
:
48 | }
49 |
50 | private struct ComparableWrapper<Element: Equatable>: Comparable {
| `- note: where 'Element' = 'Self.Element'
51 | unowned(unsafe) let comparator: Comparator<Element>
52 | let element: Element
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:34:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
32 | unowned(unsafe) let owner: Owner
33 |
34 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
35 | owner.applyParentUpdate(update)
36 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:29:20: error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
27 | typealias Change = ArrayChange<Element>
28 |
29 | private struct SortingSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
30 | typealias Owner = SetSortingByMappingToComparable
31 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:60:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
58 | }
59 |
60 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
61 | switch update {
62 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:49:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
47 | super.init()
48 |
49 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
50 | let transformed = transform(element)
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:53:16: error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
52 | }
53 | parent.add(SortingSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:57:16: error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
55 |
56 | deinit {
57 | parent.remove(SortingSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:25:20: error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByMappingToObservableComparable
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:121:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
119 | }
120 |
121 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
122 | switch update {
123 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | _ = self._insert(newElement(element))
69 | }
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:70:16: error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
68 | _ = self._insert(newElement(element))
69 | }
70 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
71 | }
72 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:74:16: error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 |
73 | deinit {
74 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
75 | for (sink, field) in fields {
76 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
[179/186] Compiling GlueKit SetVariable.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:27:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
25 | unowned(unsafe) let owner: Owner
26 |
27 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | owner.applyParentUpdate(update)
29 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:22:20: error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
20 | where Field.Value: Hashable {
21 |
22 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
23 | typealias Owner = SetMappingForValueField
24 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:66:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
64 | }
65 |
66 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
67 | switch update {
68 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:26:27: error: type 'Self.Element' does not conform to protocol 'Hashable'
24 | var observableCount: AnyObservableValue<Int> { get }
25 | var anyObservableValue: AnyObservableValue<Base> { get }
26 | var anyObservableSet: AnyObservableSet<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
27 | }
28 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:68:34: error: type 'Self.Element' does not conform to protocol 'Hashable'
66 | }
67 |
68 | public var anyObservableSet: AnyObservableSet<Element> {
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
69 | return AnyObservableSet(box: ObservableSetBox(self))
70 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:49:16: error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
47 | self.key = key
48 | super.init()
49 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
50 |
51 | for e in parent.value {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:19:16: error: type 'Self.Element' does not conform to protocol 'Hashable'
17 | var isBuffered: Bool { get }
18 | var count: Int { get }
19 | var value: Set<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:51:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
49 | parent.add(ParentSink(owner: self))
50 |
51 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
52 | let field = key(e)
53 | field.add(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:59:16: error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
57 |
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
60 | for e in parent.value {
61 | let field = key(e)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:60:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
60 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
61 | let field = key(e)
62 | field.remove(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:21:29: error: type 'Self.Element' does not conform to protocol 'Hashable'
19 | var value: Set<Element> { get }
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
22 | func isSuperset(of other: Set<Element>) -> Bool
23 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:22:31: error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
22 | func isSuperset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
23 |
24 | var observableCount: AnyObservableValue<Int> { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:15:22: error: type 'Self.Element' does not conform to protocol 'Hashable'
13 | associatedtype Element
14 |
15 | typealias Base = Set<Element>
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
16 |
17 | var isBuffered: Bool { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:10:31: error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
8 |
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
| `- error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
11 | return UnpackedObservableSetReference(self).anyObservableSet
12 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:17:85: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
15 | /// A mutable reference to an `AnyObservableSet` that's also an observable set.
16 | /// You can switch to another target set without having to re-register subscribers.
17 | private final class UnpackedObservableSetReference<Reference: ObservableValueType>: _BaseObservableSet<Reference.Value.Element>
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
18 | where Reference.Value: ObservableSetType {
19 | typealias Target = Reference.Value
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:21:24: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
19 | typealias Target = Reference.Value
20 | typealias Element = Target.Element
21 | typealias Change = SetChange<Element>
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
22 |
23 | private struct ReferenceSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:38:32: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
36 | unowned(unsafe) let owner: Owner
37 |
38 | func receive(_ update: SetUpdate<Reference.Value.Element>) {
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
39 | owner.applyTargetUpdate(update)
40 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:33:20: error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
31 | }
32 |
33 | private struct TargetSink: UniqueOwnedSink {
| |- error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
34 | typealias Owner = UnpackedObservableSetReference
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:79:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
77 | }
78 |
79 | func applyTargetUpdate(_ update: SetUpdate<Element>) {
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
80 | switch update {
81 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:92:25: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
90 | override var isBuffered: Bool { return false }
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:93:19: error: method does not override any method from its superclass
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
| `- error: method does not override any method from its superclass
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:120:15: note: potential overridden instance method 'contains' here
118 | open var isBuffered: Bool { return false }
119 | open var count: Int { return value.count }
120 | open func contains(_ member: Element) -> Bool { return value.contains(member) }
| `- note: potential overridden instance method 'contains' here
121 | open func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
122 | open func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:94:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
96 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:95:40: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:11:53: error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
11 | return UnpackedObservableSetReference(self).anyObservableSet
| `- error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:55:16: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
53 | let target = _reference.value
54 | _target = target
55 | target.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
56 | }
57 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:59:18: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
57 |
58 | override func deactivate() {
59 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
60 | _reference.remove(ReferenceSink(owner: self))
61 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:69:26: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
67 | case .change(let change):
68 | if isConnected {
69 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:71:26: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
69 | _target!.remove(TargetSink(owner: self))
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
73 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetChange.swift:9:15: note: where 'Element' = 'Reference.Value.Element'
7 | //
8 |
9 | public struct SetChange<Element: Hashable>: ChangeType {
| `- note: where 'Element' = 'Reference.Value.Element'
10 | public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:33:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
31 | public var count: Int { return value.count }
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:34:38: error: type 'Self.Element' does not conform to protocol 'Hashable'
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
35 |
36 | public var isEmpty: Bool { return count == 0 }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:25:20: error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByComparableField
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:115:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
113 | }
114 |
115 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
116 | switch update {
117 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | let key = newElement(element)
69 | _ = self.insert(key, element)
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:71:16: error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
69 | _ = self.insert(key, element)
70 | }
71 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 | }
73 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:75:16: error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
73 |
74 | deinit {
75 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
76 | for (sink, field) in fields {
77 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:11:26: error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
9 | extension ObservableSetType {
10 | public func sorted(by areInIncreasingOrder: @escaping (Element, Element) -> Bool) -> AnyObservableArray<Element> {
11 | let comparator = Comparator(areInIncreasingOrder)
| `- error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
:
37 | }
38 |
39 | private final class Comparator<Element: Equatable> {
| `- note: where 'Element' = 'Self.Element'
40 | let comparator: (Element, Element) -> Bool
41 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:13:54: error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
11 | let comparator = Comparator(areInIncreasingOrder)
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
| `- error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
14 | .map { [comparator] in _ = comparator; return $0.element }
15 | }
:
48 | }
49 |
50 | private struct ComparableWrapper<Element: Equatable>: Comparable {
| `- note: where 'Element' = 'Self.Element'
51 | unowned(unsafe) let comparator: Comparator<Element>
52 | let element: Element
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:34:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
32 | unowned(unsafe) let owner: Owner
33 |
34 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
35 | owner.applyParentUpdate(update)
36 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:29:20: error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
27 | typealias Change = ArrayChange<Element>
28 |
29 | private struct SortingSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
30 | typealias Owner = SetSortingByMappingToComparable
31 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:60:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
58 | }
59 |
60 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
61 | switch update {
62 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:49:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
47 | super.init()
48 |
49 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
50 | let transformed = transform(element)
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:53:16: error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
52 | }
53 | parent.add(SortingSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:57:16: error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
55 |
56 | deinit {
57 | parent.remove(SortingSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:25:20: error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByMappingToObservableComparable
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:121:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
119 | }
120 |
121 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
122 | switch update {
123 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | _ = self._insert(newElement(element))
69 | }
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:70:16: error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
68 | _ = self._insert(newElement(element))
69 | }
70 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
71 | }
72 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:74:16: error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 |
73 | deinit {
74 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
75 | for (sink, field) in fields {
76 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
[180/186] Compiling GlueKit Signal.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:27:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
25 | unowned(unsafe) let owner: Owner
26 |
27 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | owner.applyParentUpdate(update)
29 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:22:20: error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
20 | where Field.Value: Hashable {
21 |
22 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
23 | typealias Owner = SetMappingForValueField
24 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:66:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
64 | }
65 |
66 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
67 | switch update {
68 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:26:27: error: type 'Self.Element' does not conform to protocol 'Hashable'
24 | var observableCount: AnyObservableValue<Int> { get }
25 | var anyObservableValue: AnyObservableValue<Base> { get }
26 | var anyObservableSet: AnyObservableSet<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
27 | }
28 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:68:34: error: type 'Self.Element' does not conform to protocol 'Hashable'
66 | }
67 |
68 | public var anyObservableSet: AnyObservableSet<Element> {
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
69 | return AnyObservableSet(box: ObservableSetBox(self))
70 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:49:16: error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
47 | self.key = key
48 | super.init()
49 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
50 |
51 | for e in parent.value {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:19:16: error: type 'Self.Element' does not conform to protocol 'Hashable'
17 | var isBuffered: Bool { get }
18 | var count: Int { get }
19 | var value: Set<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:51:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
49 | parent.add(ParentSink(owner: self))
50 |
51 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
52 | let field = key(e)
53 | field.add(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:59:16: error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
57 |
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
60 | for e in parent.value {
61 | let field = key(e)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:60:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
60 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
61 | let field = key(e)
62 | field.remove(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:21:29: error: type 'Self.Element' does not conform to protocol 'Hashable'
19 | var value: Set<Element> { get }
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
22 | func isSuperset(of other: Set<Element>) -> Bool
23 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:22:31: error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
22 | func isSuperset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
23 |
24 | var observableCount: AnyObservableValue<Int> { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:15:22: error: type 'Self.Element' does not conform to protocol 'Hashable'
13 | associatedtype Element
14 |
15 | typealias Base = Set<Element>
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
16 |
17 | var isBuffered: Bool { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:10:31: error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
8 |
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
| `- error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
11 | return UnpackedObservableSetReference(self).anyObservableSet
12 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:17:85: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
15 | /// A mutable reference to an `AnyObservableSet` that's also an observable set.
16 | /// You can switch to another target set without having to re-register subscribers.
17 | private final class UnpackedObservableSetReference<Reference: ObservableValueType>: _BaseObservableSet<Reference.Value.Element>
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
18 | where Reference.Value: ObservableSetType {
19 | typealias Target = Reference.Value
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:21:24: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
19 | typealias Target = Reference.Value
20 | typealias Element = Target.Element
21 | typealias Change = SetChange<Element>
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
22 |
23 | private struct ReferenceSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:38:32: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
36 | unowned(unsafe) let owner: Owner
37 |
38 | func receive(_ update: SetUpdate<Reference.Value.Element>) {
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
39 | owner.applyTargetUpdate(update)
40 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:33:20: error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
31 | }
32 |
33 | private struct TargetSink: UniqueOwnedSink {
| |- error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
34 | typealias Owner = UnpackedObservableSetReference
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:79:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
77 | }
78 |
79 | func applyTargetUpdate(_ update: SetUpdate<Element>) {
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
80 | switch update {
81 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:92:25: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
90 | override var isBuffered: Bool { return false }
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:93:19: error: method does not override any method from its superclass
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
| `- error: method does not override any method from its superclass
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:120:15: note: potential overridden instance method 'contains' here
118 | open var isBuffered: Bool { return false }
119 | open var count: Int { return value.count }
120 | open func contains(_ member: Element) -> Bool { return value.contains(member) }
| `- note: potential overridden instance method 'contains' here
121 | open func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
122 | open func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:94:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
96 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:95:40: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:11:53: error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
11 | return UnpackedObservableSetReference(self).anyObservableSet
| `- error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:55:16: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
53 | let target = _reference.value
54 | _target = target
55 | target.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
56 | }
57 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:59:18: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
57 |
58 | override func deactivate() {
59 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
60 | _reference.remove(ReferenceSink(owner: self))
61 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:69:26: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
67 | case .change(let change):
68 | if isConnected {
69 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:71:26: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
69 | _target!.remove(TargetSink(owner: self))
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
73 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetChange.swift:9:15: note: where 'Element' = 'Reference.Value.Element'
7 | //
8 |
9 | public struct SetChange<Element: Hashable>: ChangeType {
| `- note: where 'Element' = 'Reference.Value.Element'
10 | public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:33:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
31 | public var count: Int { return value.count }
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:34:38: error: type 'Self.Element' does not conform to protocol 'Hashable'
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
35 |
36 | public var isEmpty: Bool { return count == 0 }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:25:20: error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByComparableField
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:115:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
113 | }
114 |
115 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
116 | switch update {
117 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | let key = newElement(element)
69 | _ = self.insert(key, element)
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:71:16: error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
69 | _ = self.insert(key, element)
70 | }
71 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 | }
73 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:75:16: error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
73 |
74 | deinit {
75 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
76 | for (sink, field) in fields {
77 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:11:26: error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
9 | extension ObservableSetType {
10 | public func sorted(by areInIncreasingOrder: @escaping (Element, Element) -> Bool) -> AnyObservableArray<Element> {
11 | let comparator = Comparator(areInIncreasingOrder)
| `- error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
:
37 | }
38 |
39 | private final class Comparator<Element: Equatable> {
| `- note: where 'Element' = 'Self.Element'
40 | let comparator: (Element, Element) -> Bool
41 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:13:54: error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
11 | let comparator = Comparator(areInIncreasingOrder)
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
| `- error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
14 | .map { [comparator] in _ = comparator; return $0.element }
15 | }
:
48 | }
49 |
50 | private struct ComparableWrapper<Element: Equatable>: Comparable {
| `- note: where 'Element' = 'Self.Element'
51 | unowned(unsafe) let comparator: Comparator<Element>
52 | let element: Element
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:34:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
32 | unowned(unsafe) let owner: Owner
33 |
34 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
35 | owner.applyParentUpdate(update)
36 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:29:20: error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
27 | typealias Change = ArrayChange<Element>
28 |
29 | private struct SortingSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
30 | typealias Owner = SetSortingByMappingToComparable
31 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:60:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
58 | }
59 |
60 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
61 | switch update {
62 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:49:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
47 | super.init()
48 |
49 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
50 | let transformed = transform(element)
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:53:16: error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
52 | }
53 | parent.add(SortingSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:57:16: error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
55 |
56 | deinit {
57 | parent.remove(SortingSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:25:20: error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByMappingToObservableComparable
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:121:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
119 | }
120 |
121 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
122 | switch update {
123 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | _ = self._insert(newElement(element))
69 | }
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:70:16: error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
68 | _ = self._insert(newElement(element))
69 | }
70 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
71 | }
72 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:74:16: error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 |
73 | deinit {
74 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
75 | for (sink, field) in fields {
76 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
[181/186] Compiling GlueKit SimpleSources.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:27:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
25 | unowned(unsafe) let owner: Owner
26 |
27 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | owner.applyParentUpdate(update)
29 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:22:20: error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
20 | where Field.Value: Hashable {
21 |
22 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
23 | typealias Owner = SetMappingForValueField
24 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:66:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
64 | }
65 |
66 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
67 | switch update {
68 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:26:27: error: type 'Self.Element' does not conform to protocol 'Hashable'
24 | var observableCount: AnyObservableValue<Int> { get }
25 | var anyObservableValue: AnyObservableValue<Base> { get }
26 | var anyObservableSet: AnyObservableSet<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
27 | }
28 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:68:34: error: type 'Self.Element' does not conform to protocol 'Hashable'
66 | }
67 |
68 | public var anyObservableSet: AnyObservableSet<Element> {
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
69 | return AnyObservableSet(box: ObservableSetBox(self))
70 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:49:16: error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
47 | self.key = key
48 | super.init()
49 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
50 |
51 | for e in parent.value {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:19:16: error: type 'Self.Element' does not conform to protocol 'Hashable'
17 | var isBuffered: Bool { get }
18 | var count: Int { get }
19 | var value: Set<Element> { get }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:51:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
49 | parent.add(ParentSink(owner: self))
50 |
51 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
52 | let field = key(e)
53 | field.add(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:59:16: error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
57 |
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetMappingForValueField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
60 | for e in parent.value {
61 | let field = key(e)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetMappingForValueField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetMappingForValueField.swift:60:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
58 | deinit {
59 | parent.remove(ParentSink(owner: self))
60 | for e in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
61 | let field = key(e)
62 | field.remove(FieldSink(owner: self))
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:21:29: error: type 'Self.Element' does not conform to protocol 'Hashable'
19 | var value: Set<Element> { get }
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
22 | func isSuperset(of other: Set<Element>) -> Bool
23 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:22:31: error: type 'Self.Element' does not conform to protocol 'Hashable'
20 | func contains(_ member: Element) -> Bool
21 | func isSubset(of other: Set<Element>) -> Bool
22 | func isSuperset(of other: Set<Element>) -> Bool
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
23 |
24 | var observableCount: AnyObservableValue<Int> { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:15:22: error: type 'Self.Element' does not conform to protocol 'Hashable'
13 | associatedtype Element
14 |
15 | typealias Base = Set<Element>
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
16 |
17 | var isBuffered: Bool { get }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:10:31: error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
8 |
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
| `- error: type 'Self.Value.Element' does not conform to protocol 'Hashable'
11 | return UnpackedObservableSetReference(self).anyObservableSet
12 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:17:85: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
15 | /// A mutable reference to an `AnyObservableSet` that's also an observable set.
16 | /// You can switch to another target set without having to re-register subscribers.
17 | private final class UnpackedObservableSetReference<Reference: ObservableValueType>: _BaseObservableSet<Reference.Value.Element>
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
18 | where Reference.Value: ObservableSetType {
19 | typealias Target = Reference.Value
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:21:24: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
19 | typealias Target = Reference.Value
20 | typealias Element = Target.Element
21 | typealias Change = SetChange<Element>
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
22 |
23 | private struct ReferenceSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:38:32: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
36 | unowned(unsafe) let owner: Owner
37 |
38 | func receive(_ update: SetUpdate<Reference.Value.Element>) {
| `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
39 | owner.applyTargetUpdate(update)
40 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:33:20: error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
31 | }
32 |
33 | private struct TargetSink: UniqueOwnedSink {
| |- error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
34 | typealias Owner = UnpackedObservableSetReference
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:79:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
77 | }
78 |
79 | func applyTargetUpdate(_ update: SetUpdate<Element>) {
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
80 | switch update {
81 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:92:25: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
90 | override var isBuffered: Bool { return false }
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:93:19: error: method does not override any method from its superclass
91 | override var count: Int { return _reference.value.count }
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
| `- error: method does not override any method from its superclass
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:120:15: note: potential overridden instance method 'contains' here
118 | open var isBuffered: Bool { return false }
119 | open var count: Int { return value.count }
120 | open func contains(_ member: Element) -> Bool { return value.contains(member) }
| `- note: potential overridden instance method 'contains' here
121 | open func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
122 | open func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:94:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
92 | override var value: Set<Element> { return _reference.value.value }
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
96 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:95:40: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 | override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 | override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 | override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
| `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:11:53: error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
9 | extension ObservableValueType where Value: ObservableSetType {
10 | public func unpacked() -> AnyObservableSet<Value.Element> {
11 | return UnpackedObservableSetReference(self).anyObservableSet
| `- error: failed to produce diagnostic for expression; please submit a bug report (https://swift.org/contributing/#reporting-bugs)
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:55:16: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
53 | let target = _reference.value
54 | _target = target
55 | target.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
56 | }
57 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:59:18: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
57 |
58 | override func deactivate() {
59 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
60 | _reference.remove(ReferenceSink(owner: self))
61 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:69:26: error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
67 | case .change(let change):
68 | if isConnected {
69 | _target!.remove(TargetSink(owner: self))
| `- error: instance method 'remove' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:71:26: error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
69 | _target!.remove(TargetSink(owner: self))
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
| `- error: instance method 'add' requires the types 'UnpackedObservableSetReference<Reference>.TargetSink.Value' and 'Update<SetChange<Reference.Value.Element>>' be equivalent
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
73 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'UnpackedObservableSetReference<Reference>.TargetSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Reference.Value.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: cannot convert value of type 'SetChange<Reference.Value.Element>' to expected argument type 'UnpackedObservableSetReference<Reference>.Change'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetReference.swift:72:28: error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
70 | _target = change.new
71 | _target!.add(TargetSink(owner: self))
72 | sendChange(SetChange(from: change.old.value, to: change.new.value))
| `- error: generic struct 'SetChange' requires that 'Reference.Value.Element' conform to 'Hashable'
73 | }
74 | case .endTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetChange.swift:9:15: note: where 'Element' = 'Reference.Value.Element'
7 | //
8 |
9 | public struct SetChange<Element: Hashable>: ChangeType {
| `- note: where 'Element' = 'Reference.Value.Element'
10 | public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:33:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
31 | public var count: Int { return value.count }
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
35 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableSet.swift:34:38: error: type 'Self.Element' does not conform to protocol 'Hashable'
32 | public func contains(_ member: Element) -> Bool { return value.contains(member) }
33 | public func isSubset(of other: Set<Element>) -> Bool { return value.isSubset(of: other) }
34 | public func isSuperset(of other: Set<Element>) -> Bool { return value.isSuperset(of: other) }
| `- error: type 'Self.Element' does not conform to protocol 'Hashable'
35 |
36 | public var isEmpty: Bool { return count == 0 }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:25:20: error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByComparableField
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:115:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
113 | }
114 |
115 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
116 | switch update {
117 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | let key = newElement(element)
69 | _ = self.insert(key, element)
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:71:16: error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
69 | _ = self.insert(key, element)
70 | }
71 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 | }
73 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparableField.swift:75:16: error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
73 |
74 | deinit {
75 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByComparableField<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
76 | for (sink, field) in fields {
77 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByComparableField<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:11:26: error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
9 | extension ObservableSetType {
10 | public func sorted(by areInIncreasingOrder: @escaping (Element, Element) -> Bool) -> AnyObservableArray<Element> {
11 | let comparator = Comparator(areInIncreasingOrder)
| `- error: generic class 'Comparator' requires that 'Self.Element' conform to 'Equatable'
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
:
37 | }
38 |
39 | private final class Comparator<Element: Equatable> {
| `- note: where 'Element' = 'Self.Element'
40 | let comparator: (Element, Element) -> Bool
41 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByComparator.swift:13:54: error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
11 | let comparator = Comparator(areInIncreasingOrder)
12 | return self
13 | .sortedMap(by: { [unowned comparator] in ComparableWrapper($0, comparator) })
| `- error: generic struct 'ComparableWrapper' requires that 'Self.Element' conform to 'Equatable'
14 | .map { [comparator] in _ = comparator; return $0.element }
15 | }
:
48 | }
49 |
50 | private struct ComparableWrapper<Element: Equatable>: Comparable {
| `- note: where 'Element' = 'Self.Element'
51 | unowned(unsafe) let comparator: Comparator<Element>
52 | let element: Element
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:34:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
32 | unowned(unsafe) let owner: Owner
33 |
34 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
35 | owner.applyParentUpdate(update)
36 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:29:20: error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
27 | typealias Change = ArrayChange<Element>
28 |
29 | private struct SortingSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
30 | typealias Owner = SetSortingByMappingToComparable
31 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:60:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
58 | }
59 |
60 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
61 | switch update {
62 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:49:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
47 | super.init()
48 |
49 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
50 | let transformed = transform(element)
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:53:16: error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
51 | contents[transformed] = (contents[transformed] ?? 0) + 1
52 | }
53 | parent.add(SortingSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToComparable.swift:57:16: error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
55 |
56 | deinit {
57 | parent.remove(SortingSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToComparable<Parent, Element>.SortingSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
28 | unowned(unsafe) let owner: Owner
29 |
30 | func receive(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
31 | owner.applyParentUpdate(update)
32 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:25:20: error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
23 | typealias Change = ArrayChange<Element>
24 |
25 | private struct ParentSink: UniqueOwnedSink {
| |- error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
| `- note: add stubs for conformance
26 | typealias Owner = SetSortingByMappingToObservableComparable
27 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'
8 |
9 | public protocol SinkType: Hashable {
10 | associatedtype Value
| `- note: protocol requires nested type 'Value'
11 | func receive(_ value: Value)
12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:121:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
119 | }
120 |
121 | func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
| `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
122 | switch update {
123 | case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:47:20: error: no exact matches in call to instance method 'append'
45 | func appendHashes(to hasher: inout SipHasher) {
46 | hasher.append(ObjectIdentifier(owner))
47 | hasher.append(element)
| `- error: no exact matches in call to instance method 'append'
48 | }
49 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:55:26: note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
53 | ///
54 | /// - Requires: `finalize()` hasn't been called on this instance yet.
55 | public mutating func append<H: SipHashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'SipHashable' (requirement specified as 'H' : 'SipHashable')
56 | value.appendHashes(to: &self)
57 | }
:
60 | ///
61 | /// - Requires: `finalize()` hasn't been called on this instance yet.
62 | public mutating func append<H: Hashable>(_ value: H) {
| `- note: candidate requires that 'Parent.Element' conform to 'Hashable' (requirement specified as 'H' : 'Hashable')
63 | append(value.hashValue)
64 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:51:63: error: binary operator '==' cannot be applied to two 'Parent.Element' operands
49 |
50 | static func ==(left: FieldSink, right: FieldSink) -> Bool {
51 | return left.owner === right.owner && left.element == right.element
| `- error: binary operator '==' cannot be applied to two 'Parent.Element' operands
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:67:9: error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
65 | super.init()
66 |
67 | for element in parent.value {
| `- error: referencing instance method 'makeIterator()' on 'Set' requires that 'Parent.Element' conform to 'Hashable'
68 | _ = self._insert(newElement(element))
69 | }
Swift.Set:1:11: note: where 'Element' = 'Parent.Element'
1 | extension Set : Sequence {
| `- note: where 'Element' = 'Parent.Element'
2 | @inlinable public __consuming func makeIterator() -> Set<Element>.Iterator
3 | @inlinable public func contains(_ member: Element) -> Bool
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:70:16: error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
68 | _ = self._insert(newElement(element))
69 | }
70 | parent.add(ParentSink(owner: self))
| `- error: instance method 'add' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
71 | }
72 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
14 | var value: Value { get }
15 |
16 | func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/SetSortingByMappingToObservableComparable.swift:74:16: error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
72 |
73 | deinit {
74 | parent.remove(ParentSink(owner: self))
| `- error: instance method 'remove' requires the types 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value' and 'Update<SetChange<Parent.Element>>' be equivalent
75 | for (sink, field) in fields {
76 | field.remove(sink)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/GlueKit/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
17 |
18 | @discardableResult
19 | func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
| `- note: where 'Sink.Value' = 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink.Value', 'Update<Self.Change>' = 'Update<SetChange<Parent.Element>>'
20 | }
21 |
warning: 'spi-builder-workspace': dependency 'siphash' is not used by any target
BUILD FAILURE 6.3 macosSpm