The Swift Package Index logo.Swift Package Index

Build Information

Failed to build GlueKit, reference master (a5766b), with Swift 6.2 for macOS (SPM) on 18 Jun 2025 12:04:25 UTC.

Build Command

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

Build Log

19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/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/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableArrayReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableArrayReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableArrayReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableArrayReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableArray.swift:24:9: error: cannot override mutable property 'value' of type 'Self.Value' with covariant type '[Self.Element]'
 22 |
 23 |     // Required members
 24 |     var value: [Element] { get nonmutating set }
    |         `- error: cannot override mutable property 'value' of type 'Self.Value' with covariant type '[Self.Element]'
 25 |     func apply(_ update: ArrayUpdate<Element>)
 26 |     subscript(index: Int) -> Element { get nonmutating set }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableType.swift:59:9: note: attempt to override property here
57 |     ///
58 |     /// The setter is nonmutating because the value ultimately needs to be stored in a reference type anyway.
59 |     var value: Value { get nonmutating set }
   |         `- note: attempt to override property here
60 |
61 |     func apply(_ update: Update<Change>)
/Users/admin/builder/spi-builder-workspace/Sources/BracketingSource.swift:49:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BracketingSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
47 |     }
48 |
49 |     var hashValue: Int { return sink.hashValue }
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BracketingSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
50 |     static func ==(left: BracketingSink, right: BracketingSink) -> Bool {
51 |         return left.sink == right.sink
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedObservableArray.BufferedSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedObservableArray.BufferedSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:10:31: error: type 'Self.Element' does not conform to protocol 'Hashable'
 8 |
 9 | extension ObservableSetType {
10 |     public func buffered() -> AnyObservableSet<Element> {
   |                               `- error: type 'Self.Element' does not conform to protocol 'Hashable'
11 |         if isBuffered {
12 |             return anyObservableSet
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:18:67: error: type 'Content.Element' does not conform to protocol 'Hashable'
16 | }
17 |
18 | internal class BufferedObservableSet<Content: ObservableSetType>: _BaseObservableSet<Content.Element> {
   |                                                                   `- error: type 'Content.Element' does not conform to protocol 'Hashable'
19 |     typealias Element = Content.Element
20 |     typealias Change = SetChange<Element>
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:20:24: error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
18 | internal class BufferedObservableSet<Content: ObservableSetType>: _BaseObservableSet<Content.Element> {
19 |     typealias Element = Content.Element
20 |     typealias Change = SetChange<Element>
   |                        `- error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
21 |
22 |     private struct BufferedSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:27:32: error: type 'Content.Element' does not conform to protocol 'Hashable'
25 |         unowned(unsafe) let owner: Owner
26 |
27 |         func receive(_ update: SetUpdate<Content.Element>) {
   |                                `- error: type 'Content.Element' does not conform to protocol 'Hashable'
28 |             owner.applyUpdate(update)
29 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedObservableSet.BufferedSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedObservableSet.BufferedSink' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:22:20: error: type 'BufferedObservableSet<Content>.BufferedSink' does not conform to protocol 'SinkType'
20 |     typealias Change = SetChange<Element>
21 |
22 |     private struct BufferedSink: UniqueOwnedSink {
   |                    |- error: type 'BufferedObservableSet<Content>.BufferedSink' does not conform to protocol 'SinkType'
   |                    `- note: add stubs for conformance
23 |         typealias Owner = BufferedObservableSet
24 |
/Users/admin/builder/spi-builder-workspace/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/Sources/BufferedSet.swift:33:25: error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
31 |
32 |     private let _content: Content
33 |     private var _value: Set<Element>
   |                         `- error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
34 |     private var _pendingChange: Change? = nil
35 |
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:47:32: error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
45 |     }
46 |
47 |     func applyUpdate(_ update: SetUpdate<Element>) {
   |                                `- error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
48 |         switch update {
49 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:76:25: error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
74 |     }
75 |
76 |     override var value: Set<Element> {
   |                         `- error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
77 |         return _value
78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:80:19: error: method does not override any method from its superclass
78 |     }
79 |
80 |     override func contains(_ member: Element) -> Bool {
   |                   `- error: method does not override any method from its superclass
81 |         return _value.contains(member)
82 |     }
/Users/admin/builder/spi-builder-workspace/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/Sources/BufferedSet.swift:84:38: error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
82 |     }
83 |
84 |     override func isSubset(of other: Set<Element>) -> Bool {
   |                                      `- error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
85 |         return _value.isSubset(of: other)
86 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:88:40: error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
86 |     }
87 |
88 |     override func isSuperset(of other: Set<Element>) -> Bool {
   |                                        `- error: type 'BufferedObservableSet<Content>.Element' (aka 'Content.Element') does not conform to protocol 'Hashable'
89 |         return _value.isSuperset(of: other)
90 |     }
/Users/admin/builder/spi-builder-workspace/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/Sources/BufferedSet.swift:40:18: error: instance method 'add' requires the types 'BufferedObservableSet<Content>.BufferedSink.Value' and 'Update<Content.Change>' be equivalent
38 |         _value = content.value
39 |         super.init()
40 |         _content.add(BufferedSink(owner: self))
   |                  `- error: instance method 'add' requires the types 'BufferedObservableSet<Content>.BufferedSink.Value' and 'Update<Content.Change>' be equivalent
41 |     }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableType.swift:16:10: note: where 'Sink.Value' = 'BufferedObservableSet<Content>.BufferedSink.Value', 'Update<Self.Change>' = 'Update<Content.Change>'
14 |     var value: Value { get }
15 |
16 |     func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change>
   |          `- note: where 'Sink.Value' = 'BufferedObservableSet<Content>.BufferedSink.Value', 'Update<Self.Change>' = 'Update<Content.Change>'
17 |
18 |     @discardableResult
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:44:18: error: instance method 'remove' requires the types 'BufferedObservableSet<Content>.BufferedSink.Value' and 'Update<Content.Change>' be equivalent
42 |
43 |     deinit {
44 |         _content.remove(BufferedSink(owner: self))
   |                  `- error: instance method 'remove' requires the types 'BufferedObservableSet<Content>.BufferedSink.Value' and 'Update<Content.Change>' be equivalent
45 |     }
46 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableType.swift:19:10: note: where 'Sink.Value' = 'BufferedObservableSet<Content>.BufferedSink.Value', 'Update<Self.Change>' = 'Update<Content.Change>'
17 |
18 |     @discardableResult
19 |     func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change>
   |          `- note: where 'Sink.Value' = 'BufferedObservableSet<Content>.BufferedSink.Value', 'Update<Self.Change>' = 'Update<Content.Change>'
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:50:13: error: referencing instance method 'beginTransaction()' on 'TransactionalThing' requires that 'BufferedObservableSet<Content>' conform to 'TransactionalThing'
48 |         switch update {
49 |         case .beginTransaction:
50 |             beginTransaction()
   |             `- error: referencing instance method 'beginTransaction()' on 'TransactionalThing' requires that 'BufferedObservableSet<Content>' conform to 'TransactionalThing'
51 |         case .change(let change):
52 |             if _pendingChange != nil {
/Users/admin/builder/spi-builder-workspace/Sources/TransactionalThing.swift:41:1: note: where 'Self' = 'BufferedObservableSet<Content>'
 39 | }
 40 |
 41 | extension TransactionalThing {
    | `- note: where 'Self' = 'BufferedObservableSet<Content>'
 42 |     var signal: TransactionalSignal<Change> {
 43 |         if let signal = _signal { return signal }
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:62:17: error: referencing instance method 'sendChange' on 'TransactionalThing' requires that 'BufferedObservableSet<Content>' conform to 'TransactionalThing'
60 |                 _value.apply(change)
61 |                 _pendingChange = nil
62 |                 sendChange(change)
   |                 `- error: referencing instance method 'sendChange' on 'TransactionalThing' requires that 'BufferedObservableSet<Content>' conform to 'TransactionalThing'
63 |             }
64 |             endTransaction()
/Users/admin/builder/spi-builder-workspace/Sources/TransactionalThing.swift:41:1: note: where 'Self' = 'BufferedObservableSet<Content>'
 39 | }
 40 |
 41 | extension TransactionalThing {
    | `- note: where 'Self' = 'BufferedObservableSet<Content>'
 42 |     var signal: TransactionalSignal<Change> {
 43 |         if let signal = _signal { return signal }
/Users/admin/builder/spi-builder-workspace/Sources/BufferedSet.swift:64:13: error: referencing instance method 'endTransaction()' on 'TransactionalThing' requires that 'BufferedObservableSet<Content>' conform to 'TransactionalThing'
62 |                 sendChange(change)
63 |             }
64 |             endTransaction()
   |             `- error: referencing instance method 'endTransaction()' on 'TransactionalThing' requires that 'BufferedObservableSet<Content>' conform to 'TransactionalThing'
65 |         }
66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TransactionalThing.swift:41:1: note: where 'Self' = 'BufferedObservableSet<Content>'
 39 | }
 40 |
 41 | extension TransactionalThing {
    | `- note: where 'Self' = 'BufferedObservableSet<Content>'
 42 |     var signal: TransactionalSignal<Change> {
 43 |         if let signal = _signal { return signal }
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:26:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedSource' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
 24 |         return UnownedSink(self).anySink
 25 |     }
 26 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedSource' to 'Hashable' by implementing 'hash(into:)' instead [#DeprecatedDeclaration]
 27 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 28 | }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[117/128] Compiling GlueKit NSTextField Glue.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[118/128] Compiling GlueKit ObservableArray.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[119/128] Compiling GlueKit ObservableContains.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[120/128] Compiling GlueKit ObservableSet.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[121/128] Compiling GlueKit ObservableType.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[122/128] Compiling GlueKit ObservableValue.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[123/128] Compiling GlueKit OwnedSink.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[124/128] Compiling GlueKit RefList.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[125/128] Compiling GlueKit Reference.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[126/128] Compiling GlueKit SetChange.swift
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:30: error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                              `- error: generic struct 'SetChange' requires that 'Input.Element' conform to 'Hashable'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Input.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Input.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: missing argument label 'where:' in call
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: missing argument label 'where:' in call
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableContains.swift:25:47: error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
23 |         self._updates = input.updates.flatMap { update in
24 |             update.flatMap {
25 |                 let old = $0.removed.contains(member)
   |                                               `- error: cannot convert value of type 'Input.Element' to expected argument type '(Input.Element) throws -> Bool'
26 |                 let new = $0.inserted.contains(member)
27 |                 if old == new {
/Users/admin/builder/spi-builder-workspace/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/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/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/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/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/Sources/ObservableSet.swift:12:67: error: type 'Self.Element' does not conform to protocol 'Hashable'
 10 | public typealias SetUpdateSource<Element: Hashable> = AnySource<Update<SetChange<Element>>>
 11 |
 12 | public protocol ObservableSetType: ObservableType where Change == SetChange<Element> {
    |                                                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 13 |     associatedtype Element
 14 |
/Users/admin/builder/spi-builder-workspace/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/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/Sources/ObservableSet.swift:38:54: error: type 'Self.Element' does not conform to protocol 'Hashable'
 36 |     public var isEmpty: Bool { return count == 0 }
 37 |
 38 |     internal var valueUpdates: AnySource<ValueUpdate<Set<Element>>> {
    |                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 39 |         var value = self.value
 40 |         return self.updates.map { event in
/Users/admin/builder/spi-builder-workspace/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/Sources/ObservableSet.swift:159:60: error: type 'Contents.Element' does not conform to protocol 'Hashable'
157 | }
158 |
159 | final class ObservableSetBox<Contents: ObservableSetType>: _AbstractObservableSet<Contents.Element> {
    |                                                            `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
160 |     typealias Element = Contents.Element
161 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:170:25: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
168 |     override var isBuffered: Bool { return contents.isBuffered }
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
    |                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:171:19: error: method does not override any method from its superclass
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) }
    :
169 |     override var count: Int { return contents.count }
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:172:38: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
170 |     override var value: Set<Element> { return contents.value }
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:173:40: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
171 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
172 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:175:19: error: method does not override any method from its superclass
173 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
174 |
175 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
176 |         contents.add(sink)
177 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:180:19: error: method does not override any method from its superclass
178 |
179 |     @discardableResult
180 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<SetChange<Element>> {
    |                   `- error: method does not override any method from its superclass
181 |         return contents.remove(sink)
182 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:185:57: error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'ObservableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:59: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:216:42: error: type 'Self.Element' does not conform to protocol 'Hashable'
214 |
215 | extension ObservableSetType {
216 |     public static func constant(_ value: Set<Element>) -> AnyObservableSet<Element> {
    |                                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
217 |         return ObservableConstantSet(value).anyObservableSet
218 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:220:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
218 |     }
219 |
220 |     public static func emptyConstant() -> AnyObservableSet<Element> {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
221 |         return constant([])
222 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: missing argument label 'where:' in call
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: missing argument label 'where:' in call
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:32:77: error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 30 |     public var isBuffered: Bool { return false }
 31 |     public var count: Int { return value.count }
 32 |     public func contains(_ member: Element) -> Bool { return value.contains(member) }
    |                                                                             `- error: cannot convert value of type 'Self.Element' to expected argument type '(Self.Element) throws -> Bool'
 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) }
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:45: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                             `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableSet.swift:54:69: error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 52 |             update.map { change in
 53 |                 let old = count
 54 |                 count += numericCast(change.inserted.count - change.removed.count)
    |                                                                     `- error: generic struct 'SetChange' requires that 'Self.Element' conform to 'Hashable'
 55 |                 return .init(from: old, to: count)
 56 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Self.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Self.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ObservableValue.swift:179:5: warning: 'public' modifier is redundant for static method declared in a public extension
177 | public extension ObservableValueType {
178 |     /// Creates a constant observable wrapping the given value. The returned observable is not modifiable and it will not ever send updates.
179 |     public static func constant(_ value: Value) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for static method declared in a public extension
180 |         return ConstantObservable(value).anyObservableValue
181 |     }
/Users/admin/builder/spi-builder-workspace/Sources/RefList.swift:83:47: warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice' [#DeprecatedDeclaration]
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Fetching https://github.com/attaswift/SipHash
Fetching https://github.com/attaswift/BTree
[1/3349] Fetching btree
[336/3789] Fetching btree, siphash
Fetched https://github.com/attaswift/SipHash from cache (1.51s)
Fetched https://github.com/attaswift/BTree from cache (1.51s)
Computing version for https://github.com/attaswift/BTree
Computed https://github.com/attaswift/BTree at 4.1.0 (2.04s)
Computing version for https://github.com/attaswift/SipHash
Computed https://github.com/attaswift/SipHash at 1.2.2 (0.50s)
Creating working copy for https://github.com/attaswift/SipHash
Working copy of https://github.com/attaswift/SipHash resolved at 1.2.2
Creating working copy for https://github.com/attaswift/BTree
Working copy of https://github.com/attaswift/BTree resolved at 4.1.0
BUILD FAILURE 6.2 macosSpm