@@ -7,9 +7,47 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
77
88## [ Unreleased]
99
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+
1027### Changed
1128
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 )
1351
1452## [ v0.14.5] - 2024-04-28
1553
@@ -485,7 +523,8 @@ This release was _yanked_ due to a breaking change for users of `no-default-feat
485523
486524- Initial release
487525
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
489528[ v0.14.5 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.4...v0.14.5
490529[ v0.14.4 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.3...v0.14.4
491530[ v0.14.3 ] : https://github.com/rust-lang/hashbrown/compare/v0.14.2...v0.14.3
0 commit comments