@@ -2,27 +2,45 @@
3## Unreleased
3## Unreleased
5−* Arrays are now created unpinned by default, they were created pinned
6− earlier. During IO operations unpinned arrays are automatically copied
7− to pinned memory. When arrays are directly passed to IO operations
8− programmers can choose to create them pinned to avoid a copy. To
9− create pinned arrays, use the internal APIs with the `pinned*` prefix.
11−* Changed the signature of 'Streamly.Data.Stream.handle' to make the exception
13−* Rethrow the exception promptly in bracketIO.
15### Breaking
5### Breaking
17* `ParserK` in `Streamly.Data.ParserK` is not specialized to arrays anymore. To
7* `ParserK` in `Streamly.Data.ParserK` is not specialized to arrays anymore. To
18 adapt to the new code, change `ParserK a m b` to `ParserK (Array a) m b` where
8 adapt to the new code, change `ParserK a m b` to `ParserK (Array a) m b` where
19− `Array` comes from `Streamly.Data.Array`.
9+ `Array` comes from `Streamly.Data.Array`. This change also changed the
10+ signatures of `parseChunks` and `parseBreakChunks`.
11+* Changed the signature of 'Streamly.Data.Stream.handle' to make the
12+ exception handler monadic.
13+* Rethrow exceptions promptly in `bracketIO`.
14+* `getIndex` signature changed in `Streamly.Data.MutArray` and
15+ `Streamly.Data.MutArray.Generic`.
18+* Fold constructor has changed, added a `final` field to support
19+ finalization and cleanup of a chain of folds. The `extract` field is
20+ now used only for mapping the fold internal state to fold result for
22+* Some low level internal modules have been removed, they are entirely
23+ exported from higher level internal modules. If you were importing any
24+ of the missing modules then import the higher level modules now.
20* Internal module changes:
25* Internal module changes:
21 * Streamly.Internal.Serialize.FromBytes -> Streamly.Internal.Data.Serialize.Parser
26 * Streamly.Internal.Serialize.FromBytes -> Streamly.Internal.Data.Serialize.Parser
22 * Streamly.Internal.Serialize.ToBytes -> Streamly.Internal.Data.Serialize.Stream
27 * Streamly.Internal.Serialize.ToBytes -> Streamly.Internal.Data.Serialize.Stream
23 * Streamly.Internal.Data.Unbox is now exported via Streamly.Internal.Data.Serialize
28 * Streamly.Internal.Data.Unbox is now exported via Streamly.Internal.Data.Serialize
24 * Streamly.Internal.Data.IORef.Unboxed is now exported via Streamly.Internal.Data.Serialize
29 * Streamly.Internal.Data.IORef.Unboxed is now exported via Streamly.Internal.Data.Serialize
33+* Unboxed arrays are now created unpinned by default, they were
34+ created pinned earlier. During IO operations, unpinned arrays are
35+ automatically copied to pinned memory. When arrays are directly passed
36+ to IO operations programmers can choose to create them pinned to avoid a
37+ copy. To create pinned arrays, use the internal APIs with the `pinned*`
39+* Added a `Streamly.Data.Serialize` module for fast binary serialization.
40+* Added exception handling routines in StreamK (handle, bracketIO).
41+* More APIs added in `Streamly.Data.MutArray` and
42+ `Streamly.Data.MutArray.Generic`.
26### Deprecations
44### Deprecations
28* `Streamly.Data.MutArray.newUnpinned` is renamed to
46* `Streamly.Data.MutArray.newUnpinned` is renamed to