# Version History ## 0.6.0 ## Fixed - fixed incorrect implementation of contains_interval for Separating policy - "[1,5) left_of [4,10)" was returning false ## Added - support for `Clone` in `IntervalSet` - `IntervalSet::clear` - `IntervalSet::equivalent` - `IntervalSet::difference` and `IntervalSet::difference_interval` - `IntervalSet::remove` and `IntervalSet::remove_interval` - `IntervalSet::intersects_interval` and `IntervalSet::intersects_set` - `IntervalSet::left_of` and `IntervalSet::right_of`, also variants for comparing with an interval or another set. Add variants for strictly_left_of and strictly_right_of. - `IntervalSet::intersection_interval` and `IntervalSet::intersection_set` - `IntervalSet::contains_set` - `Display` for `IntervalSet` - new trait `Bounded` (inspired from num_traits), needed to check whether unbounded intervals are empty ## 0.5.0 ## Fixed - two equal intervals did not always have same hash (e.g. "[1,2]" and "(0,3)") ## Added - support for iteration in `chrono::NaiveDate` intervals - `IntervalSet` ## Changed - renamed `MultiInterval` to `Pair`. The former name will be used for sets of any number of intervals, but might not be compatible with no_std. So we kept the simply `Pair` so that subprograms like `difference()` can remain compatible with no_std. - `Debug` no longer requires that T be PartialOrd (but it also no longer has special handling for empty intervals) ## 0.4.0 ## Added - support `DoubleEndedIterator` and reverse iteration - iterators have gained a `as_interval()` function - support for `ExactSizeIterator` ### Changed - conversion from strings now uses `TryFrom` and `TryInto` instead of `From`. Those functions no longer panic, but return an error, and the user can decide how to handle that. ## 0.3.0 ### Added - support for `Copy` - interact with Rust ranges `from_range()` - provide `BitOr` trait (equivalent to `union()`) - support for `Iterator` and `IntoIterator` ### Changed - use Borrow in parameters for `contains` ## 0.2.1 ### Fixed - fix clippy warning about derived Hash and custom PartialEq ## 0.2.0 ### Added - new functions `left_of_interval`, `right_of_interval` and `strictly_right_of_interval` - support for more types `u128`, `usize`, `isize`, `time::Duration` and `chrono::NaiveDate` - support for no_std - support for serde - support for rust_decimal - support for `Eq`, `From<&str>`, `From` and `FromStr` traits - support for `Hash` trait - support for `Ord`, `PartialOrd` traits