Info-ZIP: Difference between revisions
No edit summary |
|||
Line 2: | Line 2: | ||
An [[open source]] project that started in 1990 to create a portable compression/de-compression program that is compatible with [[PKWare]]'s [[PKZip]] program, it was originally based on the Unzip [[DOS]] program created by Samuel H. Smith had created a year earlier but due to licensing restrictions it was soon completely rewritten. Info-Zip consists of two command line application programs ''Zip'' and '''Unzip'' that handle compression and decompression respectively, although the Zip program can decompress as well as compress, in addition the suite contains a few related utility programs. | An [[open source]] project that started in 1990 to create a portable compression/de-compression program that is compatible with [[PKWare]]'s [[PKZip]] program, it was originally based on the Unzip [[DOS]] program created by Samuel H. Smith had created a year earlier but due to licensing restrictions it was soon completely rewritten. Info-Zip consists of two command line application programs ''Zip'' and '''Unzip'' that handle compression and decompression respectively, although the Zip program can decompress as well as compress, in addition the suite contains a few related utility programs. | ||
The Info-Zip code has a fairly liberal [[Info-Zip Licence| | The Info-Zip code has a fairly liberal [[Info-Zip Licence|licence]] which meant code from the project was routinely used in projects that required file compression, archival capabilities or compatibility with the [[ZIP]] file format, however in modern use it is more common to use compression libraries such as the Info-ZIP derivative [[Zlib]] unless the archival features of Info-ZIP are required, since the libraries are more flexible and give much better compression ratios. | ||
However apart from the utility you get from the Info-ZIP Zip and Unzip programs themselves there are cases where it makes sense to use Info-Zip code in your project rather than a library or even use applications themselves and make them a dependency of your program. Some software such as [[Java]] Jars implementation understands the ZIP file format to be strictly ISO/IEC 21320-1:2015 compatible, i.e. they only allow Deflate 0 and 8 and require the file structure to be compatible with the Info-ZIP one, in those cases the more modern compression libraries have no advantage since the better compression ratios are not understood or even allowed by the ISO 21320-1 and similarly with a library you will need to write your own file structure code but all that is already built into Info-ZIP. | |||
On OS/2 you can also get Info-ZIP in the form of a [[REXX]] compatible [[dynamic link library]] which makes coding using it even simpler as long as your language has REXX DLL compatibility as in the case of [[PERL]] or if you write a simple DLL wrapper in your code. | |||
==Known derivatives== | ==Known derivatives== |
Revision as of 12:54, 11 July 2016

An open source project that started in 1990 to create a portable compression/de-compression program that is compatible with PKWare's PKZip program, it was originally based on the Unzip DOS program created by Samuel H. Smith had created a year earlier but due to licensing restrictions it was soon completely rewritten. Info-Zip consists of two command line application programs Zip and 'Unzip that handle compression and decompression respectively, although the Zip program can decompress as well as compress, in addition the suite contains a few related utility programs.
The Info-Zip code has a fairly liberal licence which meant code from the project was routinely used in projects that required file compression, archival capabilities or compatibility with the ZIP file format, however in modern use it is more common to use compression libraries such as the Info-ZIP derivative Zlib unless the archival features of Info-ZIP are required, since the libraries are more flexible and give much better compression ratios.
However apart from the utility you get from the Info-ZIP Zip and Unzip programs themselves there are cases where it makes sense to use Info-Zip code in your project rather than a library or even use applications themselves and make them a dependency of your program. Some software such as Java Jars implementation understands the ZIP file format to be strictly ISO/IEC 21320-1:2015 compatible, i.e. they only allow Deflate 0 and 8 and require the file structure to be compatible with the Info-ZIP one, in those cases the more modern compression libraries have no advantage since the better compression ratios are not understood or even allowed by the ISO 21320-1 and similarly with a library you will need to write your own file structure code but all that is already built into Info-ZIP.
On OS/2 you can also get Info-ZIP in the form of a REXX compatible dynamic link library which makes coding using it even simpler as long as your language has REXX DLL compatibility as in the case of PERL or if you write a simple DLL wrapper in your code.
Known derivatives
Mark Adler and Jean-loup Gailly who were that main authors of the Zip and Unzip programs left the project fairly early on after some disagreements and started the GZip project that was originally based on Info-Zip Code and also stated later the PNG and library versions below:
Links & publications
Articles
Licence
Open source software, current versions were published under the Info-Zip Licence, prior to the release of version 2.3 the project used an ad hoc licence buried inside the readme file.
Authors
- Mark Adler (original Zip author)
- John Bush
- Karl Davis
- Harald Denker
- Jean-Michel Dubois
- Jean-loup Gailly
- Hunter Goatley
- Ed Gordon
- Ian Gorman
- Chris Herborth
- Dirk Haase
- Greg Hartwig
- Robert Heath
- Jonathan Hudson
- Paul Kienitz
- David Kirschbaum
- Johnny Lee
- Onno van der Linden
- Igor Mandrichenko
- Steve P. Miller
- Sergio Monesi
- Keith Owens
- George Petrov
- Greg Roelofs
- Kai-Uwe Rommel (OS/2 specific code)
- Steve Salisbury
- Dave Smith
- Steven M. Schweda
- Christian Spieler
- Cosmin Truta
- Antoine Verheijen
- Paul von Behren
- Rich Wales
- Mike White.