@@ -7,9 +7,47 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
7
7
8
8
## [ Unreleased]
9
9
10
+ ## [ v0.15.0] - 2024-10-01
11
+
12
+ This update contains breaking changes that remove the ` raw ` API with the hope of
13
+ centralising on the ` HashTable ` API in the future. You can follow the discussion
14
+ and progress in #545 to discuss features you think should be added to this API
15
+ that were previously only possible on the ` raw ` API.
16
+
17
+ ### Added
18
+
19
+ - Added ` borsh ` feature with ` BorshSerialize ` and ` BorshDeserialize ` impls. (#525 )
20
+ - Added ` Assign ` impls for ` HashSet ` operators. (#529 )
21
+ - Added ` Default ` impls for iterator types. (#542 )
22
+ - Added ` HashTable::iter_hash{,_mut} ` methods. (#549 )
23
+ - Added ` Hash{Table,Map,Set}::allocation_size ` methods. (#553 )
24
+ - Implemented ` Debug ` and ` FusedIterator ` for all ` HashTable ` iterators. (#561 )
25
+ - Specialized ` Iterator::fold ` for all ` HashTable ` iterators. (#561 )
26
+
10
27
### Changed
11
28
12
- - Changed ` hash_set::{Entry, VacantEntry}::insert ` to return ` OccupiedEntry ` . (#495 )
29
+ - Changed ` hash_set::VacantEntry::insert ` to return ` OccupiedEntry ` . (#495 )
30
+ - Improved` hash_set::Difference::size_hint ` lower-bound. (#530 )
31
+ - Improved ` HashSet::is_disjoint ` performance. (#531 )
32
+ - ` equivalent ` feature is now enabled by default. (#532 )
33
+ - ` HashSet ` operators now return a set with the same allocator. (#529 )
34
+ - Changed the default hasher to foldhash. (#563 )
35
+ - ` ahash ` feature has been renamed to ` default-hasher ` . (#533 )
36
+ - Entry API has been reworked and several methods have been renamed. (#535 )
37
+ - ` Hash{Map,Set}::insert_unique_unchecked ` is now unsafe. (#556 )
38
+ - The signature of ` get_many_mut ` and related methods was changed. (#562 )
39
+
40
+ ### Fixed
41
+
42
+ * Fixed typos, stray backticks in docs. (#558 , #560 )
43
+
44
+ ### Removed
45
+
46
+ - Raw entry API is now under ` raw-entry ` feature, to be eventually removed. (#534 , #555 )
47
+ - Raw table API has been made private and the ` raw ` feature is removed;
48
+ in the future, all code should be using the ` HashTable ` API instead. (#531 , #546 )
49
+ - ` rykv ` feature was removed; this is now provided by the ` rykv ` crate instead. (#554 )
50
+ - ` HashSet::get_or_insert_owned ` was removed in favor of ` get_or_insert_with ` . (#555 )
13
51
14
52
## [ v0.14.5] - 2024-04-28
15
53
@@ -485,7 +523,8 @@ This release was _yanked_ due to a breaking change for users of `no-default-feat
485
523
486
524
- Initial release
487
525
488
- [ Unreleased ] : https://github.com/rust-lang/hashbrown/compare/v0.14.5...HEAD
526
+ [ Unreleased ] : https://github.com/rust-lang/hashbrown/compare/v0.15.0...HEAD
527
+ [ v0.15.0 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.5...v0.15.0
489
528
[ v0.14.5 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.4...v0.14.5
490
529
[ v0.14.4 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.3...v0.14.4
491
530
[ v0.14.3 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.2...v0.14.3
0 commit comments