Announcing `binary-heap-plus` v0.5.0 (flexible BinaryHeap)

I'm happy to announce that binary-heap-plus v0.5.0 is released to crates.io. It is compatible with std's BinaryHeap plus supports various comparator functions.

The biggest change in this release is contributed by @clint-white (github name), the code base now sync to rust 1.62. Thanks for the great code!

https://crates.io/crates/binary-heap-plus

[0.5.0] - 2022-09-30

Added

  • #[must_use] attribute to many methods, porting and extending several
    rust-lang/rust PRs
  • Method shrink_to(), ported from rust-lang/rust
  • Implementation of From<[T; N]> for BinaryHeap<T>, ported from
    rust-lang/rust#84111
  • Links to referenced items in the documenation
  • Example of a min-heap, ported from rust-lang/rust#60451
  • Documentation of time complexities of several methods, ported from
    rust-lang/rust#60952

Changed

  • Migrate to Rust 2021 Edition
  • Increase MSRV (minimum supported rust version) to rust 1.56.0.
  • Implement From<BinaryHeap<T, C>> for Vec<T> instead of Into<Vec<T>> for
    BinaryHeap<T, C>
  • Port rust-lang/rust#77435 improvement to rebuild heuristic of
    BinaryHeap::append()
  • Use italics with big-O notation in documentation, ported from
    rust-lang/rust#71167
  • Relax trait bound C: Compare<T> on BinaryHeap<T, C> struct and certain
    methods, in part ported from rust-lang/rust#58421
  • Synchronize internal implementation details with
    std::collections::BinaryHeap in Rust 1.62.0

[0.4.1] - 2021-01-06

Added

  • Performance improvement (#28)
    • Port rust-lang/rust#78857 - Improve BinaryHeap performance