|
| 1 | +# Change Log |
| 2 | +All notable changes to this project will be documented in this file. |
| 3 | + |
| 4 | +The format is based on [Keep a Changelog](http://keepachangelog.com/). |
| 5 | + |
| 6 | +## [Unreleased] |
| 7 | +### Added |
| 8 | +- `ChoiceN` types, representing concrete coproduct implementations that are also `Functor` and `BiFunctor` |
| 9 | +- `toMap`, `last`, `cons`, `prependAll`, `intersperse` |
| 10 | +- `Tuple2/3/4#into`, for applying the values in a tuple as positional arguments to a function. |
| 11 | + |
| 12 | +### Changed |
| 13 | +- `CoProductN.[a-e]()` static factory methods moved to equivalent `ChoiceN` class. Coproduct interfaces now solely represent methods, no longer have anonymous implementations, and no longer require a `Functor` constraint |
| 14 | + |
| 15 | +## [1.5.5] - 2016-12-17 |
| 16 | +### Added |
| 17 | +- `CoProductN#project`, to project disjoint union types into tuples of `Optional` values |
| 18 | +- `CoProductN#converge`, to drop the magnitude of a coproduct down by one type |
| 19 | +- `toCollection` and `size` |
| 20 | + |
| 21 | +### Changed |
| 22 | +- semigroups and monoids moved under `fn2` package |
| 23 | + |
| 24 | +## [1.5.4] - 2016-11-27 |
| 25 | +### Added |
| 26 | +- `Fn1/2#adapt` to switch between lambda and `java.util.function` types more easily |
| 27 | +- `eq`, `head`, `find`, and `tail` |
| 28 | +- `BiPredicate` |
| 29 | +- `Monoid#foldMap` |
| 30 | +- `HMap#toMap` to go from a heterogeneous map to a `java.util.Map` |
| 31 | + |
| 32 | +## [1.5.3] - 2016-11-06 |
| 33 | +### Added |
| 34 | +- `Semigroup` and `Monoid` |
| 35 | +- `Either#invert` |
| 36 | +- `partition` |
| 37 | +- Generalized coproducts implemented as `CoProduct2` through `CoProduct5` |
| 38 | +- `Either` is now a `CoProduct2` |
| 39 | + |
| 40 | +## [1.5.2] - 2016-09-24 |
| 41 | +### Added |
| 42 | +- Heterogeneous list indexes arrive via `Index` |
| 43 | + |
| 44 | +### Changed |
| 45 | +- `Lens` static factory method renaming |
| 46 | + |
| 47 | +## [1.5.1] - 2016-08-30 |
| 48 | +### Added |
| 49 | +- Independent `Lens` parameter mapping via `mapS`, `mapT`, `mapA`, and `mapB` |
| 50 | + |
| 51 | +## [1.5] - 2016-08-28 |
| 52 | +### Added |
| 53 | +- Initial lens support with `Lens` and `SimpleLens` types and `view`, `set`, and `over` functions |
| 54 | +- `Const` and `Identity` functors |
| 55 | +- `Either#toOptional` |
| 56 | +- `HMap#remove` and `HMap#removeAll` |
| 57 | + |
| 58 | +## [1.4] - 2016-08-08 |
| 59 | +### Changed |
| 60 | +- All function input values become `java.util.function` types, and all function output values remain lambda types, for better compatibility |
| 61 | + |
| 62 | +## [1.3] - 2016-07-31 |
| 63 | +### Added |
| 64 | +- `HList` specializations support random access lookup |
| 65 | + |
| 66 | +### Changed |
| 67 | +- `Profunctor` inheritance hierarchy |
| 68 | +- Renaming `Identity` to `Id` |
| 69 | +- `Monadic/Dyadic/TriadicFunction` is now `Fn1/2/3` |
| 70 | + |
| 71 | +## [1.2] - 2016-06-27 |
| 72 | +### Added |
| 73 | +- `Either#peek` |
| 74 | +- `HMap`, heterogeneous maps |
| 75 | +- `Tuple2` is now also a `Map.Entry` |
| 76 | + |
| 77 | +### Changed |
| 78 | +- `Tuple`s moved under `HList` as specialized subtypes |
| 79 | + |
| 80 | +## [1.1] - 2016-06-21 |
| 81 | +### Added |
| 82 | +- `scanLeft` |
| 83 | +- `HList`, heterogenous lists |
| 84 | +- Added up to `Tuple5` |
| 85 | +- `Either`, specialized coproduct with success/failure semantics |
| 86 | + |
| 87 | +### Changed |
| 88 | +- Better interoperability between lambda and `java.util.function` types |
| 89 | + |
| 90 | +## [1.0] - 2015-12-29 |
| 91 | +### Added |
| 92 | +- Initial implementation of first-class curried functions |
| 93 | +- `all`, `any`, `cartesianProduct`, `cycle`, `drop`, `dropWhile`, `filter`, `foldLeft`, |
| 94 | + `foldRight`, `inGroupsOf`, `map`, `partial2`, `partial3`, `reduceLeft`, `reduceRight`, |
| 95 | + `repeat`, `take`, `takeWhile`, `unfoldr` |
| 96 | +- `Monadic/Dyadic/TriadicFunction`, `Predicate`, `Tuple2`, `Tuple3` |
| 97 | +- `Functor`, `BiFunctor`, `ProFunctor` |
| 98 | + |
| 99 | +[Unreleased]: https://github.com/palatable/lambda/compare/lambda-1.5.5...HEAD |
| 100 | +[1.5.5]: https://github.com/palatable/lambda/compare/lambda-1.5.4...lambda-1.5.5 |
| 101 | +[1.5.4]: https://github.com/palatable/lambda/compare/lambda-1.5.3...lambda-1.5.4 |
| 102 | +[1.5.3]: https://github.com/palatable/lambda/compare/lambda-1.5.2...lambda-1.5.3 |
| 103 | +[1.5.2]: https://github.com/palatable/lambda/compare/lambda-1.5.1...lambda-1.5.2 |
| 104 | +[1.5.1]: https://github.com/palatable/lambda/compare/lambda-1.5...lambda-1.5.1 |
| 105 | +[1.5]: https://github.com/palatable/lambda/compare/lambda-1.4...lambda-1.5 |
| 106 | +[1.4]: https://github.com/palatable/lambda/compare/lambda-1.3...lambda-1.4 |
| 107 | +[1.3]: https://github.com/palatable/lambda/compare/lambda-1.2...lambda-1.3 |
| 108 | +[1.2]: https://github.com/palatable/lambda/compare/lambda-1.1...lambda-1.2 |
| 109 | +[1.1]: https://github.com/palatable/lambda/compare/lambda-1.0...lambda-1.1 |
| 110 | +[1.0]: https://github.com/palatable/lambda/commits/lambda-1.0 |
0 commit comments