This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build GlueKit with Swift 6.0 for macOS (SPM).

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

 90 |         case .endTransaction:
 91 |             endTransaction()
/Users/admin/builder/spi-builder-workspace/Sources/SetChange.swift:9:15: note: where 'Element' = 'Field.Element'
 7 | //
 8 |
 9 | public struct SetChange<Element: Hashable>: ChangeType {
   |               `- note: where 'Element' = 'Field.Element'
10 |     public typealias Value = Set<Element>
11 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:91:13: error: referencing instance method 'endTransaction()' on 'TransactionalThing' requires that 'UpdateSourceForSetField<Parent, Field>' conform to 'TransactionalThing'
 89 |             sendChange(SetChange(removed: oldValue, inserted: field.value))
 90 |         case .endTransaction:
 91 |             endTransaction()
    |             `- error: referencing instance method 'endTransaction()' on 'TransactionalThing' requires that 'UpdateSourceForSetField<Parent, Field>' conform to 'TransactionalThing'
 92 |         }
 93 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TransactionalThing.swift:41:1: note: where 'Self' = 'UpdateSourceForSetField<Parent, Field>'
 39 | }
 40 |
 41 | extension TransactionalThing {
    | `- note: where 'Self' = 'UpdateSourceForSetField<Parent, Field>'
 42 |     var signal: TransactionalSignal<Change> {
 43 |         if let signal = _signal { return signal }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:96:9: error: referencing instance method 'send' on 'TransactionalThing' requires that 'UpdateSourceForSetField<Parent, Field>' conform to 'TransactionalThing'
 94 |
 95 |     func applyFieldUpdate(_ update: SetUpdate<Field.Element>) {
 96 |         send(update)
    |         `- error: referencing instance method 'send' on 'TransactionalThing' requires that 'UpdateSourceForSetField<Parent, Field>' conform to 'TransactionalThing'
 97 |     }
 98 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransactionalThing.swift:41:1: note: where 'Self' = 'UpdateSourceForSetField<Parent, Field>'
 39 | }
 40 |
 41 | extension TransactionalThing {
    | `- note: where 'Self' = 'UpdateSourceForSetField<Parent, Field>'
 42 |     var signal: TransactionalSignal<Change> {
 43 |         if let signal = _signal { return signal }
/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: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: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: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/ValueMappingForSetField.swift:119:22: error: type of expression is ambiguous without a type annotation
117 |
118 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
119 |         updateSource.add(sink)
    |                      `- error: type of expression is ambiguous without a type annotation
120 |     }
121 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:124:29: error: type of expression is ambiguous without a type annotation
122 |     @discardableResult
123 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change> {
124 |         return updateSource.remove(sink)
    |                             `- error: type of expression is ambiguous without a type annotation
125 |     }
126 | }
/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/UpdatableSet.swift:11:26: error: type 'Self.Element' does not conform to protocol 'Hashable'
  9 | public protocol UpdatableSetType: ObservableSetType, UpdatableType {
 10 |     var value: Base { get nonmutating set }
 11 |     func apply(_ update: SetUpdate<Element>)
    |                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 12 |
 13 |     // Optional members
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:74:45: error: type 'Self.Element' does not conform to protocol 'Hashable'
 72 |     }
 73 |
 74 |     public func apply(_ update: ValueUpdate<Set<Element>>) {
    |                                             `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 75 |         self.apply(update.map { change in SetChange(from: change.old, to: change.new) })
 76 |     }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:17:29: error: type 'Self.Element' does not conform to protocol 'Hashable'
 15 |     func insert(_ member: Element)
 16 |     func removeAll()
 17 |     func formUnion(_ other: Set<Element>)
    |                             `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 18 |     func formIntersection(_ other: Set<Element>)
 19 |     func formSymmetricDifference(_ other: Set<Element>)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:48:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
 46 |     }
 47 |
 48 |     public func formUnion(_ other: Set<Element>) {
    |                                    `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 49 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 50 |         let difference = other.subtracting(value)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:18:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
 16 |     func removeAll()
 17 |     func formUnion(_ other: Set<Element>)
 18 |     func formIntersection(_ other: Set<Element>)
    |                                    `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 19 |     func formSymmetricDifference(_ other: Set<Element>)
 20 |     func subtract(_ other: Set<Element>)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:54:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
 52 |     }
 53 |
 54 |     public func formIntersection(_ other: Set<Element>) {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 55 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 56 |         let difference = value.subtracting(other)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:19:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
 17 |     func formUnion(_ other: Set<Element>)
 18 |     func formIntersection(_ other: Set<Element>)
 19 |     func formSymmetricDifference(_ other: Set<Element>)
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 20 |     func subtract(_ other: Set<Element>)
 21 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:60:50: error: type 'Self.Element' does not conform to protocol 'Hashable'
 58 |     }
 59 |
 60 |     public func formSymmetricDifference(_ other: Set<Element>) {
    |                                                  `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 61 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 62 |         let value = self.value
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:20:28: error: type 'Self.Element' does not conform to protocol 'Hashable'
 18 |     func formIntersection(_ other: Set<Element>)
 19 |     func formSymmetricDifference(_ other: Set<Element>)
 20 |     func subtract(_ other: Set<Element>)
    |                            `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 21 |
 22 |     var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { get }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:68:35: error: type 'Self.Element' does not conform to protocol 'Hashable'
 66 |     }
 67 |
 68 |     public func subtract(_ other: Set<Element>) {
    |                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 69 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 70 |         let intersection = value.intersection(other)
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:160:22: error: type of expression is ambiguous without a type annotation
158 |
159 |     final override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
160 |         updateSource.add(sink)
    |                      `- error: type of expression is ambiguous without a type annotation
