Skip to content

CompressionLibraries

Evan Nemerson edited this page Aug 2, 2016 · 7 revisions

Compression Libraries

Squash binds a lot of libraries, but not all of them. This is an attempt to put together a list of implementations which are not included in Squash, and point out any hurdles there may be in getting them included.

Note that, in addition to this list, there as a plugin-request label in the issue tracker.

This list is very incomplete. Other lists:

Implementation Issue License Compatibility Complications
Apple API 146 Proprietary lz4, zlib Apple (OS X and iOS) only, too new for Travis
BALZ 20 Public Domain Not designed as a library, requires work much like CRUSH did
GLZA Apache 2.0 No real API
FreeArc 18 GPLv2 Insane API
igzip 100 zlib Unidirectional, options are compile-time only
IPP Proprietary
LZ5 BSD Should be trivial, just copy the LZ4 plugin and make some minor changes
lzcomp MTX
LZMAT GPL Writes outside provided buffers, author unresponsive to bug reports
LZO Professional Proprietary
LzTurbo Proprietary
MCM 27 GPLv2 API needs work
SLZ 172 X11 zlib Compression-only
Oodle Proprietary
Zopfli 3 Apache 2.0 zlib Compression-only
wimlib GPLv2 Requires known decompressed size, but a wrapper would make it incompatible with other implementations.
Windows API 54 Proprietary Windows-only
Clone this wiki locally