Skip to content

13.0.0

Compare
Choose a tag to compare
@bodil bodil released this 18 May 12:11
· 122 commits to master since this release
13.0.0
1e59b66

The minimum supported Rust version is now 1.34.0.

Changed

  • im::iter::unfold now gives you the owned state value rather than an immutable reference to it, which makes it a little more useful.

Removed

  • The deprecated singleton constructors have been removed. Please use unit instead.
  • The deprecated methods Vector::chunks and Vector::chunks_mut have been removed in favour of Vector::leaves and Vector::leaves_mut respectively. (#50)
  • The deprecated reference to sized-chunks has been removed. If you need it, please use the sized-chunks crate directly.
  • im::iter::unfold_mut has been removed, as there's no meaningful difference between it and rust-std 1.34.0's std::iter::from_fn with a captured state variable.

Fixed

  • Vector now uses sized_chunks::InlineArray instead of an Empty enum case to avoid allocation at very small sizes, letting you store a handful of elements on the stack before needing to grow into a full chunk. This has a beneficial effect on performance as well, as there's no pointer into the heap to dereference, making it faster than std::vec::Vec in this configuration.
  • Some complexity timings have been added and corrected. (#87)
  • OrdSet::is_subset(&self, other) now returns immediately when self is larger than other and thus could not possibly be a subset of it. (#87)