conduit-extra 1.1.7.2 → 1.1.7.3
raw patch · 3 files changed
+12/−10 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- ChangeLog.md +4/−0
- Data/Conduit/Binary.hs +7/−9
- conduit-extra.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,7 @@+## 1.1.7.3++* Make Binary.lines O(n) instead of O(n^2) [#209](https://github.com/snoyberg/conduit/pull/209)+ ## 1.1.7.2 * Fix for: Decompressing a specific amount of zlib data "eats" following data [#20](https://github.com/fpco/streaming-commons/issues/20)
Data/Conduit/Binary.hs view
@@ -345,20 +345,18 @@ -- Since 0.3.0 lines :: Monad m => Conduit S.ByteString m S.ByteString lines =- loop id+ loop [] where- loop front = await >>= maybe (finish front) (go front)+ loop acc = await >>= maybe (finish acc) (go acc) - finish front =- let final = front S.empty+ finish acc =+ let final = S.concat $ reverse acc in unless (S.null final) (yield final) - go sofar more =+ go acc more = case S.uncons second of- Just (_, second') -> yield (sofar first) >> go id second'- Nothing ->- let rest = sofar more- in loop $ S.append rest+ Just (_, second') -> yield (S.concat $ reverse $ first:acc) >> go [] second'+ Nothing -> loop $ more:acc where (first, second) = S.breakByte 10 more
conduit-extra.cabal view
@@ -1,5 +1,5 @@ Name: conduit-extra-Version: 1.1.7.2+Version: 1.1.7.3 Synopsis: Batteries included conduit: adapters for common libraries. Description: The conduit package itself maintains relative small dependencies. The purpose of this package is to collect commonly used utility functions wrapping other library dependencies, without depending on heavier-weight dependencies. The basic idea is that this package should only depend on haskell-platform packages and conduit.