X-Git-Url: https://git.chrismorgan.info/anymap/blobdiff_plain/98f2816e62c6f92863214d86f7e7584a1fb49400..27eca551823bac40421ae7ee6e83e7541790b723:/CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 6477f99..1be2128 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,10 @@ - Relicensed from MIT/Apache-2.0 to BlueOak-1.0.0/MIT/Apache-2.0. -- Increased the minimum supported version of Rust from 1.7.0 to 1.34.0. +- Increased the minimum supported version of Rust from 1.7.0 to 1.36.0. + +- no_std is now possible in the usual way (default Cargo feature 'std'), + depending on alloc and hashbrown. - Removed the `bench` Cargo feature which was mostly to work around historical Cargo limitations, but was solved by moving benchmarks from `src/lib.rs` to @@ -21,8 +24,14 @@ - Implemented `Default` on `Map` (not just on `RawMap`). -- The implementation of `Into>` for `Map` has been - replaced with the more general `From>` for `RawMap`. +- Removed the `anymap::raw` wrapper layer around `std::collections::hash_map`, + in favour of exposing the raw `HashMap` directly. I think there was a reason + I did it that seven years ago, but I think that reason may have dissolved by + now, and I can’t think of it and I don’t like the particular safe + `as_mut`/unsafe insert approach that I used. Because of the hashbrown stuff, + I have retained `anymap::RawMap` is an alias, and `anymap::raw_hash_map` too. + The end result of this is that raw access can finally access things that have + stabilised since Rust 1.7.0, and we’ll no longer need to play catch-up. - Worked around the spurious `where_clauses_object_safety` future-compatibility lint that has been raised since mid-2018. If you put `#![allow(where_clauses_object_safety)]` on your binary crates for this reason, you can remove it.