bytestring-delta

Simple, fast binary diff/patch

http://github.com/joeyadams/haskell-bytestring-delta

Latest on Hackage:0.1.0.1

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

MIT licensed by Joey Adams
Maintained by [email protected]

Compute a patch between two ByteStrings which can later be applied to the first to produce the second. This can be used to save bandwidth and disk space when many strings differing by a small number of bytes need to be transmitted or stored.

The underlying implementation is written in C, and can also be found at http://ccodearchive.net/info/bdelta.html.

Currently, a patch does not save any space when two strings differ by more than 1000 bytes. This arbitrary limit serves to keep applications from spiking in memory and CPU usage, as the algorithm uses quadratic space and time with respect to the length of the patch. A better algorithm may be introduced in a future version of bytestring-delta.