161 |     }
162 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:165:29: error: type of expression is ambiguous without a type annotation
163 |     @discardableResult
164 |     final override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change> {
165 |         return updateSource.remove(sink)
    |                             `- error: type of expression is ambiguous without a type annotation
166 |     }
167 | }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForSourceField.SourceFieldSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForSourceField.SourceFieldSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForValue.swift:11:5: warning: 'public' modifier is redundant for instance method declared in a public extension
 9 | public extension ObservableValueType {
10 |     /// Returns an observable that calculates `transform` on all current and future values of this observable.
11 |     public func map<Output>(_ transform: @escaping (Value) -> Output) -> AnyObservableValue<Output> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
12 |         return ValueMappingForValue<Self, Output>(parent: self, transform: transform).anyObservableValue
13 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/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 'UnpackedObservableValueReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableValueReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'UnpackedObservableValueReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableValueReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[126/128] Emitting module GlueKit
/Users/admin/builder/spi-builder-workspace/Sources/AccumulatedSource.swift:24:20: warning: generic parameter 'S' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
17 | }
18 |
19 | private class AccumulatedSource<Value, S>: _BaseObservableValue<Value> where S: SourceType {
   |                                        `- note: 'S' previously declared here
20 |     let source: S
21 |     let next: (Value, S.Value) -> Value
22 |     var _value: Value
23 |
24 |     struct Sink<R, S: SourceType>: UniqueOwnedSink {
   |                    `- warning: generic parameter 'S' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
25 |         typealias Owner = AccumulatedSource<R, S>
26 |         unowned(unsafe) let owner: Owner
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'AccumulatedSource.Sink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'AccumulatedSource.Sink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ArrayChange.swift:565:58: warning: 'IndexDistance' is deprecated: all index distances are now of type Int
563 | }
564 |
565 | extension RangeReplaceableCollection where Index == Int, IndexDistance == Int {
    |                                                          `- warning: 'IndexDistance' is deprecated: all index distances are now of type Int
566 |     /// Apply `change` to this array. The count of self must be the same as the initial count of `change`, or
567 |     /// the operation will report a fatal error.
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayConcatenation.FirstSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayConcatenation.FirstSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'ArrayConcatenation.SecondSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayConcatenation.SecondSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'ArrayFilteringOnObservableBool.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayFilteringOnObservableBool.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:26:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayFilteringOnObservableBool.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
 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 'ArrayFilteringOnObservableBool.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
 27 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 28 | }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayFilteringOnPredicate.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayFilteringOnPredicate.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'ArrayGatheringSource.GatherSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayGatheringSource.GatherSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:26:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayMappingForArrayField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
 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 'ArrayMappingForArrayField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
 27 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 28 | }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayMappingForArrayField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayMappingForArrayField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'BufferedArrayMappingForValue.BufferedMapSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedArrayMappingForValue.BufferedMapSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:26:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
 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 'ArrayMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
 27 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 28 | }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ArrayMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
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
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
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
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
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
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
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
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
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
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
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'
23 |         typealias Owner = BufferedObservableSet
24 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 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:76:18: error: property does not override any property from its superclass
74 |     }
75 |
76 |     override var value: Set<Element> {
   |                  `- error: property does not override any property from its superclass
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:84:19: error: method does not override any method from its superclass
82 |     }
83 |
84 |     override func isSubset(of other: Set<Element>) -> Bool {
   |                   `- error: method does not override any method from its superclass
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/BufferedSet.swift:88:19: error: method does not override any method from its superclass
86 |     }
87 |
88 |     override func isSuperset(of other: Set<Element>) -> Bool {
   |                   `- error: method does not override any method from its superclass
89 |         return _value.isSuperset(of: other)
90 |     }
/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
 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
 27 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 28 | }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedObservableSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BufferedObservableSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ChangesSource.swift:63:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ChangesSink' to 'Hashable' by implementing 'hash(into:)' instead
61 |     }
62 |
63 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ChangesSink' to 'Hashable' by implementing 'hash(into:)' instead
64 |         return wrapped.hashValue
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LeftSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LeftSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'RightSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'RightSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'LeftSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LeftSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'RightSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'RightSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'ComputedUpdatable.Sink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ComputedUpdatable.Sink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Connect.swift:90:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ClosureSink' to 'Hashable' by implementing 'hash(into:)' instead
 88 |     }
 89 |
 90 |     var hashValue: Int {
    |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ClosureSink' to 'Hashable' by implementing 'hash(into:)' instead
 91 |         return identifier.hashValue
 92 |     }
/Users/admin/builder/spi-builder-workspace/Sources/DependentValue.swift:32:25: warning: generic parameter 'Value' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
13 | }
14 |
15 | public class DependentValue<Value> {
   |                             `- note: 'Value' previously declared here
16 |     private let setter: (Value) -> ()
17 |     private var transactions: Int = 0
   :
30 |     }
31 |
32 |     private struct Sink<Value>: UniqueOwnedSink {
   |                         `- warning: generic parameter 'Value' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
33 |         typealias Owner = DependentValue<Value>
34 |         unowned(unsafe) let owner: Owner
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'DependentValue.Sink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'DependentValue.Sink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformForDispatchQueue' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformForDispatchQueue' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformForOperationQueue' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformForOperationQueue' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'DistinctUnion.DistinctSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'DistinctUnion.DistinctSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/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/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'DistinctSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'DistinctSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/DistinctValue.swift:65:5: warning: 'public' modifier is redundant for instance method declared in a public extension
 63 |
 64 | public extension ObservableValueType {
 65 |     public func distinct(_ areEquivalent: @escaping (Value, Value) -> Bool) -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
 66 |         return DistinctObservableValue(self, by: areEquivalent).anyObservableValue
 67 |     }
/Users/admin/builder/spi-builder-workspace/Sources/DistinctValue.swift:71:5: warning: 'public' modifier is redundant for instance method declared in a public extension
 69 |
 70 | public extension ObservableValueType where Value: Equatable {
 71 |     public func distinct() -> AnyObservableValue<Value> {
    |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
 72 |         return distinct(==)
 73 |     }
/Users/admin/builder/spi-builder-workspace/Sources/DistinctValue.swift:103:5: warning: 'public' modifier is redundant for instance method declared in a public extension
101 |
102 | public extension UpdatableValueType {
103 |     public func distinct(_ areEquivalent: @escaping (Value, Value) -> Bool) -> AnyUpdatableValue<Value> {
    |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
104 |         return DistinctUpdatableValue(self, by: areEquivalent).anyUpdatableValue
105 |     }
/Users/admin/builder/spi-builder-workspace/Sources/DistinctValue.swift:109:5: warning: 'public' modifier is redundant for instance method declared in a public extension
107 |
108 | public extension UpdatableValueType where Value: Equatable {
109 |     public func distinct() -> AnyUpdatableValue<Value> {
    |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
110 |         return distinct(==)
111 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'MergedSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'MergedSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/NSButton Glue.swift:37:23: warning: main actor-isolated property 'target' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
35 |         didSet {
36 |             modelConnector.disconnect()
37 |             if object.target === self {
   |                       `- warning: main actor-isolated property 'target' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
38 |                 object.target = nil
39 |                 object.action = nil
AppKit.NSControl:4:30: note: property declared here
 2 |     public init(frame frameRect: NSRect)
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
   |                              `- note: property declared here
 5 |     open var action: Selector? { get set }
 6 |     open var tag: Int { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSButton Glue.swift:38:24: warning: main actor-isolated property 'target' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
36 |             modelConnector.disconnect()
37 |             if object.target === self {
38 |                 object.target = nil
   |                        `- warning: main actor-isolated property 'target' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
39 |                 object.action = nil
40 |             }
AppKit.NSControl:4:30: note: mutation of this property is only permitted within the actor
 2 |     public init(frame frameRect: NSRect)
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
   |                              `- note: mutation of this property is only permitted within the actor
 5 |     open var action: Selector? { get set }
 6 |     open var tag: Int { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSButton Glue.swift:39:24: warning: main actor-isolated property 'action' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
37 |             if object.target === self {
38 |                 object.target = nil
39 |                 object.action = nil
   |                        `- warning: main actor-isolated property 'action' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
40 |             }
41 |             if let model = model {
AppKit.NSControl:5:14: note: mutation of this property is only permitted within the actor
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
 5 |     open var action: Selector? { get set }
   |              `- note: mutation of this property is only permitted within the actor
 6 |     open var tag: Int { get set }
 7 |     open var ignoresMultiClick: Bool { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSButton Glue.swift:42:24: warning: main actor-isolated property 'target' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
40 |             }
41 |             if let model = model {
42 |                 object.target = self
   |                        `- warning: main actor-isolated property 'target' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
43 |                 object.action = #selector(GlueForNSButton.buttonAction(_:))
44 |                 modelConnector.connect(model.values) { [unowned self] value in
AppKit.NSControl:4:30: note: mutation of this property is only permitted within the actor
 2 |     public init(frame frameRect: NSRect)
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
   |                              `- note: mutation of this property is only permitted within the actor
 5 |     open var action: Selector? { get set }
 6 |     open var tag: Int { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSButton Glue.swift:43:24: warning: main actor-isolated property 'action' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
41 |             if let model = model {
42 |                 object.target = self
43 |                 object.action = #selector(GlueForNSButton.buttonAction(_:))
   |                        `- warning: main actor-isolated property 'action' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
44 |                 modelConnector.connect(model.values) { [unowned self] value in
45 |                     self.object.state = value
AppKit.NSControl:5:14: note: mutation of this property is only permitted within the actor
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
 5 |     open var action: Selector? { get set }
   |              `- note: mutation of this property is only permitted within the actor
 6 |     open var tag: Int { get set }
 7 |     open var ignoresMultiClick: Bool { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSButton Glue.swift:45:33: warning: main actor-isolated property 'state' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
43 |                 object.action = #selector(GlueForNSButton.buttonAction(_:))
44 |                 modelConnector.connect(model.values) { [unowned self] value in
45 |                     self.object.state = value
   |                                 `- warning: main actor-isolated property 'state' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
46 |                 }
47 |             }
AppKit.NSButton:65:25: note: mutation of this property is only permitted within the actor
63 |     @available(macOS 11, *)
64 |     @NSCopying open var symbolConfiguration: NSImage.SymbolConfiguration? { get set }
65 |     @MainActor open var state: NSControl.StateValue { get set }
   |                         `- note: mutation of this property is only permitted within the actor
66 |     open var allowsMixedState: Bool { get set }
67 |     open func setNextState()
/Users/admin/builder/spi-builder-workspace/Sources/NSControl Glue.swift:36:33: warning: main actor-isolated property 'objectValue' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
 34 |             if let model = valueModel {
 35 |                 modelConnection = model.values.subscribe { [unowned self] value in
 36 |                     self.object.objectValue = value
    |                                 `- warning: main actor-isolated property 'objectValue' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
 37 |                 }
 38 |                 object.target = self
AppKit.NSControl:23:14: note: mutation of this property is only permitted within the actor
21 |     open var controlSize: NSControl.ControlSize { get set }
22 |     open var formatter: Formatter? { get set }
23 |     open var objectValue: Any? { get set }
   |              `- note: mutation of this property is only permitted within the actor
24 |     open var stringValue: String { get set }
25 |     @NSCopying open var attributedStringValue: NSAttributedString { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSControl Glue.swift:38:24: warning: main actor-isolated property 'target' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
 36 |                     self.object.objectValue = value
 37 |                 }
 38 |                 object.target = self
    |                        `- warning: main actor-isolated property 'target' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
 39 |                 object.action = #selector(GlueForNSControl.controlAction(_:))
 40 |             }
