* 0.8.6 - September 14 2024 - Added `AsRef` implementations for `OsStr` and `Path` (thanks @GrigorenkoPV). - Added `is_interned` (thanks @DanielJoyce). * 0.8.4 - June 22, 2024 - Fixed `DeepSizeOf` impl, thanks @gmryuuko. * 0.8.3 - April 21, 2024 - Made `Intern` work with `serde`. * 0.8.2 - April 17, 2024 - Added support for `deepsize` for all three intern types. * 0.8.1 - April 11, 2024 - Increased MSRV to 1.70. - Made `ArcIntern` not implement `Borrow` which I apparently missed in version 0.7.0. * 0.7.4 - October 28, 2023 - Increased MSRV to 1.65, got it wrong last time because I forgot to check the `arc` feature. * 0.7.3 - October 28, 2023 - Made `Copy` and `Clone` for ArenaIntern support `?Sized` types. * 0.7.2 - October 28, 2023 - Increased MSRV to 1.60 for building and 1.65 for testing due to changes in dependencies. - Bumped ahash dependency version. - Optimization of `ArcInvtern` (thanks gwy15!). * 0.7.1 - June 17, 2023 - Added `ArcIntern::into_ref` (thanks PuzzleMaker!). * 0.7.0 - March 30, 2022 - Removed the `Borrow` implementation for interned types, which was not compliant with the documentation for that trait. This did not lead to unsoundness, but did lead to confusing and buggy behavior. - Add new `Arena` type which can hold interned data that is then freed when the arena is dropped. - Renamed the intrinsic `from` method (which shadowed the `From` trait), so it would be easier and less confusing to use `From` to create `Intern` for `!Sized` types. - Added at least rudimentary support for common `!Sized` types, such as `Intern`, `Intern<[u8]>` or `Intern`. Please report any bugs you might encounter, as the test suite on such types is not fully populated. * 0.6.0 - February 11, 2022 - Removed `LocalIntern`, since I concluded that it was unsound. Specifically, since the order of dropping of thread-local storage is undefined, users could put a `LocalIntern` into thread-local storage, and get a use-after-free bug. I'm not sure that anyone ever used `LocalIntern`, and it wasn't faster than `Intern` anyhow (unlike what I documented and expected), so it's only advantage was that you could get a crude arena-storage-like effect by using `LocalIntern` within a temporary thread. Not a very compelling use case. - Not an actual change, but I now use miri in the CI to check for undefined behavior, which is what clued me into the unsoundness in `LocalIntern`.