2018-04-15 11:39:49 +03:00
|
|
|
## Unreleased
|
2018-03-26 00:52:07 +03:00
|
|
|
|
2018-04-15 11:39:49 +03:00
|
|
|
### Breaking changes
|
2018-04-16 20:46:26 +03:00
|
|
|
* Change the semantics of the Semigroup instance for `InterleavedT`, `AsyncT`
|
2018-04-17 15:19:35 +03:00
|
|
|
and `ParallelT`. The new semantics are as follows:
|
|
|
|
* For `InterleavedT`, `<>` operation interleaves two streams
|
|
|
|
* For `AsyncT`, `<>` now concurrently merges two streams in a left biased
|
|
|
|
manner using demand based concurrency.
|
|
|
|
* For `ParallelT`, the `<>` operation now concurrently meges the two streams
|
|
|
|
in a fairly parallel manner.
|
|
|
|
|
|
|
|
To adapt to the new changes, replace `<>` with `append` wherever it is used
|
|
|
|
for streams other than `StreamT`.
|
|
|
|
|
2018-04-16 20:46:26 +03:00
|
|
|
* Change the semantics of `Alternative` instance. The `<|>` operator now has a
|
2018-04-17 15:19:35 +03:00
|
|
|
different behavior for each type. See the documentation for more details. To
|
|
|
|
adapt to this change replace any usage of `<|>` with `parallel` and
|
|
|
|
`empty` with `nil`.
|
2018-04-18 08:48:08 +03:00
|
|
|
* Stream type now defaults to the `SerialT` type unless explicitly specified
|
|
|
|
using a type combinator or a monomorphic type. This change reduces puzzling
|
|
|
|
type errors for beginners. It includes the following two changes:
|
2018-04-17 19:26:46 +03:00
|
|
|
* Change the type of all stream elimination functions to `SerialT`. This
|
|
|
|
makes sure that the stream type is always fixed at all exits.
|
|
|
|
* Change the type combinators to only fix the argument stream type and
|
|
|
|
the resulting stream type remains polymorphic.
|
2018-04-18 08:48:08 +03:00
|
|
|
|
|
|
|
Stream types may have to be changed or type combinators may have to added or
|
|
|
|
removed to adapt to this change.
|
2018-04-17 15:19:35 +03:00
|
|
|
* Change the type of `foldrM` to make it consistent with `foldrM` in base.
|
2018-03-26 00:52:07 +03:00
|
|
|
|
2018-04-15 11:39:49 +03:00
|
|
|
### Deprecations
|
2018-04-15 15:43:04 +03:00
|
|
|
* Deprecate and rename the following symbols:
|
|
|
|
* `StreamT` to `SerialT`
|
|
|
|
* `runStreamT` to `runSerialT`
|
|
|
|
* `ZipStream` to `ZipSerial`
|
|
|
|
* `runZipStream` to `runZipSerial`
|
2018-04-17 15:19:35 +03:00
|
|
|
* `AsyncT` to `AParallelT`
|
|
|
|
* `runAsyncT` to `runAParallelT`
|
|
|
|
* `asyncly` to `aparallely`
|
2018-04-15 15:43:04 +03:00
|
|
|
* `Streaming` to `IsStream`
|
|
|
|
* `runStreaming` to `runStream`
|
2018-04-16 20:46:26 +03:00
|
|
|
* `<=>` to `interleave`
|
2018-04-17 15:19:35 +03:00
|
|
|
* `<|` to `aparallel`
|
2018-04-15 18:36:45 +03:00
|
|
|
* `each` to `fromFoldable`
|
2018-04-15 15:43:04 +03:00
|
|
|
* `scan` to `scanx`
|
|
|
|
* `foldl` to `foldx`
|
|
|
|
* `foldlM` to `foldxM`
|
|
|
|
|
|
|
|
### Enhancements
|
|
|
|
* Add the following functions:
|
|
|
|
* `scanl'` strict left scan
|
|
|
|
* `foldl'` strict left fold
|
|
|
|
* `foldlM'` strict left fold with a monadic fold function
|
2018-04-17 15:19:35 +03:00
|
|
|
* `append` run two streams serially one after the other
|
2018-04-18 08:48:08 +03:00
|
|
|
* `parallel` run two streams in parallel (replaces `<|>`)
|
2018-03-26 00:52:07 +03:00
|
|
|
|
2018-03-25 01:11:28 +03:00
|
|
|
## 0.1.2
|
|
|
|
|
|
|
|
### Enhancements
|
2018-03-24 17:58:21 +03:00
|
|
|
* Add `iterate`, `iterateM` stream operations
|
2018-03-22 20:31:08 +03:00
|
|
|
|
|
|
|
### Bug Fixes
|
2018-03-25 01:11:28 +03:00
|
|
|
* Fixed a bug that casued unexpected behavior when `pure` was used to inject
|
|
|
|
values in Applicative composition of `ZipStream` and `ZipAsync` types.
|
2018-03-22 20:31:08 +03:00
|
|
|
|
2018-03-18 17:17:26 +03:00
|
|
|
## 0.1.1
|
2018-03-10 13:59:50 +03:00
|
|
|
|
2018-03-14 11:42:41 +03:00
|
|
|
### Enhancements
|
2018-03-18 10:18:17 +03:00
|
|
|
* Make `cons` right associative and provide an operator form `.:` for it
|
2018-03-24 17:58:21 +03:00
|
|
|
* Add `null`, `tail`, `reverse`, `replicateM`, `scan` stream operations
|
2018-03-14 11:42:41 +03:00
|
|
|
* Improve performance of some stream operations (`foldl`, `dropWhile`)
|
|
|
|
|
|
|
|
### Bug Fixes
|
2018-03-14 02:19:53 +03:00
|
|
|
* Fix the `product` operation. Earlier, it always returned 0 due to a bug
|
|
|
|
* Fix the `last` operation, which returned `Nothing` for singleton streams
|
2018-03-10 13:59:50 +03:00
|
|
|
|
2017-12-01 08:32:28 +03:00
|
|
|
## 0.1.0
|
|
|
|
|
|
|
|
* Initial release
|