on master help sign in
Update the Changelog
7263d81Adithya Kumar
docs/User/ProjectRelated/Changelog.md+43−24
@@ -3,60 +3,79 @@
3<!-- See rendered changelog at https://streamly.composewell.com -->
3<!-- See rendered changelog at https://streamly.composewell.com -->
4## 0.9.0 (Unreleased)
4## 0.9.0 (Unreleased)
5
5
6−### Major Changes
6+### Package split
7
7
8`streamly` package is split into two packages, (1) `streamly-core` that
8`streamly` package is split into two packages, (1) `streamly-core` that
9has only GHC boot library depdendecies, and (2) `streamly` that contains
9has only GHC boot library depdendecies, and (2) `streamly` that contains
10−higher level operations with additional dependencies.
10+higher level operations (including concurrent ones) with additional
11−
11+dependencies. Make sure you add a dependency on `streamly-core` to keep old
12−### Breaking Changes
12+code working.
13
13
14−* Moved the following modules to the `streamly-core` package:
14+* Moved the following modules from `streamly` package to the
15+ `streamly-core` package:
15 * Streamly.Console.Stdio
16 * Streamly.Console.Stdio
16 * Streamly.Data.Fold
17 * Streamly.Data.Fold
17 * Streamly.Data.Unfold
18 * Streamly.Data.Unfold
18 * Streamly.FileSystem.Handle
19 * Streamly.FileSystem.Handle
19 * Streamly.Unicode.Stream
20 * Streamly.Unicode.Stream
21+
22+### Breaking Changes
23+
20−* The unboxed arrays now require `Unbox` instead of `Storable` for the stored
24+* Unboxed arrays now require `Unbox` constraint instead of `Storable`.
21− type. The `Unbox` typeclass can be found in `Streamly.Data.Array`.
25+ The `Unbox` typeclass can be imported from `Streamly.Data.Array`. You
22−* Remove the MonadBase instance of the SerialT type.
26+ can use generic deriving to derive Unbox instances.
23−* In `Streamly.Data.Unfold`, signatures changed:
27+* Stream type in all modules has been changed to the new `Stream` type
28+ replacing the existing `IsStream t` or `SerialT` types. Use `fromStream`,
29+ `toStream` from `Streamly.Prelude` module to adapt the types.
30+* Signatures changed in `Streamly.Data.Unfold`:
24 * `fromStream`
31 * `fromStream`
25 * `replicateM`
32 * `replicateM`
26
33
34+### Major Changes
35+
36+`Streamly.Prelude` module has been deprecated, equivalent
37+functionality is covered by the `Streamly.Data.Stream`,
38+`Streamly.Data.Stream.Prelude`, and `Streamly.Data.Fold` modules. The
39+new modules use a monomorphic `Stream` type instead of the polymorphic
40+`IsStream t` type.
41+
42+`Streamly.Data.Stream` module and the `Stream` type are meant for
43+writing high-performance fused pipelines not involving explicit
44+recursion. For writing code that may require recursive function calls,
45+`Streamly.Data.Stream.StreamK` module and the `StreamK` type have been
46+added which provide a CPS based stream implementation. `Stream` and
47+`StreamK` types can be easily interconverted.
48+
49+The old code can be adapted to use the new modules with some changes.
50+See the [upgrade guide](/docs/User/ProjectRelated/Upgrading.md) for more
51+details on how to adapt your existing code to the new release.
52+
27### Enhancements
53### Enhancements
28
54
29* Added the following new modules to the `streamly-core` package:
55* Added the following new modules to the `streamly-core` package:
56+ * Streamly.Data.Array
30 * Streamly.Data.Array.Generic
57 * Streamly.Data.Array.Generic
31 * Streamly.Data.MutArray
58 * Streamly.Data.MutArray
32 * Streamly.Data.MutArray.Generic
59 * Streamly.Data.MutArray.Generic
33 * Streamly.Data.Parser
60 * Streamly.Data.Parser
61+ * Streamly.Data.ParserK
62+ * Streamly.Data.Stream
63+ * Streamly.Data.StreamK
34 * Streamly.FileSystem.Dir
64 * Streamly.FileSystem.Dir
35 * Streamly.FileSystem.File
65 * Streamly.FileSystem.File
36− * Streamly.Unicode.String
37 * Streamly.Unicode.Parser
66 * Streamly.Unicode.Parser
67+ * Streamly.Unicode.String
38* Added the following new modules to the `streamly` package:
68* Added the following new modules to the `streamly` package:
39 * Streamly.Data.Stream.MkType
69 * Streamly.Data.Stream.MkType
40 * Streamly.Data.Stream.Prelude
70 * Streamly.Data.Stream.Prelude
41
71
42### Deprecations
72### Deprecations
43
73
44−* `Streamly.Data.Array.Foreign` renamed and moved to `Streamly.Data.Array` in
45− `streamly-core` package. Corresponding internal modules are renamed
46− accordingly.
47−* In `Streamly.Data.Fold`:
48− * `head` renamed to `one`.
49− * `serialWith` renamed to `splitWith`.
50− * `variance`, and `stdDev` deprecated. Please use the
51− `streamly-statistics` package instead.
52− * `chunksOf` is renamed to `groupsOf`.
53−* In `Streamly.Network.Socket`:
54− * `readWithBufferOf` renamed to `readWith`
55− * `readChunksWithBufferOf` renamed to `readChunksWith`
56− * `writeWithBufferOf` renamed to `writeWith`
57− * `writeChunksWithBufferOf` renamed to `writeChunksWith`
58* Remove support for GHC 8.4.*
74* Remove support for GHC 8.4.*
59
75
76+Several modules and functions have been deprecated, equivalent modules or
77+functions are suggested in the deprecation warning messages by the compiler.
78+
60### Internal module changes
79### Internal module changes
61
80
62If you cannot find an internal module that you were using, it may have
81If you cannot find an internal module that you were using, it may have