@@ -18,6 +18,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
18
18
* Added missing ` NSCopying ` and ` NSMutableCopying ` zone methods.
19
19
* Added ` Eq ` and ` Ord ` implementations for ` NSNumber ` , since its
20
20
handling of floating point values allows it.
21
+ * Added ` NS[Mutable]Dictionary::from_id_slice ` and
22
+ ` NS[Mutable]Dictionary::from_slice ` .
23
+ * Added ` NSMutableDictionary::insert ` and ` NSMutableSet::insert ` which can
24
+ be more efficient than the previous insertion methods.
21
25
22
26
### Changed
23
27
* Moved the ` ns_string! ` macro to ` icrate::Foundation::ns_string ` . The old
@@ -44,13 +48,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
44
48
// Do something with `app` and `view`
45
49
```
46
50
* ** BREAKING** : Changed the ` NSApp ` static to be a function taking ` MainThreadMarker ` .
51
+ * ** BREAKING** : Renamed ` NS[Mutable]Dictionary::from_keys_and_objects ` to
52
+ ` NS[Mutable]Dictionary::from_vec ` .
53
+ * ** BREAKING** : Renamed ` NSMutableDictionary::insert ` and
54
+ ` NSMutableSet::insert ` to ` insert_id ` .
47
55
48
56
### Removed
49
57
* ** BREAKING** : Removed the ` MainThreadMarker ` argument from the closure
50
58
passed to ` MainThreadBound::get_on_main ` .
51
59
* ** BREAKING** : Removed ` Foundation::CopyHelper ` since it is superseded by
52
60
` objc2::mutability::CounterpartOrSelf ` .
53
61
62
+ ### Fixed
63
+ * ** BREAKING** : Added ` Eq + Hash ` requirement on most ` NSDictionary ` and
64
+ ` NSSet ` methods, thereby making sure that the types are actually correct
65
+ to use in such hashing collections.
66
+ * ** BREAKING** : Added ` HasStableHash ` requirement on ` NSDictionary ` and
67
+ ` NSSet ` creation methods, fixing a long-standing soundess issue.
68
+
54
69
55
70
## icrate 0.0.4 - 2023-07-31
56
71
0 commit comments