# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic
Versioning](http://semver.org/spec/v2.0.0.html).
## [0.3.1] - 2019-08-03
### ADDED
- Chunk sizes up to 256 are now supported.
## [0.3.0] - 2019-05-18
### ADDED
- A new data structure, `InlineArray`, which is a stack allocated array matching
the size of a given type, intended for optimising for the case of very small
vectors.
- `Chunk` has an implementation of `From<InlineArray>` which is considerably
faster than going via iterators.
## [0.2.2] - 2019-05-10
### ADDED
- `Slice::get` methods now return references with the lifetime of the underlying
`RingBuffer` rather than the lifetime of the slice.
## [0.2.1] - 2019-04-15
### ADDED
- A lot of documentation.
- `std::io::Read` implementations for `Chunk<u8>` and `RingBuffer<u8>` to match
their `Write` implementations.
## [0.2.0] - 2019-04-14
### CHANGED
- The `capacity()` method has been replacied with a `CAPACITY` const on each
type.
### ADDED
- There is now a `RingBuffer` implementation, which should be nearly a drop-in
replacement for `SizedChunk` but is always O(1) on push and cannot be
dereferenced to slices (but it has a set of custom slice-like implementations
to make that less of a drawback).
- The `Drain` iterator for `SizedChunk` now implements `DoubleEndedIterator`.
### FIXED
- `SizedChunk::drain_from_front/back` will now always panic if the iterator
underflows, instead of only doing it in debug mode.
## [0.1.3] - 2019-04-12
### ADDED
- `SparseChunk` now has a default length of `U64`.
- `Chunk` now has `PartialEq` defined for anything that can be borrowed as a
slice.
- `SparseChunk<A>` likewise has `PartialEq` defined for `BTreeMap<usize, A>` and
`HashMap<usize, A>`. These are intended for debugging and aren't optimally
`efficient.
- `Chunk` and `SparseChunk` now have a new method `capacity()` which returns its
maximum capacity (the number in the type) as a usize.
- Added an `entries()` method to `SparseChunk`.
- `SparseChunk` now has a `Debug` implementation.
### FIXED
- Extensive integration tests were added for `Chunk` and `SparseChunk`.
- `Chunk::clear` is now very slightly faster.
## [0.1.2] - 2019-03-11
### FIXED
- Fixed an alignment issue in `Chunk::drain_from_back`. (#1)
## [0.1.1] - 2019-02-19
### FIXED
- Some 2018 edition issues.
## [0.1.0] - 2019-02-19
Initial release.