binary-io 0.5.0 → 0.6.0
raw patch · 3 files changed
+11/−4 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Data.Binary.IO.Lifted: newWriterWith :: Functor m => (ByteString -> m ()) -> Writer m
+ Data.Binary.IO.Lifted: newWriterWith :: Applicative m => (ByteString -> m ()) -> Writer m
Files
- ChangeLog.md +4/−0
- binary-io.cabal +1/−1
- lib/Data/Binary/IO/Lifted.hs +6/−3
ChangeLog.md view
@@ -1,5 +1,9 @@ # binary-io +## 0.6.0++* Respect chunking from the underlying PutM when writing resulting ByteStrings+ ## 0.5.0 * Let runPut and company return the result of the PutM operation
binary-io.cabal view
@@ -5,7 +5,7 @@ binary-io version:- 0.5.0+ 0.6.0 category: Data, Parsing, IO
lib/Data/Binary/IO/Lifted.hs view
@@ -58,7 +58,8 @@ import qualified Data.Binary.Put as Put import Data.ByteString (ByteString) import qualified Data.ByteString as ByteString-import Data.ByteString.Lazy (toStrict)+import Data.ByteString.Lazy (toChunks, toStrict)+import Data.Foldable (traverse_) import Data.IORef (atomicModifyIORef', mkWeakIORef, newIORef) import qualified Deque.Strict as Deque import System.IO (Handle, hSetBinaryMode)@@ -241,12 +242,14 @@ -- -- @since 0.4.0 newWriterWith- :: Functor m+ :: Applicative m => (ByteString -> m ()) -- ^ Chunk writer -> Writer m newWriterWith write = Writer $ \put -> do let (result, body) = Put.runPutM put- result <$ write (toStrict body)+ result <$+ -- Instead of allocating a single big+ traverse_ write (toChunks body) -- | Create a writer. --