AppKit.NSControl:4:30: note: mutation of this property is only permitted within the actor
 2 |     public init(frame frameRect: NSRect)
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
   |                              `- note: mutation of this property is only permitted within the actor
 5 |     open var action: Selector? { get set }
 6 |     open var tag: Int { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSControl Glue.swift:39:24: warning: main actor-isolated property 'action' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
 37 |                 }
 38 |                 object.target = self
 39 |                 object.action = #selector(GlueForNSControl.controlAction(_:))
    |                        `- warning: main actor-isolated property 'action' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
 40 |             }
 41 |         }
AppKit.NSControl:5:14: note: mutation of this property is only permitted within the actor
 3 |     public init?(coder: NSCoder)
 4 |     @MainActor weak open var target: AnyObject? { get set }
 5 |     open var action: Selector? { get set }
   |              `- note: mutation of this property is only permitted within the actor
 6 |     open var tag: Int { get set }
 7 |     open var ignoresMultiClick: Bool { get set }
/Users/admin/builder/spi-builder-workspace/Sources/NSObject Glue.swift:34:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ModernKVOObservation' to 'Hashable' by implementing 'hash(into:)' instead
 32 |     }
 33 |
 34 |     var hashValue: Int { return sink.hashValue }
    |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ModernKVOObservation' to 'Hashable' by implementing 'hash(into:)' instead
 35 |     public static func ==(left: ModernKVOObservation, right: ModernKVOObservation) -> Bool {
 36 |         return left.sink == right.sink
/Users/admin/builder/spi-builder-workspace/Sources/NSObject Glue.swift:161:13: warning: var 'associatedObjectKeyForGlue' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
159 | //
160 |
161 | private var associatedObjectKeyForGlue: UInt8 = 0
    |             |- warning: var 'associatedObjectKeyForGlue' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'associatedObjectKeyForGlue' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'associatedObjectKeyForGlue' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
162 |
163 | extension NSObject {
/Users/admin/builder/spi-builder-workspace/Sources/NSObject Glue.swift:235:28: warning: static property 'observingContext' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
233 |
234 | extension GlueForNSObject {
235 |     fileprivate static var observingContext: UInt8 = 0
    |                            |- warning: static property 'observingContext' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                            |- note: convert 'observingContext' to a 'let' constant to make 'Sendable' shared state immutable
    |                            |- note: annotate 'observingContext' with '@MainActor' if property should only be accessed from the main actor
    |                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
236 |
237 |     fileprivate func add<Sink: SinkType>(_  sink: Sink, forKeyPath keyPath: String) where Sink.Value == ValueUpdate<Any?> {
/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: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:170:18: error: property does not override any property from its superclass
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: property does not override any property from its superclass
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:172:19: error: method does not override any method from its superclass
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: method does not override any method from its superclass
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:173:19: error: method does not override any method from its superclass
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: method does not override any method from its superclass
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:185:18: error: property does not override any property from its superclass
183 |
184 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
185 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                  `- error: property does not override any property from its superclass
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/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'
 81 |     }
 82 |
 83 |     internal subscript(bounds: Range<Int>) -> MutableRangeReplaceableRandomAccessSlice<RefList> {
    |                                               |- warning: 'MutableRangeReplaceableRandomAccessSlice' is deprecated: renamed to 'Slice'
    |                                               `- note: use 'Slice' instead
 84 |         get {
 85 |             return .init(base: self, bounds: bounds)
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:10:70: error: type 'Self.Element' does not conform to protocol 'Hashable'
  8 |
  9 | extension ObservableSetType {
 10 |     public func filter(_ isIncluded: @escaping (Element) -> Bool) -> AnyObservableSet<Element> {
    |                                                                      `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 11 |         return SetFilteringOnPredicate<Self>(parent: self, test: isIncluded).anyObservableSet
 12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:17:100: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 15 | }
 16 |
 17 | private class SetFilteringOnObservableBool<Parent: ObservableSetType, Field: ObservableValueType>: _BaseObservableSet<Parent.Element>
    |                                                                                                    `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 18 | where Field.Value == Bool {
 19 |     typealias Element = Parent.Element
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:20:24: error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 18 | where Field.Value == Bool {
 19 |     typealias Element = Parent.Element
 20 |     typealias Change = SetChange<Element>
    |                        `- error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 21 |
 22 |     private struct ParentSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:27:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 25 |         unowned(unsafe) let owner: Owner
 26 |
 27 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 28 |             owner.applyParentUpdate(update)
 29 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFilteringOnObservableBool.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFilteringOnObservableBool.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:22:20: error: type 'SetFilteringOnObservableBool<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 20 |     typealias Change = SetChange<Element>
 21 |
 22 |     private struct ParentSink: UniqueOwnedSink {
    |                    `- error: type 'SetFilteringOnObservableBool<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 23 |         typealias Owner = SetFilteringOnObservableBool
 24 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFilteringOnObservableBool.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFilteringOnObservableBool.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:55:35: error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 53 |     private let isIncluded: (Element) -> Field
 54 |
 55 |     private var matchingElements: Set<Element> = []
    |                                   `- error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 56 |     private var fieldSinks: Dictionary<FieldSink, Field> = [:]
 57 |
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:76:25: error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 74 |     }
 75 |
 76 |     override var value: Set<Element> {
    |                         `- error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 77 |         if isConnected { return matchingElements }
 78 |         return Set(self.parent.value.filter { isIncluded($0).value })
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:76:18: error: property does not override any property from its superclass
 74 |     }
 75 |
 76 |     override var value: Set<Element> {
    |                  `- error: property does not override any property from its superclass
 77 |         if isConnected { return matchingElements }
 78 |         return Set(self.parent.value.filter { isIncluded($0).value })
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:81:19: error: method does not override any method from its superclass
 79 |     }
 80 |
 81 |     override func contains(_ member: Element) -> Bool {
    |                   `- error: method does not override any method from its superclass
 82 |         if isConnected { return matchingElements.contains(member) }
 83 |         return self.parent.contains(member) && isIncluded(member).value
/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/SetFilteringOnObservableBool.swift:86:38: error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 84 |     }
 85 |
 86 |     override func isSubset(of other: Set<Element>) -> Bool {
    |                                      `- error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 87 |         if isConnected { return matchingElements.isSubset(of: other) }
 88 |         for member in self.parent.value {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:86:19: error: method does not override any method from its superclass
 84 |     }
 85 |
 86 |     override func isSubset(of other: Set<Element>) -> Bool {
    |                   `- error: method does not override any method from its superclass
 87 |         if isConnected { return matchingElements.isSubset(of: other) }
 88 |         for member in self.parent.value {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:95:40: error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 93 |     }
 94 |
 95 |     override func isSuperset(of other: Set<Element>) -> Bool {
    |                                        `- error: type 'SetFilteringOnObservableBool<Parent, Field>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 96 |         if isConnected { return matchingElements.isSuperset(of: other) }
 97 |         for member in other {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:95:19: error: method does not override any method from its superclass
 93 |     }
 94 |
 95 |     override func isSuperset(of other: Set<Element>) -> Bool {
    |                   `- error: method does not override any method from its superclass
 96 |         if isConnected { return matchingElements.isSuperset(of: other) }
 97 |         for member in other {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnObservableBool.swift:125:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
123 |     }
124 |
125 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
126 |         switch update {
127 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:33:73: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 31 | }
 32 |
 33 | private final class SetFilteringOnPredicate<Parent: ObservableSetType>: _BaseObservableSet<Parent.Element> {
    |                                                                         `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 34 |     public typealias Element = Parent.Element
 35 |     public typealias Change = SetChange<Element>
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:35:31: error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 33 | private final class SetFilteringOnPredicate<Parent: ObservableSetType>: _BaseObservableSet<Parent.Element> {
 34 |     public typealias Element = Parent.Element
 35 |     public typealias Change = SetChange<Element>
    |                               `- error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 36 |
 37 |     private struct FilteringSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:42:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 40 |         unowned let owner: Owner
 41 |
 42 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 43 |             owner.applyParentUpdate(update)
 44 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFilteringOnPredicate.FilteringSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFilteringOnPredicate.FilteringSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:37:20: error: type 'SetFilteringOnPredicate<Parent>.FilteringSink' does not conform to protocol 'SinkType'
 35 |     public typealias Change = SetChange<Element>
 36 |
 37 |     private struct FilteringSink: UniqueOwnedSink {
    |                    `- error: type 'SetFilteringOnPredicate<Parent>.FilteringSink' does not conform to protocol 'SinkType'
 38 |         typealias Owner = SetFilteringOnPredicate
 39 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:50:35: error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 48 |     private let test: (Element) -> Bool
 49 |
 50 |     private var matchingElements: Set<Element> = []
    |                                   `- error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 51 |
 52 |     init(parent: Parent, test: @escaping (Element) -> Bool) {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:64:25: error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 62 |         return parent.value.reduce(0) { test($1) ? $0 + 1 : $0 }
 63 |     }
 64 |     override var value: Set<Element> {
    |                         `- error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 65 |         if isConnected { return matchingElements }
 66 |         return Set(self.parent.value.filter(test))
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:64:18: error: property does not override any property from its superclass
 62 |         return parent.value.reduce(0) { test($1) ? $0 + 1 : $0 }
 63 |     }
 64 |     override var value: Set<Element> {
    |                  `- error: property does not override any property from its superclass
 65 |         if isConnected { return matchingElements }
 66 |         return Set(self.parent.value.filter(test))
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:68:19: error: method does not override any method from its superclass
 66 |         return Set(self.parent.value.filter(test))
 67 |     }
 68 |     override func contains(_ member: Element) -> Bool {
    |                   `- error: method does not override any method from its superclass
 69 |         if isConnected { return matchingElements.contains(member) }
 70 |         return self.parent.contains(member) && test(member)
/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/SetFilteringOnPredicate.swift:72:38: error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 70 |         return self.parent.contains(member) && test(member)
 71 |     }
 72 |     override func isSubset(of other: Set<Element>) -> Bool {
    |                                      `- error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 73 |         if isConnected { return matchingElements.isSubset(of: other) }
 74 |         for member in self.parent.value {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:72:19: error: method does not override any method from its superclass
 70 |         return self.parent.contains(member) && test(member)
 71 |     }
 72 |     override func isSubset(of other: Set<Element>) -> Bool {
    |                   `- error: method does not override any method from its superclass
 73 |         if isConnected { return matchingElements.isSubset(of: other) }
 74 |         for member in self.parent.value {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:80:40: error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 78 |         return true
 79 |     }
 80 |     override func isSuperset(of other: Set<Element>) -> Bool {
    |                                        `- error: type 'SetFilteringOnPredicate<Parent>.Element' (aka 'Parent.Element') does not conform to protocol 'Hashable'
 81 |         if isConnected { return matchingElements.isSuperset(of: other) }
 82 |         for member in other {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:80:19: error: method does not override any method from its superclass
 78 |         return true
 79 |     }
 80 |     override func isSuperset(of other: Set<Element>) -> Bool {
    |                   `- error: method does not override any method from its superclass
 81 |         if isConnected { return matchingElements.isSuperset(of: other) }
 82 |         for member in other {
/Users/admin/builder/spi-builder-workspace/Sources/SetFilteringOnPredicate.swift:102:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
100 |     }
101 |
102 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
103 |         switch update {
104 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetFolding.swift:39:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
37 |         unowned(unsafe) let owner: Owner
38 |
39 |         func receive(_ update: SetUpdate<Parent.Element>) {
   |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
40 |             owner.applyUpdate(update)
41 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFoldingByTwoWayFunction.FoldingSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetFoldingByTwoWayFunction.FoldingSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetFolding.swift:70:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
68 |     }
69 |
70 |     func applyUpdate(_ update: SetUpdate<Parent.Element>) {
   |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
71 |         switch update {
72 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetGatheringSource.swift:24:31: error: type 'Origin.Element' does not conform to protocol 'Hashable'
22 |         unowned let owner: Owner
23 |
24 |         func receive(_ value: SetUpdate<Origin.Element>) {
   |                               `- error: type 'Origin.Element' does not conform to protocol 'Hashable'
25 |             guard case let .change(change) = value else { return }
26 |             change.removed.forEach { source in
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetGatheringSource.GatherSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetGatheringSource.GatherSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForArrayField.swift:22:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 20 |         unowned(unsafe) let owner: Owner
 21 |
 22 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 23 |             owner.applyParentUpdate(update)
 24 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForArrayField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForArrayField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForArrayField.swift:17:20: error: type 'SetMappingForArrayField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 15 | class SetMappingForArrayField<Parent: ObservableSetType, Field: ObservableArrayType>: SetMappingBase<Field.Element>
 16 | where Field.Element: Hashable {
 17 |     private struct ParentSink: UniqueOwnedSink {
    |                    `- error: type 'SetMappingForArrayField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 18 |         typealias Owner = SetMappingForArrayField
 19 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForArrayField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForArrayField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForArrayField.swift:63:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 61 |     }
 62 |
 63 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 64 |         switch update {
 65 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSequence.swift:24:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
22 |         unowned(unsafe) let owner: Owner
23 |
24 |         func receive(_ update: SetUpdate<Parent.Element>) {
   |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
25 |             owner.apply(update)
26 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForSequence.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForSequence.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSequence.swift:19:20: error: type 'SetMappingForSequence<Parent, Result>.ParentSink' does not conform to protocol 'SinkType'
17 |     typealias Element = Result.Iterator.Element
18 |
19 |     private struct ParentSink: UniqueOwnedSink {
   |                    `- error: type 'SetMappingForSequence<Parent, Result>.ParentSink' does not conform to protocol 'SinkType'
20 |         typealias Owner = SetMappingForSequence
21 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSequence.swift:48:26: error: type 'Parent.Element' does not conform to protocol 'Hashable'
46 |     }
47 |
48 |     func apply(_ update: SetUpdate<Parent.Element>) {
   |                          `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
49 |         switch update {
50 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:15:83: error: type 'Field.Element' does not conform to protocol 'Hashable'
 13 | }
 14 |
 15 | class SetMappingForSetField<Parent: ObservableSetType, Field: ObservableSetType>: SetMappingBase<Field.Element> {
    |                                                                                   `- error: type 'Field.Element' does not conform to protocol 'Hashable'
 16 |     private struct ParentSink: UniqueOwnedSink {
 17 |         typealias Owner = SetMappingForSetField
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:21:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 19 |         unowned(unsafe) let owner: Owner
 20 |
 21 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 22 |             owner.applyParentUpdate(update)
 23 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForSetField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForSetField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:16:20: error: type 'SetMappingForSetField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 14 |
 15 | class SetMappingForSetField<Parent: ObservableSetType, Field: ObservableSetType>: SetMappingBase<Field.Element> {
 16 |     private struct ParentSink: UniqueOwnedSink {
    |                    `- error: type 'SetMappingForSetField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 17 |         typealias Owner = SetMappingForSetField
 18 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:31:32: error: type 'Field.Element' does not conform to protocol 'Hashable'
 29 |         unowned(unsafe) let owner: Owner
 30 |
 31 |         func receive(_ update: SetUpdate<Field.Element>) {
    |                                `- error: type 'Field.Element' does not conform to protocol 'Hashable'
 32 |             owner.applyFieldUpdate(update)
 33 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForSetField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForSetField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:26:20: error: type 'SetMappingForSetField<Parent, Field>.FieldSink' does not conform to protocol 'SinkType'
 24 |     }
 25 |
 26 |     private struct FieldSink: UniqueOwnedSink {
    |                    `- error: type 'SetMappingForSetField<Parent, Field>.FieldSink' does not conform to protocol 'SinkType'
 27 |         typealias Owner = SetMappingForSetField
 28 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:62:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 60 |     }
 61 |
 62 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 63 |         switch update {
 64 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForSetField.swift:94:37: error: type 'Field.Element' does not conform to protocol 'Hashable'
 92 |     }
 93 |
 94 |     func applyFieldUpdate(_ update: SetUpdate<Field.Element>) {
    |                                     `- error: type 'Field.Element' does not conform to protocol 'Hashable'
 95 |         switch update {
 96 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValue.swift:29:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 27 |         unowned(unsafe) let owner: Owner
 28 |
 29 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 30 |             owner.apply(update)
 31 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'InjectiveSetMappingForValue.InjectiveSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'InjectiveSetMappingForValue.InjectiveSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValue.swift:24:20: error: type 'InjectiveSetMappingForValue<Parent, Element>.InjectiveSink' does not conform to protocol 'SinkType'
 22 |     typealias Change = SetChange<Element>
 23 |
 24 |     private struct InjectiveSink: UniqueOwnedSink {
    |                    `- error: type 'InjectiveSetMappingForValue<Parent, Element>.InjectiveSink' does not conform to protocol 'SinkType'
 25 |         typealias Owner = InjectiveSetMappingForValue
 26 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValue.swift:52:26: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 50 |     }
 51 |
 52 |     func apply(_ update: SetUpdate<Parent.Element>) {
    |                          `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 53 |         switch update {
 54 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValue.swift:98:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 96 |         unowned(unsafe) let owner: Owner
 97 |
 98 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 99 |             owner.apply(update)
100 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForValue.MapSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForValue.MapSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValue.swift:93:20: error: type 'SetMappingForValue<Parent, Element>.MapSink' does not conform to protocol 'SinkType'
 91 |     typealias Change = SetChange<Element>
 92 |
 93 |     private struct MapSink: UniqueOwnedSink {
    |                    `- error: type 'SetMappingForValue<Parent, Element>.MapSink' does not conform to protocol 'SinkType'
 94 |         typealias Owner = SetMappingForValue
 95 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValue.swift:122:26: error: type 'Parent.Element' does not conform to protocol 'Hashable'
120 |     }
121 |
122 |     func apply(_ update: SetUpdate<Parent.Element>) {
    |                          `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
123 |         switch update {
124 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValueField.swift:27:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 25 |         unowned(unsafe) let owner: Owner
 26 |
 27 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 28 |             owner.applyParentUpdate(update)
 29 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValueField.swift:22:20: error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 20 | where Field.Value: Hashable {
 21 |
 22 |     private struct ParentSink: UniqueOwnedSink {
    |                    `- error: type 'SetMappingForValueField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 23 |         typealias Owner = SetMappingForValueField
 24 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetMappingForValueField.swift:66:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 64 |     }
 65 |
 66 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 67 |         switch update {
 68 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:17:85: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
15 | /// A mutable reference to an `AnyObservableSet` that's also an observable set.
16 | /// You can switch to another target set without having to re-register subscribers.
17 | private final class UnpackedObservableSetReference<Reference: ObservableValueType>: _BaseObservableSet<Reference.Value.Element>
   |                                                                                     `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
18 | where Reference.Value: ObservableSetType {
19 |     typealias Target = Reference.Value
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:21:24: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
19 |     typealias Target = Reference.Value
20 |     typealias Element = Target.Element
21 |     typealias Change = SetChange<Element>
   |                        `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
22 |
23 |     private struct ReferenceSink: UniqueOwnedSink {
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableSetReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableSetReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:38:32: error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
36 |         unowned(unsafe) let owner: Owner
37 |
38 |         func receive(_ update: SetUpdate<Reference.Value.Element>) {
   |                                `- error: type 'Reference.Value.Element' does not conform to protocol 'Hashable'
39 |             owner.applyTargetUpdate(update)
40 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableSetReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableSetReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:33:20: error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
31 |     }
32 |
33 |     private struct TargetSink: UniqueOwnedSink {
   |                    `- error: type 'UnpackedObservableSetReference<Reference>.TargetSink' does not conform to protocol 'SinkType'
34 |         typealias Owner = UnpackedObservableSetReference
35 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:79:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
77 |     }
78 |
79 |     func applyTargetUpdate(_ update: SetUpdate<Element>) {
   |                                      `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
80 |         switch update {
81 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:92:25: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
90 |     override var isBuffered: Bool { return false }
91 |     override var count: Int { return _reference.value.count }
92 |     override var value: Set<Element> { return _reference.value.value }
   |                         `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:92:18: error: property does not override any property from its superclass
90 |     override var isBuffered: Bool { return false }
91 |     override var count: Int { return _reference.value.count }
92 |     override var value: Set<Element> { return _reference.value.value }
   |                  `- error: property does not override any property from its superclass
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:93:19: error: method does not override any method from its superclass
91 |     override var count: Int { return _reference.value.count }
92 |     override var value: Set<Element> { return _reference.value.value }
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
   |                   `- error: method does not override any method from its superclass
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 |     override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
/Users/admin/builder/spi-builder-workspace/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/SetReference.swift:94:38: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
92 |     override var value: Set<Element> { return _reference.value.value }
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
   |                                      `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
95 |     override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
96 | }
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:94:19: error: method does not override any method from its superclass
92 |     override var value: Set<Element> { return _reference.value.value }
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
   |                   `- error: method does not override any method from its superclass
95 |     override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
96 | }
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:95:40: error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 |     override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
   |                                        `- error: type 'UnpackedObservableSetReference<Reference>.Element' (aka 'Reference.Value.Element') does not conform to protocol 'Hashable'
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/SetReference.swift:95:19: error: method does not override any method from its superclass
93 |     override func contains(_ member: Element) -> Bool { return _reference.value.contains(member) }
94 |     override func isSubset(of other: Set<Element>) -> Bool { return _reference.value.isSubset(of: other) }
95 |     override func isSuperset(of other: Set<Element>) -> Bool { return _reference.value.isSuperset(of: other) }
   |                   `- error: method does not override any method from its superclass
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByComparableField.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 28 |         unowned(unsafe) let owner: Owner
 29 |
 30 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 31 |             owner.applyParentUpdate(update)
 32 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByComparableField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByComparableField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByComparableField.swift:25:20: error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 23 |     typealias Change = ArrayChange<Element>
 24 |
 25 |     private struct ParentSink: UniqueOwnedSink {
    |                    `- error: type 'SetSortingByComparableField<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 26 |         typealias Owner = SetSortingByComparableField
 27 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByComparableField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByComparableField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByComparableField.swift:115:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
113 |     }
114 |
115 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
116 |         switch update {
117 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByMappingToComparable.swift:34:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 32 |         unowned(unsafe) let owner: Owner
 33 |
 34 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 35 |             owner.applyParentUpdate(update)
 36 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByMappingToComparable.SortingSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByMappingToComparable.SortingSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByMappingToComparable.swift:29:20: error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
 27 |     typealias Change = ArrayChange<Element>
 28 |
 29 |     private struct SortingSink: UniqueOwnedSink {
    |                    `- error: type 'SetSortingByMappingToComparable<Parent, Element>.SortingSink' does not conform to protocol 'SinkType'
 30 |         typealias Owner = SetSortingByMappingToComparable
 31 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByMappingToComparable.swift:60:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 58 |     }
 59 |
 60 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 61 |         switch update {
 62 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByMappingToObservableComparable.swift:30:32: error: type 'Parent.Element' does not conform to protocol 'Hashable'
 28 |         unowned(unsafe) let owner: Owner
 29 |
 30 |         func receive(_ update: SetUpdate<Parent.Element>) {
    |                                `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
 31 |             owner.applyParentUpdate(update)
 32 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByMappingToObservableComparable.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByMappingToObservableComparable.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByMappingToObservableComparable.swift:25:20: error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 23 |     typealias Change = ArrayChange<Element>
 24 |
 25 |     private struct ParentSink: UniqueOwnedSink {
    |                    `- error: type 'SetSortingByMappingToObservableComparable<Parent, Field>.ParentSink' does not conform to protocol 'SinkType'
 26 |         typealias Owner = SetSortingByMappingToObservableComparable
 27 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByMappingToObservableComparable.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SetSortingByMappingToObservableComparable.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/SetSortingByMappingToObservableComparable.swift:121:38: error: type 'Parent.Element' does not conform to protocol 'Hashable'
119 |     }
120 |
121 |     func applyParentUpdate(_ update: SetUpdate<Parent.Element>) {
    |                                      `- error: type 'Parent.Element' does not conform to protocol 'Hashable'
122 |         switch update {
123 |         case .beginTransaction:
/Users/admin/builder/spi-builder-workspace/Sources/Signal.swift:271:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SignalSink' to 'Hashable' by implementing 'hash(into:)' instead
269 |     }
270 |
271 |     var hashValue: Int {
    |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SignalSink' to 'Hashable' by implementing 'hash(into:)' instead
272 |         return ObjectIdentifier(signal).hashValue
273 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:49:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'AnySink' to 'Hashable' by implementing 'hash(into:)' instead
 47 |     }
 48 |
 49 |     public var hashValue: Int {
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'AnySink' to 'Hashable' by implementing 'hash(into:)' instead
 50 |         return box.hashValue
 51 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:70:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type '_AbstractSink' to 'Hashable' by implementing 'hash(into:)' instead
 68 |     func receive(_ value: Value) { abstract() }
 69 |
 70 |     var hashValue: Int { abstract() }
    |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type '_AbstractSink' to 'Hashable' by implementing 'hash(into:)' instead
 71 |
 72 |     func isEqual(to other: _AbstractSink<Value>) -> Bool { abstract() }
/Users/admin/builder/spi-builder-workspace/Sources/TimerSource.swift:148:5: warning: 'public' modifier is redundant for initializer declared in a public extension
146 |     /// @param start: The time at which the source should fire first, or nil to begin firing `interval` seconds from now.
147 |     /// @param interval: The minimum time period between the beginnings of subsequent firings.
148 |     public convenience init(queue: DispatchQueue = DispatchQueue.main, start: Date? = nil, interval: TimeInterval) {
    |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
149 |         assert(interval > 0)
150 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'TransformedSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'TransformedSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromClosure' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromClosure' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformToConstant' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformToConstant' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromMapping' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromMapping' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromOptionalMapping' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromOptionalMapping' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromFilter' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromFilter' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/Sources/TransformedSink.swift:19:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromSequence' to 'Hashable' by implementing 'hash(into:)' instead
 17 |
 18 | extension SinkTransform where Self: AnyObject {
 19 |     public var hashValue: Int { return ObjectIdentifier(self).hashValue }
    |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'SinkTransformFromSequence' to 'Hashable' by implementing 'hash(into:)' instead
 20 |     public static func ==(a: Self, b: Self) -> Bool { return a === b }
 21 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BindSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BindSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:11:26: error: type 'Self.Element' does not conform to protocol 'Hashable'
  9 | public protocol UpdatableSetType: ObservableSetType, UpdatableType {
 10 |     var value: Base { get nonmutating set }
 11 |     func apply(_ update: SetUpdate<Element>)
    |                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 12 |
 13 |     // Optional members
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:17:29: error: type 'Self.Element' does not conform to protocol 'Hashable'
 15 |     func insert(_ member: Element)
 16 |     func removeAll()
 17 |     func formUnion(_ other: Set<Element>)
    |                             `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 18 |     func formIntersection(_ other: Set<Element>)
 19 |     func formSymmetricDifference(_ other: Set<Element>)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:18:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
 16 |     func removeAll()
 17 |     func formUnion(_ other: Set<Element>)
 18 |     func formIntersection(_ other: Set<Element>)
    |                                    `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 19 |     func formSymmetricDifference(_ other: Set<Element>)
 20 |     func subtract(_ other: Set<Element>)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:19:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
 17 |     func formUnion(_ other: Set<Element>)
 18 |     func formIntersection(_ other: Set<Element>)
 19 |     func formSymmetricDifference(_ other: Set<Element>)
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 20 |     func subtract(_ other: Set<Element>)
 21 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:20:28: error: type 'Self.Element' does not conform to protocol 'Hashable'
 18 |     func formIntersection(_ other: Set<Element>)
 19 |     func formSymmetricDifference(_ other: Set<Element>)
 20 |     func subtract(_ other: Set<Element>)
    |                            `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 21 |
 22 |     var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { get }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:22:46: error: type 'Self.Element' does not conform to protocol 'Hashable'
 20 |     func subtract(_ other: Set<Element>)
 21 |
 22 |     var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { get }
    |                                              `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 23 |     var anyUpdatableSet: AnyUpdatableSet<Element> { get }
 24 | }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:23:26: error: type 'Self.Element' does not conform to protocol 'Hashable'
 21 |
 22 |     var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { get }
 23 |     var anyUpdatableSet: AnyUpdatableSet<Element> { get }
    |                          `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 24 | }
 25 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:48:36: error: type 'Self.Element' does not conform to protocol 'Hashable'
 46 |     }
 47 |
 48 |     public func formUnion(_ other: Set<Element>) {
    |                                    `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 49 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 50 |         let difference = other.subtracting(value)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:54:43: error: type 'Self.Element' does not conform to protocol 'Hashable'
 52 |     }
 53 |
 54 |     public func formIntersection(_ other: Set<Element>) {
    |                                           `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 55 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 56 |         let difference = value.subtracting(other)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:60:50: error: type 'Self.Element' does not conform to protocol 'Hashable'
 58 |     }
 59 |
 60 |     public func formSymmetricDifference(_ other: Set<Element>) {
    |                                                  `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 61 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 62 |         let value = self.value
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:68:35: error: type 'Self.Element' does not conform to protocol 'Hashable'
 66 |     }
 67 |
 68 |     public func subtract(_ other: Set<Element>) {
    |                                   `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 69 |         // Note: This should be kept in sync with the same member in _AbstractUpdatableSet.
 70 |         let intersection = value.intersection(other)
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:74:45: error: type 'Self.Element' does not conform to protocol 'Hashable'
 72 |     }
 73 |
 74 |     public func apply(_ update: ValueUpdate<Set<Element>>) {
    |                                             `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 75 |         self.apply(update.map { change in SetChange(from: change.old, to: change.new) })
 76 |     }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:78:53: error: type 'Self.Element' does not conform to protocol 'Hashable'
 76 |     }
 77 |
 78 |     public var anyUpdatableValue: AnyUpdatableValue<Set<Element>> {
    |                                                     `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 79 |         return AnyUpdatableValue(
 80 |             getter: { self.value },
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:85:33: error: type 'Self.Element' does not conform to protocol 'Hashable'
 83 |     }
 84 |
 85 |     public var anyUpdatableSet: AnyUpdatableSet<Element> {
    |                                 `- error: type 'Self.Element' does not conform to protocol 'Hashable'
 86 |         return AnyUpdatableSet(box: UpdatableSetBox(self))
 87 |     }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:241:58: error: type 'Contents.Element' does not conform to protocol 'Hashable'
239 | }
240 |
241 | final class UpdatableSetBox<Contents: UpdatableSetType>: _AbstractUpdatableSet<Contents.Element> {
    |                                                          `- error: type 'Contents.Element' does not conform to protocol 'Hashable'
242 |     typealias Element = Contents.Element
243 |     typealias Change = SetChange<Element>
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:243:24: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
241 | final class UpdatableSetBox<Contents: UpdatableSetType>: _AbstractUpdatableSet<Contents.Element> {
242 |     typealias Element = Contents.Element
243 |     typealias Change = SetChange<Element>
    |                        `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
244 |
245 |     let contents: Contents
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:254:25: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
252 |     override var count: Int { return contents.count }
253 |
254 |     override var value: Set<Element> {
    |                         `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
255 |         get { return contents.value }
256 |         set { contents.value = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:254:18: error: property does not override any property from its superclass
252 |     override var count: Int { return contents.count }
253 |
254 |     override var value: Set<Element> {
    |                  `- error: property does not override any property from its superclass
255 |         get { return contents.value }
256 |         set { contents.value = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:259:35: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
257 |     }
258 |
259 |     override func apply(_ update: SetUpdate<Element>) { contents.apply(update) }
    |                                   `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
260 |
261 |     override func remove(_ member: Element) { contents.remove(member) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:259:19: error: method does not override any method from its superclass
257 |     }
258 |
259 |     override func apply(_ update: SetUpdate<Element>) { contents.apply(update) }
    |                   `- error: method does not override any method from its superclass
260 |
261 |     override func remove(_ member: Element) { contents.remove(member) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:261:19: error: method does not override any method from its superclass
142 |     open func apply(_ update: SetUpdate<Element>) { abstract() }
143 |
144 |     open func remove(_ member: Element) {
    |               `- note: potential overridden instance method 'remove' here
145 |         // Note: This should be kept in sync with the same member in the UpdatableSetType extension above.
146 |         if contains(member) {
    :
259 |     override func apply(_ update: SetUpdate<Element>) { contents.apply(update) }
260 |
261 |     override func remove(_ member: Element) { contents.remove(member) }
    |                   `- error: method does not override any method from its superclass
262 |     override func insert(_ member: Element) { contents.insert(member) }
263 |     override func removeAll() { contents.removeAll() }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:262:19: error: method does not override any method from its superclass
149 |     }
150 |
151 |     open func insert(_ member: Element) {
    |               `- note: potential overridden instance method 'insert' here
152 |         // Note: This should be kept in sync with the same member in the UpdatableSetType extension above.
153 |         if !contains(member) {
    :
260 |
261 |     override func remove(_ member: Element) { contents.remove(member) }
262 |     override func insert(_ member: Element) { contents.insert(member) }
    |                   `- error: method does not override any method from its superclass
263 |     override func removeAll() { contents.removeAll() }
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:264:38: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
262 |     override func insert(_ member: Element) { contents.insert(member) }
263 |     override func removeAll() { contents.removeAll() }
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
    |                                      `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:264:19: error: method does not override any method from its superclass
262 |     override func insert(_ member: Element) { contents.insert(member) }
263 |     override func removeAll() { contents.removeAll() }
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
    |                   `- error: method does not override any method from its superclass
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:265:45: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
263 |     override func removeAll() { contents.removeAll() }
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
    |                                             `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:265:19: error: method does not override any method from its superclass
263 |     override func removeAll() { contents.removeAll() }
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
    |                   `- error: method does not override any method from its superclass
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:266:52: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
    |                                                    `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
268 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:266:19: error: method does not override any method from its superclass
264 |     override func formUnion(_ other: Set<Element>) { contents.formUnion(other) }
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
    |                   `- error: method does not override any method from its superclass
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
268 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:267:37: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
    |                                     `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
268 |
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:267:19: error: method does not override any method from its superclass
265 |     override func formIntersection(_ other: Set<Element>) { contents.formIntersection(other) }
266 |     override func formSymmetricDifference(_ other: Set<Element>) { contents.formSymmetricDifference(other) }
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
    |                   `- error: method does not override any method from its superclass
268 |
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:269:19: error: method does not override any method from its superclass
267 |     override func subtract(_ other: Set<Element>) { contents.subtract(other) }
268 |
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
    |                   `- error: method does not override any method from its superclass
270 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
271 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
/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/UpdatableSet.swift:270:38: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
268 |
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
270 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                                      `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
271 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
272 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:270:19: error: method does not override any method from its superclass
268 |
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
270 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
    |                   `- error: method does not override any method from its superclass
271 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
272 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:271:40: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
270 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
271 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                                        `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
272 |
273 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:271:19: error: method does not override any method from its superclass
269 |     override func contains(_ member: Element) -> Bool { return contents.contains(member) }
270 |     override func isSubset(of other: Set<Element>) -> Bool { return contents.isSubset(of: other) }
271 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
    |                   `- error: method does not override any method from its superclass
272 |
273 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:273:19: error: method does not override any method from its superclass
271 |     override func isSuperset(of other: Set<Element>) -> Bool { return contents.isSuperset(of: other) }
272 |
273 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
    |                   `- error: method does not override any method from its superclass
274 |         contents.add(sink)
275 |     }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:278:19: error: method does not override any method from its superclass
276 |
277 |     @discardableResult
278 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change> {
    |                   `- error: method does not override any method from its superclass
279 |         return contents.remove(sink)
280 |     }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:284:57: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
282 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
283 |
284 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                                                         `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
285 |     override var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { return contents.anyUpdatableValue }
286 | }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:284:18: error: property does not override any property from its superclass
282 |     override var observableCount: AnyObservableValue<Int> { return contents.observableCount }
283 |
284 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
    |                  `- error: property does not override any property from its superclass
285 |     override var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { return contents.anyUpdatableValue }
286 | }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:285:55: error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
283 |
284 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
285 |     override var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { return contents.anyUpdatableValue }
    |                                                       `- error: type 'UpdatableSetBox<Contents>.Element' (aka 'Contents.Element') does not conform to protocol 'Hashable'
286 | }
287 |
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:285:18: error: property does not override any property from its superclass
283 |
284 |     override var anyObservableValue: AnyObservableValue<Set<Element>> { return contents.anyObservableValue }
285 |     override var anyUpdatableValue: AnyUpdatableValue<Set<Element>> { return contents.anyUpdatableValue }
    |                  `- error: property does not override any property from its superclass
286 | }
287 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForArrayField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForArrayField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForArrayField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForArrayField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:19:121: error: type 'Field.Element' does not conform to protocol 'Hashable'
 17 | }
 18 |
 19 | private final class UpdateSourceForSetField<Parent: ObservableValueType, Field: ObservableSetType>: TransactionalSource<SetChange<Field.Element>> {
    |                                                                                                                         `- error: type 'Field.Element' does not conform to protocol 'Hashable'
 20 |     typealias Element = Field.Element
 21 |     typealias Change = SetChange<Element>
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:21:24: error: type 'UpdateSourceForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
 19 | private final class UpdateSourceForSetField<Parent: ObservableValueType, Field: ObservableSetType>: TransactionalSource<SetChange<Field.Element>> {
 20 |     typealias Element = Field.Element
 21 |     typealias Change = SetChange<Element>
    |                        `- error: type 'UpdateSourceForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
 22 |     typealias Value = Update<Change>
 23 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForSetField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForSetField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:41:32: error: type 'Field.Element' does not conform to protocol 'Hashable'
 39 |         let identifier = 2
 40 |
 41 |         func receive(_ update: SetUpdate<Field.Element>) {
    |                                `- error: type 'Field.Element' does not conform to protocol 'Hashable'
 42 |             owner.applyFieldUpdate(update)
 43 |         }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForSetField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UpdateSourceForSetField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:35:20: error: type 'UpdateSourceForSetField<Parent, Field>.FieldSink' does not conform to protocol 'SinkType'
 33 |     }
 34 |
 35 |     private struct FieldSink: OwnedSink {
    |                    `- error: type 'UpdateSourceForSetField<Parent, Field>.FieldSink' does not conform to protocol 'SinkType'
 36 |         typealias Owner = UpdateSourceForSetField
 37 |
/Users/admin/builder/spi-builder-workspace/Sources/Sink.swift:10:20: note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
  8 |
  9 | public protocol SinkType: Hashable {
 10 |     associatedtype Value
    |                    `- note: protocol requires nested type 'Value'; add nested type 'Value' for conformance
 11 |     func receive(_ value: Value)
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:95:37: error: type 'Field.Element' does not conform to protocol 'Hashable'
 93 |     }
 94 |
 95 |     func applyFieldUpdate(_ update: SetUpdate<Field.Element>) {
    |                                     `- error: type 'Field.Element' does not conform to protocol 'Hashable'
 96 |         send(update)
 97 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:100:101: error: type 'Field.Element' does not conform to protocol 'Hashable'
 98 | }
 99 |
100 | private final class ValueMappingForSetField<Parent: ObservableValueType, Field: ObservableSetType>: _AbstractObservableSet<Field.Element> {
    |                                                                                                     `- error: type 'Field.Element' does not conform to protocol 'Hashable'
101 |     typealias Element = Field.Element
102 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:113:25: error: type 'ValueMappingForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
111 |     override var isBuffered: Bool { return field.isBuffered }
112 |     override var count: Int { return field.count }
113 |     override var value: Set<Element> { return field.value }
    |                         `- error: type 'ValueMappingForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:113:18: error: property does not override any property from its superclass
111 |     override var isBuffered: Bool { return field.isBuffered }
112 |     override var count: Int { return field.count }
113 |     override var value: Set<Element> { return field.value }
    |                  `- error: property does not override any property from its superclass
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:114:19: error: method does not override any method from its superclass
112 |     override var count: Int { return field.count }
113 |     override var value: Set<Element> { return field.value }
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
    |                   `- error: method does not override any method from its superclass
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
116 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
/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/ValueMappingForSetField.swift:115:38: error: type 'ValueMappingForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
113 |     override var value: Set<Element> { return field.value }
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
    |                                      `- error: type 'ValueMappingForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
116 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
117 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:115:19: error: method does not override any method from its superclass
113 |     override var value: Set<Element> { return field.value }
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
    |                   `- error: method does not override any method from its superclass
116 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
117 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:116:40: error: type 'ValueMappingForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
116 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
    |                                        `- error: type 'ValueMappingForSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
117 |
118 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:116:19: error: method does not override any method from its superclass
114 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
115 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
116 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
    |                   `- error: method does not override any method from its superclass
117 |
118 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:118:19: error: method does not override any method from its superclass
116 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
117 |
118 |     override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
    |                   `- error: method does not override any method from its superclass
119 |         updateSource.add(sink)
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:123:19: error: method does not override any method from its superclass
121 |
122 |     @discardableResult
123 |     override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change> {
    |                   `- error: method does not override any method from its superclass
124 |         return updateSource.remove(sink)
125 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:128:109: error: type 'Field.Element' does not conform to protocol 'Hashable'
126 | }
127 |
128 | private final class ValueMappingForUpdatableSetField<Parent: ObservableValueType, Field: UpdatableSetType>: _AbstractUpdatableSet<Field.Element> {
    |                                                                                                             `- error: type 'Field.Element' does not conform to protocol 'Hashable'
129 |     typealias Element = Field.Element
130 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:141:25: error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
139 |     override var isBuffered: Bool { return field.isBuffered }
140 |     override var count: Int { return field.count }
141 |     override var value: Set<Element> {
    |                         `- error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
142 |         get { return field.value }
143 |         set { field.value = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:141:18: error: property does not override any property from its superclass
139 |     override var isBuffered: Bool { return field.isBuffered }
140 |     override var count: Int { return field.count }
141 |     override var value: Set<Element> {
    |                  `- error: property does not override any property from its superclass
142 |         get { return field.value }
143 |         set { field.value = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:145:19: error: method does not override any method from its superclass
143 |         set { field.value = newValue }
144 |     }
145 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
    |                   `- error: method does not override any method from its superclass
146 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
/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/ValueMappingForSetField.swift:146:38: error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
144 |     }
145 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
146 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
    |                                      `- error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
148 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:146:19: error: method does not override any method from its superclass
144 |     }
145 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
146 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
    |                   `- error: method does not override any method from its superclass
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
148 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:147:40: error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
145 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
146 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
    |                                        `- error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
148 |
149 |     override func apply(_ update: SetUpdate<Element>) { field.apply(update) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:147:19: error: method does not override any method from its superclass
145 |     override func contains(_ member: Element) -> Bool { return field.contains(member) }
146 |     override func isSubset(of other: Set<Element>) -> Bool { return field.isSubset(of: other) }
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
    |                   `- error: method does not override any method from its superclass
148 |
149 |     override func apply(_ update: SetUpdate<Element>) { field.apply(update) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:149:35: error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
148 |
149 |     override func apply(_ update: SetUpdate<Element>) { field.apply(update) }
    |                                   `- error: type 'ValueMappingForUpdatableSetField<Parent, Field>.Element' (aka 'Field.Element') does not conform to protocol 'Hashable'
150 |
151 |     override func remove(_ member: Element) { field.remove(member) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:149:19: error: method does not override any method from its superclass
147 |     override func isSuperset(of other: Set<Element>) -> Bool { return field.isSuperset(of: other) }
148 |
149 |     override func apply(_ update: SetUpdate<Element>) { field.apply(update) }
    |                   `- error: method does not override any method from its superclass
150 |
151 |     override func remove(_ member: Element) { field.remove(member) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:151:19: error: method does not override any method from its superclass
149 |     override func apply(_ update: SetUpdate<Element>) { field.apply(update) }
150 |
151 |     override func remove(_ member: Element) { field.remove(member) }
    |                   `- error: method does not override any method from its superclass
152 |     override func insert(_ member: Element) { field.insert(member) }
153 |     override func removeAll() { field.removeAll() }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:144:15: note: potential overridden instance method 'remove' here
142 |     open func apply(_ update: SetUpdate<Element>) { abstract() }
143 |
144 |     open func remove(_ member: Element) {
    |               `- note: potential overridden instance method 'remove' here
145 |         // Note: This should be kept in sync with the same member in the UpdatableSetType extension above.
146 |         if contains(member) {
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:152:19: error: method does not override any method from its superclass
150 |
151 |     override func remove(_ member: Element) { field.remove(member) }
152 |     override func insert(_ member: Element) { field.insert(member) }
    |                   `- error: method does not override any method from its superclass
153 |     override func removeAll() { field.removeAll() }
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
/Users/admin/builder/spi-builder-workspace/Sources/UpdatableSet.swift:151:15: note: potential overridden instance method 'insert' here
149 |     }
150 |
151 |     open func insert(_ member: Element) {
    |               `- note: potential overridden instance method 'insert' here
152 |         // Note: This should be kept in sync with the same member in the UpdatableSetType extension above.
153 |         if !contains(member) {
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:154:38: error: type 'Field.Element' does not conform to protocol 'Hashable'
152 |     override func insert(_ member: Element) { field.insert(member) }
153 |     override func removeAll() { field.removeAll() }
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
    |                                      `- error: type 'Field.Element' does not conform to protocol 'Hashable'
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:154:19: error: method does not override any method from its superclass
152 |     override func insert(_ member: Element) { field.insert(member) }
153 |     override func removeAll() { field.removeAll() }
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
    |                   `- error: method does not override any method from its superclass
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:155:45: error: type 'Field.Element' does not conform to protocol 'Hashable'
153 |     override func removeAll() { field.removeAll() }
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
    |                                             `- error: type 'Field.Element' does not conform to protocol 'Hashable'
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:155:19: error: method does not override any method from its superclass
153 |     override func removeAll() { field.removeAll() }
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
    |                   `- error: method does not override any method from its superclass
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:156:52: error: type 'Field.Element' does not conform to protocol 'Hashable'
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
    |                                                    `- error: type 'Field.Element' does not conform to protocol 'Hashable'
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
158 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:156:19: error: method does not override any method from its superclass
154 |     override func formUnion(_ other: Set<Field.Element>) { field.formUnion(other) }
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
    |                   `- error: method does not override any method from its superclass
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
158 |
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:157:37: error: type 'Field.Element' does not conform to protocol 'Hashable'
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
    |                                     `- error: type 'Field.Element' does not conform to protocol 'Hashable'
158 |
159 |     final override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:157:19: error: method does not override any method from its superclass
155 |     override func formIntersection(_ other: Set<Field.Element>) { field.formIntersection(other) }
156 |     override func formSymmetricDifference(_ other: Set<Field.Element>) { field.formSymmetricDifference(other) }
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
    |                   `- error: method does not override any method from its superclass
158 |
159 |     final override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:159:25: error: method does not override any method from its superclass
157 |     override func subtract(_ other: Set<Field.Element>) { field.subtract(other) }
158 |
159 |     final override func add<Sink: SinkType>(_ sink: Sink) where Sink.Value == Update<Change> {
    |                         `- error: method does not override any method from its superclass
160 |         updateSource.add(sink)
161 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForSetField.swift:164:25: error: method does not override any method from its superclass
162 |
163 |     @discardableResult
164 |     final override func remove<Sink: SinkType>(_ sink: Sink) -> Sink where Sink.Value == Update<Change> {
    |                         `- error: method does not override any method from its superclass
165 |         return updateSource.remove(sink)
166 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForSourceField.SourceFieldSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForSourceField.SourceFieldSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ValueMappingForValue.swift:11:5: warning: 'public' modifier is redundant for instance method declared in a public extension
 9 | public extension ObservableValueType {
10 |     /// Returns an observable that calculates `transform` on all current and future values of this observable.
11 |     public func map<Output>(_ transform: @escaping (Value) -> Output) -> AnyObservableValue<Output> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
12 |         return ValueMappingForValue<Self, Output>(parent: self, transform: transform).anyObservableValue
13 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.ParentSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SipHash/SipHash/SipHashable.swift:42:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
40 |     /// Hash values are not guaranteed to be equal across different executions of your program.
41 |     /// Do not save hash values to use during a future execution.
42 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'ValueMappingForOptionalValueField.FieldSink' to 'Hashable' by implementing 'hash(into:)' instead
43 |         var hasher = SipHasher()
44 |         appendHashes(to: &hasher)
/Users/admin/builder/spi-builder-workspace/Sources/OwnedSink.swift:18:9: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableValueReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableValueReference.ReferenceSink' to 'Hashable' by implementing 'hash(into:)' instead
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 'UnpackedObservableValueReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead
16 |
17 | extension UniqueOwnedSink {
18 |     var hashValue: Int {
   |         `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'UnpackedObservableValueReference.TargetSink' to 'Hashable' by implementing 'hash(into:)' instead
19 |         return ObjectIdentifier(owner).hashValue
20 |     }
Fetching https://github.com/attaswift/SipHash
Fetching https://github.com/attaswift/BTree
[1/440] Fetching siphash
[19/3789] Fetching siphash, btree
Fetched https://github.com/attaswift/SipHash from cache (1.43s)
Fetched https://github.com/attaswift/BTree from cache (1.43s)
Computing version for https://github.com/attaswift/BTree
Computed https://github.com/attaswift/BTree at 4.1.0 (0.64s)
Computing version for https://github.com/attaswift/SipHash
Computed https://github.com/attaswift/SipHash at 1.2.2 (0.66s)
Creating working copy for https://github.com/attaswift/BTree
Working copy of https://github.com/attaswift/BTree resolved at 4.1.0
Creating working copy for https://github.com/attaswift/SipHash
Working copy of https://github.com/attaswift/SipHash resolved at 1.2.2
BUILD FAILURE 6.0 macosSpm
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.