-
Notifications
You must be signed in to change notification settings - Fork 53
CompressionLibraries
Evan Nemerson edited this page Aug 2, 2016
·
7 revisions
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 |