@arthurgubaidullin/nx-embed-dependencies
Version:
This plugin for [Nx](https://nx.dev) helps injecting local dependencies into a package.
1,554 lines (1,507 loc) • 104 kB
Markdown
# Changelog
> **Tags:**
>
> - [New Feature]
> - [Bug Fix]
> - [Breaking Change]
> - [Documentation]
> - [Internal]
> - [Polish]
> - [Experimental]
> - [Deprecation]
**Note**: Gaps between patch versions are faulty/broken releases.
**Note**: A feature tagged as Experimental is in a
high state of flux, you're at risk of it changing without notice.
# 2.13.1
- **New Feature**
- new modules:
- `ReaderIO`, #1738 (@sukovanej)
- do notation:
- add `let` helpers, #1725 (@Punie)
- `Alternative`
- add `getAlternativeMonoid`, #1717 (@willheslam)
- `function`
- `flip` is now curried, #1748 (@thewilkybarkid)
- `pipeable`
- add pipeable helpers, #1764 (@gcanti)
- `alt`
- `ap`
- `bimap`
- `chain`
- `compose`
- `contramap`
- `extend`
- `filter`
- `filterMap`
- `filterMapWithIndex`
- `filterWithIndex`
- `foldMap`
- `foldMapWithIndex`
- `map`
- `mapLeft`
- `mapWithIndex`
- `partition`
- `partitionMap`
- `partitionMapWithIndex`
- `partitionWithIndex`
- `promap`
- `reduce`
- `reduceRight`
- `reduceRightWithIndex`
- `reduceWithIndex`
- `ReaderTask`
- add `ReaderIO` constructors/combinators, #1773 (@thewilkybarkid)
- `ReaderTaskEither`
- add `ReaderIO` constructors/combinators, #1774 (@thewilkybarkid)
- `TaskEither`
- add `chainTaskOptionKW`, #1744 (@AmirabbasJ)
- **Bug Fix**
- do notation
- Ensuring that `bind` and `bindW` pass the correct params through rather than get rewritten by the function passed in, #1584 (@feydan)
- **Polish**
- backport from v3 some handy defaults defined in natural transformations/combinators/constructors (@gcanti)
- fix wrong type parameter order:
- `FromIO`
- `chainIOK`
- `FromTask`
- `chainTaskK`
- `chainFirstTaskK`
- `Whiterable`
- `FilterE1`
- `TheseT`
- `both`
- `Either`
- `apFirstW`
- `apSecondW`
- `IOEither`
- `apFirstW`
- `apSecondW`
- `Reader`
- `apFirstW`
- `apSecondW`
- `ReaderEither`
- `apFirstW`
- `apSecondW`
- `ReaderTaskEither`
- `apFirstW`
- `apSecondW`
- `StateReaderTaskEither`
- `apFirstW`
- `apSecondW`
- `TaskEither`
- `apFirstW`
- `apSecondW`
- `Apply`
- add `ap` overloadings, #1721 (@waynevanson)
- `Either`
- remove useless type parameter in `exists` (@gcanti)
- `ReadonlyRecord`
- fix `fromEntries` return type, closes #1745 (@gcanti)
- `TaskEither`
- fix `fromPredicate` signature (@gcanti)
- `These`
- add missing `fromPredicate` (@gcanti)
- remove useless type parameter in `exists` (@gcanti)
- `Traversable`
- add more overloadings to traverse / sequence helpers, #1758 (@gcanti)
- `Writer`
- `getChain` requires a `Semigroup` instead of a `Monoid` (@gcanti)
- **Deprecation**
- `function`
- deprecate uncurried `flip` function, #1748 (@thewilkybarkid)
# 2.12.2
- **Polish**
- `ReadonlyRecord` / `Record`
- add `Applicative4` overloadings to `traverse` / `traverseWithIndex`, #1733 (@mlegenhausen)
# 2.12.1
- **Bug Fix**
- `ReadonlyRecord`
- fix `traverseWithIndex` implementation, #1704 (@waynevanson)
# 2.12.0
- **New Feature**
- add `IOOption` module (@gcanti)
- `Array`
- add `intercalate`, #1678 (@thewilkybarkid)
- `Bounded`
- add `clamp` (@gcanti)
- add `reverse` (@gcanti)
- `Either`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- `EitherT`
- add `chainNullableK`, #1619 (@cwstra)
- add `fromNullable`, #1619 (@cwstra)
- add `fromNullableK`, #1619 (@cwstra)
- `FromEither`
- add `chainFirstEitherK` (@gcanti)
- `IOEither`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- add `chainFirstEitherK` (@gcanti)
- add `chainFirstEitherKW` (@gcanti)
- add `orElseFirstIOK`, #1655 (@thewilkybarkid)
- add `bracketW`, #1627 (@thomasvargiu)
- `NonEmptyArray`
- add `intercalate`, #1678 (@thewilkybarkid)
- `Option`
- add `chainFirstEitherK` (@gcanti)
- `Ordering`
- add `matchW`, #1535 (@mlegenhausen)
- `Reader`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- `ReaderEither`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- add `chainFirstEitherK` (@gcanti)
- add `chainFirstEitherKW` (@gcanti)
- `ReaderTaskEither`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- add `chainFirstEitherK`, #1562 (@DenisFrezzato)
- add `chainFirstEitherKW`, #1562 (@DenisFrezzato)
- add `bracketW`, #1627 (@thomasvargiu)
- add `chainNullableK` (@gcanti)
- add `fromNullable` (@gcanti)
- add `fromNullableK` (@gcanti)
- `ReadonlyArray`
- add `intercalate`, #1678 (@thewilkybarkid)
- `ReadonlyNonEmptyArray`
- add `intercalate`, #1678 (@thewilkybarkid)
- `ReadonlyRecord`
- add `toEntries`, #1552 (@bravely)
- add `fromEntries`, #1552 (@bravely)
- `Record`
- add `toEntries`, #1552 (@bravely)
- add `fromEntries`, #1552 (@bravely)
- `StateReaderTaskEither`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- add `chainFirstEitherK` (@gcanti)
- add `chainFirstEitherKW` (@gcanti)
- `TaskEither`
- add `apFirstW`, #1564 (@DenisFrezzato)
- add `apSecondW`, #1564 (@DenisFrezzato)
- add `chainFirstEitherK`, #1659 (@vinassefranche)
- add `chainFirstEitherKW`, #1659 (@vinassefranche)
- add `orElseFirstIOK`, #1655 (@thewilkybarkid)
- add `orElseFirstTaskK`, #1655 (@thewilkybarkid)
- add `bracketW`, #1627 (@thomasvargiu)
- add `chainNullableK`, #1619 (@cwstra)
- add `fromNullable`, #1619 (@cwstra)
- add `fromNullableK`, #1619 (@cwstra)
- `TaskOption`
- add `fromEitherK` (@gcanti)
- add `chainEitherK` (@gcanti)
- add `chainFirstEitherK` (@gcanti)
# 2.11.10
- **Polish**
- `TaskEither` / `TaskOption`
- now `tryCatch` / `tryCatchK` will catch synchronous errors too, #1676 (@thewilkybarkid)
# 2.11.9
- **Polish**
- add `Refinement` overload to 'every' functions, #1681 (@mlegenhausen)
# 2.11.8
- **Polish**
- Add missing pure annotations, #1658 (@OliverJAsh)
# 2.11.7
- **Polish**
- more `Functor.map` overloadings, closes #1623 (@gcanti)
# 2.11.6
- **Polish**
- `ReaderEither`
- `orElseFirstW`: intersect dependencies like `orElseW` (@gcanti)
- `ReaderTaskEither`
- `orElseFirstW`: intersect dependencies like `orElseW`, #1635 (@OliverJAsh)
# 2.11.5
- **Polish**
- more curried `elem` overloads, #1602 (@ammut)
# 2.11.4
- **Polish**
- fix `chainNullableK` signature, #1589 (@bwlt)
- stack safety for `Task` via microtasks suspension, #1591 (@mikearnaldi)
# 2.11.3
- **Polish**
- pipe: fix v8 performance cliff for >10 case stmts, #1585 (@pbadenski)
# 2.11.2
- **Polish**
- Add/fix pure comments, #1555 (@OliverJAsh)
# 2.11.1
- **Deprecation**
- `Array`
- deprecate `range`, use `NonEmptyArray` module instead.
- `function`
- deprecate `Endomorphism`, use `Endomorphism` module instead.
- deprecate `getEndomorphismMonoid`, use `Endomorphism` module instead.
- deprecate `Predicate`, use `Predicate` module instead.
- deprecate `not`, use `Predicate` module instead.
- deprecate `Refinement`, use `Refinement` module instead.
- `Monoid`
- deprecate `monoidVoid`, use `void` module instead.
- `NonEmptyArray`
- deprecate `groupSort` (it's just `sort` followed by `group`)
- `Option`
- deprecate `getRefinement`, use `Refinement` module instead.
- deprecate `getFirstMonoid`, use `getMonoid` module instead.
- deprecate `getLastMonoid`, use `getMonoid` module instead.
- `ReadonlyArray`
- deprecate `range`, use `ReadonlyNonEmptyArray` module instead.
- `ReadonlyNonEmptyArray`
- deprecate `groupSort` (it's just `sort` followed by `group`)
- `Record` / `ReadonlyRecord`: deprecate overloads without `Ord` constraint (@anthonyjoeseph):
- `collect`
- `reduce`
- `foldMap`
- `reduceRight`
- `reduceWithIndex`
- `foldMapWithIndex`
- `reduceRightWithIndex`
- `getShow`
- deprecate `Foldable` in favour of `getFoldable` (@anthonyjoeseph)
- deprecate `FoldableWithIndex` in favour of `getFoldableWithIndex` (@anthonyjoeseph)
- deprecate `Traversable` in favour of `getTraversable` (@anthonyjoeseph)
- deprecate `TraversableWithIndex` in favour of `getTraversableWithIndex` (@anthonyjoeseph)
- deprecate `Witherable` in favour of `getWitherable` (@anthonyjoeseph)
- `Semigroup`
- deprecate `semigroupVoid`, use `void` module instead.
- **New Feature**
- add `Endomorphism` module
- add `Predicate` module
- add `Refinement` module
- add `FromState` module
- add `FromThese` module
- add `void` module
- add `FromReader` module
- add `NaturalTransformation` module
- add `Zero` module
- `Alt`
- add `altAll`
- `Alternative`
- add `altAll`
- `Array`
- add `prependW`, `appendW` (@thewilkybarkid)
- add `fromOption`, `fromPredicate` (@cdimitroulas)
- add `filterE`
- add `ChainRecDepthFirst` instance (@qlonik)
- add `chainRecDepthFirst`
- add `ChainRecBreadthFirst` instance (@qlonik)
- add `chainRecBreadthFirst`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `fromEither`
- add `FromEither` instance
- add `fromEitherK`
- make `isEmpty` a user defined guard
- add `concat` / `concatW`
- add `match`, `matchW`, `matchLeftW`, `matchRightW`
- add `fromOptionK`
- add `Zero` instance
- add `guard` constructor
- add `exists` alias
- `boolean`
- add `isBoolean`
- `Either`
- add `chainOptionK`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `EitherT`
- add `orElseFirst`
- add `orLeft`
- `function`
- add `SK` (@cdimitroulas)
- add `apply`
- `IO`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `IOEither`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `Magma`
- add `reverse`
- add `filterFirst`
- add `filterSecond`
- add `endo`
- add `concatAll`
- `Map`
- add `union`
- add `intersection`
- add `difference`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `getFoldable`
- add `foldMap`
- add `reduceRight`
- add `reduceWithIndex`
- add `foldMapWithIndex`
- add `reduceRightWithIndex`
- `NonEmptyArray`
- add `matchLeft`, `matchRight`, `modifyHead`, `modifyLast` (@cdimitroulas)
- add `union`
- add `getUnionSemigroup`
- add `makeBy`
- add `range`
- make `concat` pipeable
- `number`
- add `MagmaSub`
- add `isNumber`
- `string`
- add `isString`
- `Option`
- add `FromEither` instance
- add `fromEitherK`
- add `chainEitherK`
- add `Zero` instance
- add `guard` constructor
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `Ord`
- add `trivial` instance
- add `equals`
- `Reader`
- add `asksReaderW`, `asksReader`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `ReaderEither`
- add `asksReaderEitherW`, `asksReaderEither`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `chainReaderKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `ReaderTask`
- add `asksReaderTaskW`, `asksReaderTask`
- add `chainReaderKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `ReaderTaskEither`
- add `asksReaderTaskEitherW`, `asksReaderTaskEither`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `fromReaderTaskK`
- add `fromReaderEitherK`
- add `chainReaderKW`
- add `chainReaderTaskK`, `chainReaderTaskKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `chainFirstReaderTaskK`, `chainFirstReaderTaskKW`
- add `chainReaderEitherK`, `chainReaderEitherKW`
- add `chainFirstReaderEitherK`, `chainFirstReaderEitherKW`
- add `chainFirstTaskEitherK`, `chainFirstTaskEitherKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `ReadonlyArray`
- add `prependW`, `appendW` (@thewilkybarkid)
- add `filterE`
- add `ChainRecDepthFirst` instance (@qlonik)
- add `chainRecDepthFirst`
- add `ChainRecBreadthFirst` instance (@qlonik)
- add `chainRecBreadthFirst`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `fromOption`
- add `fromPredicate`
- add `fromEither`
- add `FromEither` instance
- add `fromEitherK`
- make `isEmpty` a user defined guard
- add `concat` / `concatW`
- add `match`, `matchW`, `matchLeftW`, `matchRightW`
- add `fromOptionK`
- add `Zero` instance
- add `guard` constructor
- add `exists` alias
- `ReadonlyMap`
- add `union`
- add `intersection`
- add `difference`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `reduce`
- add `foldMap`
- add `reduceRight`
- add `reduceWithIndex`
- add `foldMapWithIndex`
- add `reduceRightWithIndex`
- `ReadonlyNonEmptyArray`
- add `matchLeft`, `matchRight`, `modifyHead`, `modifyLast` (@cdimitroulas)
- add `union`
- add `getUnionSemigroup`
- add `makeBy`
- add `range`
- make `concat` pipeable
- `ReadonlyRecord`
- add `union` (@anthonyjoeseph)
- add `intersection` (@anthonyjoeseph)
- add `difference` (@anthonyjoeseph)
- add `getUnionSemigroup` (@anthonyjoeseph)
- add `getUnionMonoid` (@anthonyjoeseph)
- add `getIntersectionSemigroup` (@anthonyjoeseph)
- add `getDifferenceMagma` (@anthonyjoeseph)
- `ReadonlySet`
- add `getUnionSemigroup`
- add `getDifferenceMagma`
- `Record`
- add `union`
- add `intersection`
- add `difference`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- `Set`
- add `getUnionSemigroup`
- add `getDifferenceMagma`
- `State`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `StateReaderTaskEither`
- add `fromStateK`
- add `chainStateK`
- add `local`
- add `asksStateReaderTaskEitherW`, `asksStateReaderTaskEither`
- add `chainReaderKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `string`
- add `toUpperCase`
- add `toLowerCase`
- add `replace`
- add `split`
- add `trim`
- add `trimLeft`
- add `trimRight`
- add `includes`
- add `startsWith`
- add `endsWith`
- add `slice`
- `struct`
- add `evolve`
- `Task`
- add `ApT`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `TaskEither`
- add `fromTaskOption` (@thewilkybarkid)
- add `fromTaskOptionK`
- add `chainTaskOptionK`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `TaskOption`
- add `fromTaskEither` (@thewilkybarkid)
- add `Zero` instance
- add `guard` constructor
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- add missing `FromEither` instance
- `TaskThese`
- add `ApT`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `These`
- add `elem`
- add `exists`
- add `ApT`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `Tree`
- add `exists`
- `Witherable`
- add `filterE`, #1458 (@vinassefranche)
- add `wiltDefault`
- add `witherDefault`
- **Polish**
- remove unnecessary type parameters
- `Either`
- `isLeft`
- `isRight`
- `Option`
- `isNone`
- `These`
- `isLeft`
- `isRight`
# 2.11.0-rc.2
- `string`
- `split` now returns a `ReadonlyNonEmptyArray`
- `TaskOption`
- add missing `FromEither` instance
- some signature changes in `2.11.0-rc.1` caused type inference issues
- `Array` / `ReadonlyArray`
- revert `isOutOfBound` signature change
- revert `isEmpty` signature change
- revert `size` signature change
- `Either`
- revert `exists` signature change
- revert `elem` signature change
- `These`
- revert `exists` signature change
- revert `elem` signature change
- `NonEmptyArray` / `ReadonlyNonEmptyArray`
- revert `isOutOfBound` signature change
- `Set` / `ReadonlySet`
- revert `isEmpty` signature change
- revert `size` signature change
- `Map` / `ReadonlyMap`
- revert `isEmpty` signature change
- revert `size` signature change
# 2.11.0-rc.1
- **Deprecation**
- `Array`
- deprecate `range`, use `NonEmptyArray` module instead.
- `function`
- deprecate `Endomorphism`, use `Endomorphism` module instead.
- deprecate `getEndomorphismMonoid`, use `Endomorphism` module instead.
- deprecate `Predicate`, use `Predicate` module instead.
- deprecate `not`, use `Predicate` module instead.
- deprecate `Refinement`, use `Refinement` module instead.
- `Monoid`
- deprecate `monoidVoid`, use `void` module instead.
- `NonEmptyArray`
- deprecate `groupSort` (it's just `sort` followed by `group`)
- `Option`
- deprecate `getRefinement`, use `Refinement` module instead.
- deprecate `getFirstMonoid`, use `getMonoid` module instead.
- deprecate `getLastMonoid`, use `getMonoid` module instead.
- `ReadonlyArray`
- deprecate `range`, use `ReadonlyNonEmptyArray` module instead.
- `ReadonlyNonEmptyArray`
- deprecate `groupSort` (it's just `sort` followed by `group`)
- `Record` / `ReadonlyRecord`: deprecate overloads without `Ord` constraint (@anthonyjoeseph):
- `collect`
- `reduce`
- `foldMap`
- `reduceRight`
- `reduceWithIndex`
- `foldMapWithIndex`
- `reduceRightWithIndex`
- `getShow`
- deprecate `Foldable` in favour of `getFoldable` (@anthonyjoeseph)
- deprecate `FoldableWithIndex` in favour of `getFoldableWithIndex` (@anthonyjoeseph)
- deprecate `Traversable` in favour of `getTraversable` (@anthonyjoeseph)
- deprecate `TraversableWithIndex` in favour of `getTraversableWithIndex` (@anthonyjoeseph)
- deprecate `Witherable` in favour of `getWitherable` (@anthonyjoeseph)
- `Semigroup`
- deprecate `semigroupVoid`, use `void` module instead.
- **New Feature**
- add `Endomorphism` module
- add `Predicate` module
- add `Refinement` module
- add `FromState` module
- add `FromThese` module
- add `void` module
- add `FromReader` module
- add `NaturalTransformation` module
- add `Zero` module
- `Alt`
- add `altAll`
- `Alternative`
- add `altAll`
- `Array`
- add `prependW`, `appendW` (@thewilkybarkid)
- add `fromOption`, `fromPredicate` (@cdimitroulas)
- add `filterE`
- add `ChainRecDepthFirst` instance (@qlonik)
- add `chainRecDepthFirst`
- add `ChainRecBreadthFirst` instance (@qlonik)
- add `chainRecBreadthFirst`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `fromEither`
- add `FromEither` instance
- add `fromEitherK`
- make `isEmpty` a user defined guard
- add `concat` / `concatW`
- add `match`, `matchW`, `matchLeftW`, `matchRightW`
- add `fromOptionK`
- add `Zero` instance
- add `guard` constructor
- add `exists` alias
- `boolean`
- add `isBoolean`
- `Either`
- add `chainOptionK`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `EitherT`
- add `orElseFirst`
- add `orLeft`
- `function`
- add `SK` (@cdimitroulas)
- add `apply`
- `IO`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `IOEither`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `Magma`
- add `reverse`
- add `filterFirst`
- add `filterSecond`
- add `endo`
- add `concatAll`
- `Map`
- add `union`
- add `intersection`
- add `difference`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `getFoldable`
- add `foldMap`
- add `reduceRight`
- add `reduceWithIndex`
- add `foldMapWithIndex`
- add `reduceRightWithIndex`
- `NonEmptyArray`
- add `matchLeft`, `matchRight`, `modifyHead`, `modifyLast` (@cdimitroulas)
- add `union`
- add `getUnionSemigroup`
- add `makeBy`
- add `range`
- make `concat` pipeable
- `number`
- add `MagmaSub`
- add `isNumber`
- `string`
- add `isString`
- `Option`
- add `FromEither` instance
- add `fromEitherK`
- add `chainEitherK`
- add `Zero` instance
- add `guard` constructor
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `Ord`
- add `trivial` instance
- add `equals`
- `Reader`
- add `asksReaderW`, `asksReader`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `ReaderEither`
- add `asksReaderEitherW`, `asksReaderEither`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `chainReaderKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `ReaderTask`
- add `asksReaderTaskW`, `asksReaderTask`
- add `chainReaderKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `ReaderTaskEither`
- add `asksReaderTaskEitherW`, `asksReaderTaskEither`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `fromReaderTaskK`
- add `fromReaderEitherK`
- add `chainReaderKW`
- add `chainReaderTaskK`, `chainReaderTaskKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `chainFirstReaderTaskK`, `chainFirstReaderTaskKW`
- add `chainReaderEitherK`, `chainReaderEitherKW`
- add `chainFirstReaderEitherK`, `chainFirstReaderEitherKW`
- add `chainFirstTaskEitherK`, `chainFirstTaskEitherKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `ReadonlyArray`
- add `prependW`, `appendW` (@thewilkybarkid)
- add `filterE`
- add `ChainRecDepthFirst` instance (@qlonik)
- add `chainRecDepthFirst`
- add `ChainRecBreadthFirst` instance (@qlonik)
- add `chainRecBreadthFirst`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `fromOption`
- add `fromPredicate`
- add `fromEither`
- add `FromEither` instance
- add `fromEitherK`
- make `isEmpty` a user defined guard
- add `concat` / `concatW`
- add `match`, `matchW`, `matchLeftW`, `matchRightW`
- add `fromOptionK`
- add `Zero` instance
- add `guard` constructor
- add `exists` alias
- `ReadonlyMap`
- add `union`
- add `intersection`
- add `difference`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- add `reduce`
- add `foldMap`
- add `reduceRight`
- add `reduceWithIndex`
- add `foldMapWithIndex`
- add `reduceRightWithIndex`
- `ReadonlyNonEmptyArray`
- add `matchLeft`, `matchRight`, `modifyHead`, `modifyLast` (@cdimitroulas)
- add `union`
- add `getUnionSemigroup`
- add `makeBy`
- add `range`
- make `concat` pipeable
- `ReadonlyRecord`
- add `union` (@anthonyjoeseph)
- add `intersection` (@anthonyjoeseph)
- add `difference` (@anthonyjoeseph)
- add `getUnionSemigroup` (@anthonyjoeseph)
- add `getUnionMonoid` (@anthonyjoeseph)
- add `getIntersectionSemigroup` (@anthonyjoeseph)
- add `getDifferenceMagma` (@anthonyjoeseph)
- `ReadonlySet`
- add `getUnionSemigroup`
- add `getDifferenceMagma`
- `Record`
- add `union`
- add `intersection`
- add `difference`
- add `getUnionSemigroup`
- add `getUnionMonoid`
- add `getIntersectionSemigroup`
- add `getDifferenceMagma`
- `Set`
- add `getUnionSemigroup`
- add `getDifferenceMagma`
- `State`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `StateReaderTaskEither`
- add `fromStateK`
- add `chainStateK`
- add `local`
- add `asksStateReaderTaskEitherW`, `asksStateReaderTaskEither`
- add `chainReaderKW`
- add `chainFirstReaderK`, `chainFirstReaderKW`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `string`
- add `toUpperCase`
- add `toLowerCase`
- add `replace`
- add `split`
- add `trim`
- add `trimLeft`
- add `trimRight`
- add `includes`
- add `startsWith`
- add `endsWith`
- add `slice`
- `struct`
- add `evolve`
- `Task`
- add `ApT`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `TaskEither`
- add `fromTaskOption` (@thewilkybarkid)
- add `fromTaskOptionK`
- add `chainTaskOptionK`
- add `orElseFirst` / `orElseFirstW`
- add `orLeft`
- add `flattenW`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `TaskOption`
- add `fromTaskEither` (@thewilkybarkid)
- add `Zero` instance
- add `guard` constructor
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `TaskThese`
- add `ApT`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- add `traverseReadonlyNonEmptyArrayWithIndexSeq`
- add `traverseReadonlyArrayWithIndexSeq`
- `These`
- add `elem`
- add `exists`
- add `ApT`
- add `traverseReadonlyNonEmptyArrayWithIndex`
- add `traverseReadonlyArrayWithIndex`
- `Tree`
- add `exists`
- `Witherable`
- add `filterE`, #1458 (@vinassefranche)
- add `wiltDefault`
- add `witherDefault`
- **Polish**
- remove unnecessary type parameters
- `Either`
- `exists`
- `isLeft`
- `isRight`
- `elem`
- `Option`
- `isNone`
- `These`
- `isLeft`
- `isRight`
- `Set` / `ReadonlySet`
- `isEmpty`
- `size`
- `Array` / `ReadonlyArray`
- `isEmpty`
- `isOutOfBound`
- `size`
- `Map` / `ReadonlyMap`
- `isEmpty`
- `size`
- `NonEmptyArray` / `ReadonlyNonEmptyArray`
- `isOutOfBound`
# 2.10.5
- **Bug Fix**
- `StateT`
- fix typo in `fromF`, #1503 (@DKurilo)
# 2.10.4
- **Bug Fix**
- `altW` left type is too wide in `Either`-based data types, #1488 (@wmaurer)
# 2.10.3
- **Bug Fix**
- `StateReaderTaskEither`
- `traverseArrayWithIndex` does not pass the output state from each step to the subsequent step, #1486
# 2.10.2
- **Bug Fix**
- `Record`
- `hasOwnProperty` should be an alias of `ReadonlyRecord.hasOwnProperty`
# 2.10.1
- **Bug Fix**
- rename `hasOwnProperty` in `internal` module, #1481 (@OliverJAsh)
# 2.10.0
- **Deprecations**
- deprecate `pipeable` module, use the specific helpers instead
- deprecate `ValidationT` module, use `EitherT` instead
- deprecate "mega instances", use small, specific instances instead
- deprecate the old monad transformers, use the specific helpers instead
- `Applicative`
- deprecate `getApplicativeComposition`, use `ap` helper instead
- `Array`
- deprecate `prependToAll`, use `prependAll` instead
- deprecate `cons` in favour of `prepend`
- deprecate `snoc` in favour of `append`
- deprecate `empty`
- `BooleanAlgebra`
- deprecate `booleanAlgebraBoolean`, use `boolean.BooleanAlgebra` instead
- deprecate `getFunctionBooleanAlgebra`, use `function.getBooleanAlgebra` instead
- deprecate `getDualBooleanAlgebra`, use `reverse` instead
- `Bounded`
- deprecate `boundedNumber`, use `number.Bounded` instead
- `Choice`
- deprecate `splitChoice` in favour of `split`
- deprecate `fanin` in favour of `fanIn`
- `Compactable`
- deprecate `getCompactableComposition`, use `compact`, `separate` helpers instead
- deprecate `Separated`, use `Separated.Separated` instead
- `Either`
- deprecate `getApplySemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getApplyMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `getValidationSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getValidationMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `getValidation`, use `getApplicativeValidation` and `getAltValidation` instead
- deprecate `Json` type, use the `Json` module instead
- deprecate `parseJSON` type, use the `Json` module instead
- deprecate `stringifyJSON` type, use the `Json` module instead
- `Eq`
- deprecate `eqBoolean`, use `boolean.Eq` instead
- deprecate `eqString`, use `string.Eq` instead
- deprecate `eqNumber`, use `number.Eq` instead
- deprecate `eqDate`, use `Date.Eq` instead
- deprecate `getStructEq`, use `struct` instead
- deprecate `getTupleEq`, use `tuple` instead
- `Filterable`
- deprecate `getFilterableComposition`, use `filter`, `filterMap`, `partition`, `partitionMap` helpers instead
- `Foldable`
- deprecate `toArray` in favour of `toReadonlyArray`
- deprecate `getFoldableComposition`, use `reduce`, `foldMap`, `reduceRight` helpers instead
- `FoldableWithIndex`
- deprecate `getFoldableWithIndexComposition`, use `reduceWithIndex`, `foldMapWithIndex`, `reduceRightWithIndex` helpers instead
- `Functor`
- deprecate `getFunctorComposition`, use `map` helper instead
- `FunctorWithIndex`
- deprecate `getFunctorWithIndexComposition`, use `mapWithIndex` helper instead
- `IO`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `fromIO`
- `IOEither`
- deprecate `getApplySemigroup` in favour of `Apply.getApplySemigroup`
- daprecate `getApplyMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getIOValidation`, use `getApplicativeIOValidation` and `getAltIOValidation` instead
- `Map`
- deprecate `insertAt` in favour of `upsertAt`
- deprecate `empty`
- `Monoid`
- deprecate `monoidAll`, use `boolean.MonoidAll` instead
- deprecate `monoidAny`, use `boolean.MonoidAny` instead
- deprecate `getFunctionMonoid`, use `function.getMonoid` instead
- deprecate `getEndomorphismMonoid`, use `function.getEndomorphismMonoid` instead (**Note**. The execution order in
`function.getEndomorphismMonoid` is reversed)
- deprecate `monoidString`, use `string.Monoid` instead
- deprecate `monoidSum`, use `number.MonoidSum` instead
- deprecate `monoidProduct`, use `number.MonoidProduct` instead
- deprecate `fold`, use `concatAll` instead
- deprecate `getMeetMonoid`, use `min` instead
- deprecate `getJoinMonoid`, use `max` instead
- deprecate `getDualMonoid`, use `reverse` instead
- deprecate `getStructMonoid`, use `struct` instead
- deprecate `getTupleMonoid`, use `tuple` instead
- `NonEmptyArray`
- deprecate `fold`, use `concatAll` instead
- deprecate `prependToAll`, use `prependAll` instead
- deprecate `cons` in favour of `prepend`
- deprecate `snoc` in favour of `append`
- deprecate `uncons` in favour of `unprepend`
- deprecate `unsnoc` in favour of `unappend`
- deprecate `filter` in favour of `Array`'s `filter`
- deprecate `filterWithIndex` in favour of `Array`'s `filterWithIndex`
- `Option`
- deprecate `getApplySemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getApplyMonoid` in favour of `Applicative.getApplicativeMonoid`
- `Ord`
- deprecate `ordBoolean`, use `boolean.Ord` instead
- deprecate `ordString`, use `string.Ord` instead
- deprecate `ordNumber`, use `number.Ord` instead
- deprecate `ordDate`, use `Date.Ord` instead
- deprecate `getDualOrd`, use `reverse` instead
- deprecate `getTupleOrd`, use `tuple` instead
- `Ordering`
- deprecate `eqOrdering`, use `Eq` instead
- deprecate `monoidOrdering`, use `Monoid` instead
- deprecate `invert` in favour of `reverse`
- `Ring`
- deprecate `getFunctionRing`, use `function.getRing` instead
- `Reader`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getMonoid` in favour of `Applicative.getApplicativeMonoid`
- `ReaderEither`
- deprecate `getApplySemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getApplyMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getReaderValidation`, use `getApplicativeReaderValidation` and `getAltReaderValidation` instead
- deprecate `local`, Use `Reader`'s `local` instead
- `ReaderTask`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `run`
- deprecate `local`, Use `Reader`'s `local` instead
- `ReaderTaskEither`
- deprecate `getApplySemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getApplyMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getReaderTaskValidation`, use `getApplicativeReaderTaskValidation` and `getAltReaderTaskValidation` instead
- deprecate `run`
- deprecate `local`, Use `Reader`'s `local` instead
- `ReaderTaskEither`
- deprecate `run`
- `ReadonlyArray`
- deprecate `prependToAll`, use `prependAll` instead
- deprecate `cons` in favour of `prepend`
- deprecate `snoc` in favour of `append`
- `ReadonlyNonEmptyArray`
- deprecate `fold`, use `concatAll` instead
- deprecate `prependToAll`, use `prependAll` instead
- deprecate `insertAt`, Use `ReadonlyArray`'s `insertAt` instead
- deprecate `cons` in favour of `prepend`
- deprecate `snoc` in favour of `append`
- deprecate `uncons` in favour of `unprepend`
- deprecate `unsnoc` in favour of `unappend`
- deprecate `filter` in favour of `ReadonlyArray`'s `filter`
- deprecate `filterWithIndex` in favour of `ReadonlyArray`'s `filterWithIndex`
- `ReadonlyMap`
- deprecate `insertAt` in favour of `upsertAt`
- `ReadonlyRecord`
- deprecate `hasOwnProperty`, use `has` instead
- deprecate `insertAt` in favour of `upsertAt`
- `ReadonlySet`
- deprecate `fromArray` in favour of `fromReadonlyArray`
- `ReadonlyTuple`
- deprecate `mapLeft` in favour of `mapSnd`
- deprecate `map` in favour of `mapFst`
- `Record`
- deprecate `hasOwnProperty`, use `has` instead
- deprecate `insertAt` in favour of `upsertAt`
- deprecate `empty`
- `Ring`
- deprecate `getTupleRing`, use `tuple` instead
- `Semigroup`
- deprecate `semigroupAll`, use `boolean.SemigroupAll` instead
- deprecate `semigroupAny`, use `boolean.SemigroupAny` instead
- deprecate `getFunctionSemigroup`, use `function.getSemigroup` instead
- deprecate `semigroupString`, use `string.Semigroup` instead
- deprecate `semigroupSum`, use `number.SemigroupSum` instead
- deprecate `semigroupProduct`, use `number.SemigroupProduct` instead
- deprecate `fold`, use `concatAll` instead
- deprecate `getIntercalateSemigroup`, use `intercalate` instead
- deprecate `getMeetSemigroup`, use `min` instead
- deprecate `getJoinSemigroup`, use `max` instead
- deprecate `getDualSemigroup`, use `reverse` instead
- deprecate `getStructSemigroup`, use `struct` instead
- deprecate `getTupleSemigroup`, use `tuple` instead
- deprecate `getFirstSemigroup`, use `first` instead
- deprecate `getLastSemigroup`, use `last` instead
- deprecate `getObjectSemigroup`, use `assign` instead
- `Set`
- deprecate `subset` in favour of `isSubset`
- `Show`
- deprecate `showBoolean`, use `boolean.Show` instead
- deprecate `showString`, use `string.Show` instead
- deprecate `showNumber`, use `number.Show` instead
- deprecate `getStructShow`, use `struct` instead
- deprecate `getTupleShow`, use `tuple` instead
- `Strong`
- deprecate `splitStrong` in favour of `split`
- deprecate `fanout` in favour of `fanOut`
- `Task`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `fromTask`
- `TaskEither`
- deprecate `getApplySemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getApplyMonoid` in favour of `Applicative.getApplicativeMonoid`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `getTaskValidation`, use `getApplicativeTaskValidation` and `getAltTaskValidation` instead
- `TaskThese`
- deprecate `functorTaskThese` instance in favour of `Functor`
- deprecate `bifunctorTaskThese` instance in favour of `Bifunctor`
- deprecate `getSemigroup` in favour of `Apply.getApplySemigroup`
- deprecate `toTuple` in favour of `toTuple2`
- `These`
- deprecate `toTuple` in favour of `toTuple2`
- `Traversable`
- deprecate `getTraversableComposition`, use `traverse`, `sequence` helpers instead
- `Tuple`
- deprecate `mapLeft` in favour of `mapSnd`
- deprecate `map` in favour of `mapFst`
- **New Feature**
- add `Pointed` type class
- add `FromEither` type class
- add `FromIO` type class
- add `FromTask` type class
- add `TaskOption` module
- add `string` module
- add `number` module
- add `Separated` module (@YBogomolov)
- add `Json` module
- `Apply`
- add `ap` helper
- add `apS` helper
- add `apFirst` helper
- add `apSecond` helper
- add `getApplySemigroup`
- `Applicative`
- add `getApplicativeMonoid`
- `Array`
- add `Pointed` instance
- add `Apply` instance
- add `matchLeft` alias
- add `matchRight` alias
- add `size`
- better `unsafeInsertAt` signature
- better `chunksOf` signature
- add `getSemigroup`
- `boolean`
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `Eq` instance
- add `BooleanAlgebra` instance
- add `SemigroupAll` instance
- add `SemigroupAny` instance
- add `MonoidAll` instance
- add `MonoidAny` instance
- add `Ord` instance
- add `Show` instance
- `BooleanAlgebra`
- add `reverse`
- `Chain`
- add `bind` helper
- add `chainFirst` helper
- `Compactable`
- add `compact` helper
- add `separate` helper
- add `separated` constructor
- `Date`
- add `Eq` instance
- add `Ord` instance
- `Filterable`
- add `filter` helper
- add `filterMap` helper
- add `partition` helper
- add `partitionMap` helper
- `Foldable`
- add `reduce` helper
- add `foldaMap` helper
- add `reduceRight` helper
- `FoldableWithIndex`
- add `reduceWithIndex` helper
- add `foldaMapWithIndex` helper
- add `reduceRightWithIndex` helper
- `function`
- add `getBooleanAlgebra`
- add `getSemigroup`
- add `getMonoid`
- add `getSemiring`
- add `getRing`
- add `getEndomorphismMonoid`
- `Functor`
- add `map` helper
- add `bindTo` helper
- add `flap` derivable, #1393 (@williamareynolds)
- `FunctorWithIndex`
- add `mapWithIndex` helper
- `Either`
- add `Pointed` instance
- add `Apply` instance
- add `getCompactable`
- add `getFilterable`
- add `FromEither` instance
- add `toUnion`, closes #1362
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `orElseW`
- add `tryCatchK`
- add `fromOptionK`
- add `chainOptionK`
- `EitherT`
- split `getEitherM` into separated functions
- `Eq`
- add `getSemigroup`
- add `struct`
- add `tuple`
- `Identity`
- add `Pointed` instance
- add `Apply` instance
- `IO`
- add `Pointed` instance
- add `Apply` instance
- add `FromIO` instance
- `IOEither`
- add `Pointed` instance
- add `getCompactable`
- add `FromIO` instance
- add `FromEither` instance
- add `tryCatchK` combinator
- add `toUnion`
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `orElseW`
- add `fromOptionK`
- add `chainOptionK`
- `Map`
- add `filterWithIndex` combinator
- add `filterMapWithIndex` combinator
- add `partitionWithIndex` combinator
- add `partitionMapWithIndex` combinator
- add `getTraversableWithIndex` instance
- add `getFoldableWithIndex` instance
- `Monoid`
- add `concatAll`
- add `min`
- add `max`
- add `reverse`
- add `struct`
- add `tuple`
- `NonEmptyArray`
- add `Pointed` instance
- add `Apply` instance
- add `concatAll`
- add `isNonEmpty` guard
- add `fromReadonlyNonEmptyArray` constructor
- add `chainWithIndex` combinator
- add `chop`
- add `splitAt`
- add `chunksOf`
- `Option`
- add `Pointed` instance
- add `Apply` instance
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `tryCatchK`
- `OptionT`
- split `getOptionM` into separated functions
- `Ord`
- add `equalsDefault`
- add `reverse`
- add `tuple`
- `Ordering`
- add `Eq` instance
- add `Semigroup` instance
- add `Monoid` instance
- add `match`
- `Random`
- add `randomElem`
- `Reader`
- add `Pointed` instance
- add `Apply` instance
- export `first`, `second`, `left`, `right`
- `ReaderT`
- split `getReaderM` into separated functions
- `ReaderEither`
- add `Pointed` instance
- add `Apply` instance
- add `FromEither` instance
- add `getCompactable`
- add `getFilterable`
- add `toUnion`
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `orElseW`
- add `fromOptionK`
- add `chainOptionK`
- `ReaderTask`
- add `Pointed` instance
- add `ApplyPar` instance
- add `ApplySeq` instance
- add `FromIO` instance
- add `FromTask` instance
- add `traverseSeqArrayWithIndex`
- add `traverseSeqArray`
- add `sequenceSeqArray`
- export `Chain` instance
- export `Monad` instance
- export `MonadIO` instance
- export `MonadTask` instance
- `ReaderTaskEither`
- add `Pointed` instance
- add `ApplyPar` instance
- add `ApplySeq` instance
- add `FromIO` instance
- add `FromTask` instance
- add `FromEither` instance
- add `getCompactable`
- add `getFilterable`
- add `toUnion`
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `orElseW`
- add `fromOptionK`
- add `chainOptionK`
- export `Chain` instance
- export `Monad` instance
- export `MonadIO` instance
- export `MonadTask` instance
- export `MonadThrow` instance
- `ReadonlyArray`
- add `Pointed` instance
- add `Apply` instance
- add `getSemigroup`
- add `matchLeft` instance
- add `matchRight` instance
- add `size`
- better `unsafeInsertAt` signature
- better `chunksOf` signature, closes #1407
- `ReadonlyMap`
- add `filterWithIndex` combinator
- add `filterMapWithIndex` combinator
- add `partitionWithIndex` combinator
- add `partitionMapWithIndex` combinator
- add `getFunctorWithIndex`
- add `getFoldable`
- add `getFoldableWithIndex`
- add `getTraversable`
- add `getTraversableWithIndex`
- `ReadonlyNonEmptyArray`
- add `Pointed` instance
- add `Apply` instance
- add `concatAll`
- add `isNonEmpty`
- add `chainWithIndex`
- add `chop`
- add `splitAt`
- add `chunksOf`
- `ReadonlySet`
- add `isEmpty`
- add `size`
- add `toggle`
- `Ring`
- add `tuple`
- `Set`
- add `isEmpty`
- add `size`
- `Semigroup`
- add `constant`
- add `concatAll`
- add `intercalate`
- add `min`
- add `max`
- add `struct`
- add `tuple`
- add `first`
- add `last`
- add `assign`
- `Show`
- add `struct`
- add `tuple`
- `State`
- add `Pointed` instance
- add `Apply` instance
- `StateT`
- split `getStateM` into separated functions
- `StateReaderTaskEither`
- add `Pointed` instance
- add `Apply` instance
- add `Monad` instance
- add `FromIO` instance
- add `FromTask` instance
- add `FromEither` instance
- add `fromOptionK`
- add `chainOptionK`
- export `MonadIO` instance
- export `MonadTask` instance
- export `MonadThrow` instance
- `Task`
- add `Pointed` instance
- add `ApplyPar` instance
- add `ApplySeq` instance
- add `FromIO` instance
- add `FromTask` instance
- export `Chain` instance
- export `Monad` instance
- export `MonadIO` instance
- export `MonadTask` instance
- `TaskEither`
- add `Pointed` instance
- add `ApplyPar` instance
- add `ApplySeq` instance
- add `getCompactable`
- add `FromIO` instance
- add `FromTask` instance
- add `FromEither` instance
- add `toUnion`
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `orElseW`
- add `fromOptionK`
- add `chainOptionK`
- export `Chain` instance
- export `Monad` instance
- export `MonadIO` instance
- export `MonadTask` instance
- export `MonadThrow` instance
- `TaskThese`
- add `Functor` instance
- add `Pointed` instance
- add `Bifunctor` instance
- add `toTuple2`
- add `getApply`
- add `FromIO` instance
- add `FromTask` instance
- add `fromEither` function
- add `FromEither` instance
- add `getChain` instance
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `fromOption`
- add `fromOptionK`
- add `fromPredicate`
- `These`
- add `Pointed` instance
- add `of` function
- add `getApply`
- add `toTuple2`
- add `FromEither` instance
- add `fromOption` constructor
- add `foldW`
- add `match` alias
- add `matchW` alias
- add `fromOptionK`
- `TaskOption`
- export `Chain` instance
- export `Monad` instance
- `TheseT`
- split `getTheseM` into separated functions
- `Traversable`
- add `traverse` helper
- add `sequence` helper
- `Tree`
- add `Pointed` instance
- add `Apply` instance
- `Writer`
- add `getPointed`
- add `getApply`
- add `getApplicative`
- add `getChain`
- **Bug Fix**
- `ReadonlyRecord` / `Record`: remove `extends string` constraints in `singleton` / `insertAt`, closes #1413
- `TaskOption`
- fix `getOrEl