{"ecosystem":"cargo","package":"hashbrown","from_version":null,"to_version":null,"changes":[{"from_version":"0.8.2","to_version":"0.9.0","change_type":"breaking","description":"The minimum Rust version has been bumped to 1.36 (due to `crossbeam` dependency). (#193)","migration_hint":null},{"from_version":"0.8.2","to_version":"0.9.0","change_type":"breaking","description":"`HashMap::with_hasher` and `HashSet::with_hasher` are now `const fn`. (#195)","migration_hint":null},{"from_version":"0.8.2","to_version":"0.9.0","change_type":"breaking","description":"Added `replace_entry_with` to `OccupiedEntry`, and `and_replace_entry_with` to `Entry`. (#190)","migration_hint":null},{"from_version":"0.8.2","to_version":"0.9.0","change_type":"breaking","description":"Implemented `FusedIterator` and `size_hint` for `DrainFilter`. (#188)","migration_hint":null},{"from_version":"0.8.2","to_version":"0.9.0","change_type":"breaking","description":"Updated `ahash` dependency to 0.4. (#198)","migration_hint":null},{"from_version":"0.8.2","to_version":"0.9.0","change_type":"removed","description":"Removed `T: Hash + Eq` and `S: BuildHasher` bounds on `HashSet::new`,","migration_hint":null},{"from_version":"0.8.2","to_version":"0.9.0","change_type":"removed","description":"`drain_filter` now removes and yields items that do match the predicate,","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"api","description":"The experimental and unsafe `RawTable` API is available under the \"raw\" feature. (#108)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"behavior","description":"Changed the default hasher from FxHash to AHash. (#97)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"Relaxed `lazy_static` version. (#92)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"The minimum Rust version has been bumped to 1.32 (due to `rand` dependency).","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"Added entry-like methods for `HashSet`. (#98)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"`hashbrown` is now fully `no_std` on recent Rust versions (1.36+). (#96)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"We now avoid growing the table during insertions when it wasn't necessary. (#106)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"`RawOccupiedEntryMut` now properly implements `Send` and `Sync`. (#100)","migration_hint":null},{"from_version":"0.5.0","to_version":"0.6.0","change_type":"breaking","description":"Fixed AHash accidentally depending on `std`. (#110)","migration_hint":null},{"from_version":"0.14.5","to_version":"0.15.1","change_type":"removed","description":"`HashSet::get_or_insert_owned` was removed in favor of `get_or_insert_with`. (#555)","migration_hint":null},{"from_version":"0.14.5","to_version":"0.15.1","change_type":"removed","description":"Raw entry API is now under `raw-entry` feature, to be eventually removed. (#534, #555)","migration_hint":null},{"from_version":"0.14.5","to_version":"0.15.1","change_type":"removed","description":"Raw table API has been made private and the `raw` feature is removed;","migration_hint":null},{"from_version":"0.14.5","to_version":"0.15.1","change_type":"removed","description":"`rykv` feature was removed; this is now provided by the `rykv` crate instead. (#554)","migration_hint":null},{"from_version":"0.14.3","to_version":"0.14.5","change_type":"breaking","description":"Fixed index calculation in panic guard of `clone_from_impl`. (#511)","migration_hint":null}],"total":21,"note":"Curated major-version breaking changes. Always verify against the package's official changelog before migrating.","_cache":"hit"}