v0.17.0
- Added
hash_table::OccupiedEntry::replace_entry_with(#669) - Added
hash_map::{OccupiedEntry::into_entry, VacantEntryRef::insert_entry_with_key}(#670) - Added
hash_table::UnsafeIter(#667) - Added
itermethods to variousHashTableiterators (#667) - Added
HashMap::{replace_key,replace_key_unchecked,insert_with_key_unchecked}(#681) - Added
into_mapmethods to allHashMapentry types (#686) - Added
into_tablemethods to allHashTableentry types (#686) - Added
#[must_use]to constructors (#697) TryReserveErrornow implementsError(#698)
- Changed
EntryRefto useToOwned(#670) - Bumped MSRV to 1.85 (2024 edition) (#676)
HashTable:clone_fromnow forwards toRawTable::clone_frominstead of using the default implementation (#668)- Fixed potential UB in
RawTableInner::fallible_with_capacity(#692) - Fixed incorrect length if a hasher panics during rehash (#710)
v0.16.1
- Added
HashTablemethods related to the raw bucket index (#657) - Added
VacantEntryRef::insert_with_key(#579)
- Removed specialization for
Copytypes (#662) - The
get_many_mutfamily of methods have been renamed toget_disjoint_mutto match the standard library. The old names are still present for now, but deprecated. (#648) - Recognize and use over-sized allocations when using custom allocators. (#523)
- Depend on
serde_coreinstead ofserde. (#649) - Optimized
collecton rayon parallel iterators. (#652)
v0.15.3
- SIMD implementation for LoongArch (#592, requires nightly)
- Optimized insertion path by avoiding an unnecessary
match_empty(#607) - Increased minimum table size for small types (#615)
- Dropped FnMut trait bounds from
ExtractIfdata structures (#616) - Relaxed constraint in
hash_map::EntryRefinsertion methodsK: From<&Q>to &Q:Into<K>(#611) - Added allocator template argument for
rustc_iter(#605) - The
allocator-api2/nightlyfeature is no longer enabled byhashbrown/nightly(#606)