ezgzip provides a simple interface focused on string -> string
zlib and gzip (de)compression.
Documentation is available here.
An example illustrating how to gzip compress and then decompress a string:
open Rresult
let () =
let original = "Hello world" in
let compressed = Ezgzip.compress original in
let decompressed = R.get_ok (Ezgzip.decompress compressed) in
assert (original = decompressed)
This library currently uses the zlib bindings provided by camlzip. The gzip header/footer code is based on the upstream specification.