|ANN: pipes-zlib 0.2.0.0||Renzo Carbonara||5/7/13 5:37 PM|
`pipes-zlib`  is a small library that allows compressing and
decompressing strict `ByteString` streams using the zlib compression
This new version is updated to work with `pipes` 3.3 and builds on top
of the `zlib-bindings`  library by Michael Snoyman, which doesn't
rely on Lazy IO, as opposed to the `zlib`  library. Still, most of
types used are those exposed by the `zlib` library, since that's also
the approach taken by the `zlib-bindings` library.
I thank Paolo Capriotti, the original author of `pipes-zlib`, for
allowing me to reuse the `pipes-zlib` name for this new and backwards
incompatible version of the library.
I haven't tested this library much, please don't hesitate to report any errors.
In the future it would be nice to modify the API so that the
`CompressParams`  and `DecompressParams`  types from the `zlib`
library can be reused. That would probably involve modifying the
`zlib-bindings` library, though.
|Re: ANN: pipes-zlib 0.2.0.0||Gabriel Gonzalez||5/7/13 6:13 PM|
Wow, thanks! Now I REALLY need to finish up pipes-bytestring :).
|Re: ANN: pipes-zlib 0.2.0.0||Renzo Carbonara||5/7/13 6:34 PM|
On Tue, May 7, 2013 at 9:37 PM, Renzo Carbonara <gnuk...@gmail.com> wrote:Oh, and the `IO` base monad shouldn't be there, compression and
decompression ought to be pure. `IO` is there due to a limitation
imposed by the current implementation of `zlib-bindings`. I look
forward to changing that in the future :)
|Re: [haskell-pipes] Re: ANN: pipes-zlib 0.2.0.0||Gabriel Gonzalez||5/8/13 10:42 AM|
Don't worry. There is no hurry. Also, I actually thought it would require `IO`!
However, the pure version will still be nice, especially for doing pure testing.
Also, I like the clean API. Very simple and easy to use.
|Re: [haskell-pipes] Re: ANN: pipes-zlib 0.2.0.0||Renzo Carbonara||5/8/13 11:37 AM|
|Re: [haskell-pipes] Re: ANN: pipes-zlib 0.2.0.0||Oliver Charles||5/19/13 1:19 PM|
Hey, just wanted to express my thanks for this too. I'm working on streaming the contents of .tar.gz files, and once I wrote my .tar parser - I just had to slot decompressD into the proxy composition and bam - I can read .tar.gz too!
Nice work :)
|Re: [haskell-pipes] Re: ANN: pipes-zlib 0.2.0.0||Renzo Carbonara||5/19/13 2:50 PM|
On Sun, May 19, 2013 at 5:19 PM, Oliver Charles <ol...@ocharles.org.uk> wrote:Fascinating! Thanks for letting us know! Welcome to the pipes!
I guess you are officially the first `pipes-zlib` user :) Please tell
us if you find any issues.
¿How did you go about parsing the TAR files with the current tools?
I'm not experienced in that format. ¿Would you care to share some
|Re: [haskell-pipes] Re: ANN: pipes-zlib 0.2.0.0||Oliver Charles||5/19/13 11:45 PM|
I'm using pipes-bytestring to stream a ByteString out from a Handle, along with pipes-parse for push back support and the ability to request x bytes at a time. I use Cereal for my parsing. The tar format is really easy, and I'm actually thinking of doing a live-coding type screencast of the whole thing.
I'm not experienced in that format. ¿Would you care to share some code?
Sure, my initial work is at https://github.com/ocharles/pipes-tar