lz4-frame-conduit: Conduit implementing the official LZ4 frame streaming format

[ library, mit, program, web ] [ Propose Tags ]

Conduit implementing the official LZ4 frame streaming format. Compatible with the lz4 command line utility.

[Skip to Readme]
Versions [faq], (info)
Change log CHANGELOG.md
Dependencies base (>=4.7 && <5), bytestring, conduit, conduit-extra, containers, inline-c, lz4-frame-conduit, optparse-applicative, raw-strings-qq, resourcet, template-haskell, text, unliftio, unliftio-core [details]
License MIT
Copyright 2017 Niklas Hambüchen
Author Niklas Hambüchen
Maintainer mail@nh2.me
Category Web
Home page https://github.com/nh2/lz4-frame-conduit#readme
Bug tracker https://github.com/nh2/lz4-frame-conduit/issues
Source repo head: git clone https://github.com/nh2/lz4-frame-conduit
Uploaded by NiklasHambuechen at 2020-09-12T23:22:05Z
Distributions NixOS:
Executables haskell-lz4c
Downloads 68 total (68 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-09-12 [all 1 reports]


[Index] [Quick Jump]


Maintainer's Corner

For package maintainers and hackage trustees

Readme for lz4-frame-conduit-

[back to package description]


Haskell Conduit implementing the official LZ4 frame streaming format.

Rationale and comparison to non-lz4-compatible libraries

There exist two lz4 formats:

  1. the block format, limited to compressing data < 2 GB
  2. the frame format, suitable for streaming arbitrarily sized data ** This is what the lz4 command line utility uses

This library implements the frame format.

Some existing Haskell libraries implement only the block format, and are thus not suitable to compress data > 2 GB in a way. (Of course they could chunk the output in some arbitrary way, but that wouldn't be compatible with the lz4 command line utility.) The libraries that belong to this category at time of writing are: