Skip to content

0.6.0

Compare
Choose a tag to compare
@bodil bodil released this 24 Mar 17:04
· 49 commits to master since this release

CHANGED

  • RingBuffer and its accompanying slice types Slice and SliceMut now implement Array and ArrayMut from array-ops, giving them most of the methods that would be available on primitive slice types and cutting down on code duplication in the implementation, but at the price of having to pull Array et al into scope when you need them. Because this means adding a dependency to array-ops, RingBuffer has now been moved behind the ringbuffer feature flag. Chunk and InlineArray don't and won't implement Array, because they are both able to implement Deref<[A]>, which provides the same functionality more efficiently.

ADDED

  • The insert_from and insert_ordered methods recently added to Chunk have now also been added to RingBuffer.
  • RingBuffer's Slice and SliceMut now also have the three binary_search methods regular slices have.
  • SparseChunk, RingBuffer, Slice and SliceMut now have unsafe get_unchecked and get_unchecked_mut methods.
  • PartialEq implementations allowing you to compare RingBuffers, Slices and SliceMuts interchangeably have been added.

FIXED

  • Fixed an aliasing issue in RingBuffer's mutable iterator, as uncovered by Miri. Behind the scenes, the full non-fuzzing unit test suite is now able to run on Miri without crashing it (after migrating the last Proptest tests away from the test suite into the fuzz targets), and this has been included in its CI build. (#6)