- API incompatible change: upgrade
hashbrownto 0.15 (thank you @djc!). - API incompatible change: we now wrap
DefaultHashBuilderandDefaultHasherfromhashbrownso that in the future upgradinghashbrownis not an API incompatible change (thank you @djc!).
- Bugfix:
LruCache::contains_keyshould take&selfand not move the entry as though it is accessed. - Add basic
CursorMutAPI toHashMap(thanks @olebedev!) - Bump
hashbrowndependency to depend on a version ofhashbrownpast a downstreamzerocopydependency. - Don't depend on default features of
hashbrown, removesallocator-api2dependency.
- API incompatible change: Don't panic in
reserveandtry_reservein cases where a rehash is needed. Previously would panic, adds the proper bounds on reserve methods to do a rehash (previously bounds were missing, and reserve would result in panics). (Thank you @cuviper!)
- Now builds with
#![no_std].
- bump hashbrown to 0.14
- bump hashbrown to 0.13
- Add
retain_with_ordermethods, equivalent toretainbut which iterate through the map in the proper linked list order
- API incompatible change: No longer re-export hashbrown types so that bumping hashbrown is no longer an API compatible change.
- bump hashbrown to 0.12
- Fix implementation of
shrink_to_fitto not panic when called on non-empty containers.
- API incompatible change: depend on hashbrown 0.11, changes re-exported types.
- Fix
LinkedHashSet::backto take&selfnot&mut self. - API incompatible change: equality tests on
LinkedHashSetare now ordered, similar toLinkedHashMap. - Make the serde
Deserializeimplementations onLinkedHashMapandLinkedHashSetgeneric on theBuildHashertype. - Add
to_backandto_frontmethods forLinkedHashMapto control entry order.
- API incompatible change: depend on hashbrown 0.9, re-export renamed hashbrown::TryReserveError type.
- Add a
Debugimpl toLruCache(thanks @thomcc!) - Adjust trait bounds for
LinkedHashMap::retain,LinkedHashSet::defaultto be less strict (to match hashbrown) - Adjust trait bounds for all
Debugimpls to be less strict (to match hashbrown). - Adjust trait bounds for all
IntoIteratorimpls to be less strict (to match hashbrown). - Adjust trait bounds for
LruCache::with_hasher,LruCache::capacity,LruCache::len,LruCache::is_empty,LruCache::clear,LruCache::iter,LruCache::iter_mut, andLruCache::drainto be less strict - Add optional serde support for
LinkedHashMapandLinkedHashSet. - Add
to_backandto_frontmethods for LinkedHashSet to control entry order.
- Add
LinkedHashMap::remove_entryandLruCache::remove_entry - Add
LruCache::new_unboundedconstructor that sets capacity to usize::MAX - Add
LruCache::getmethod to go withLruCache::get_mut - Add
LruCache::peekandLruCache::peek_mutto access the cache without moving the entry in the LRU list
- API incompatible change: depend on hashbrown 0.7
- API incompatible change: depend on hashbrown 0.6
- Passes miri
- Add some minimal documentation for methods that change the internal ordering.
- Decide on a pattern for methods that change the internal ordering: the word "insert" means that it will move an existing entry to the back.
- Some methods have been renamed to conform to the above system.
- Fix variance for LinkedHashMap (now covariant where appropriate)
- Add Debug impls to many more associated types
- Add LinkedHashSet
- Add
LinkedHashMap::retain
- Move
linked_hash_mapinto its own module - Add
LruCachetype ported fromlru-cachecrate into its own module - Add
LruCacheentry and raw-entry API - Add
linked_hash_mapIntoIteriterator that is different fromDrainiterator - Make
Drainiterator recycle freed linked list nodes
- Initial release