[Ironruby-core] zlib implementation

Eric Nicholson enicholson at gmail.com
Wed Sep 12 21:21:14 EDT 2007


Just to make sure we're all on the same page in terms of zip libraries
(there are at least three you could refer to as "zlib.net"), here's a
summary:

ZLIB - www.zlib.net
The original zlib, used by gzip.  BSD style license.

Component Ace's ZLIB.NET - http://www.componentace.com/zlib_.NET.htm
Port of zlib to 100% managed .NET. BSD style license (
http://www.componentace.com/data/ZLIB_.NET/license.txt)

SharpDevelop's SharpZipLib -
http://www.icsharpcode.net/OpenSource/SharpZipLib/
"*Zip, GZip, Tar and BZip2 library* written entirely in C#". GPL License
with an exception

System.IO.Compression -
http://msdn2.microsoft.com/en-us/library/system.io.compression.aspx
"Provides basic compression and decompression services for streams." it's
already in the framework

Feel free to add to the list...

It's hard to tell which one is the most likely to be compatible with Ruby's
ZLIB.  If non-managed dependency is acceptable, real ZLIB is decent choice.
If you want managed, then the Component ACE ZLIB.NET would be a reasonable
approach.

-Eric

On 9/12/07, M. David Peterson <m.david at xmlhacker.com> wrote:
>
> On Wed, 12 Sep 2007 18:02:56 -0600, John Lam (CLR) <jflam at microsoft.com>
> wrote:
>
> > I think we'll wind up redistributing the compiled binary of zlib.net
> > with IronRuby with a multiple license agreement. We need to run this
> > past the lawyers, but I'm pretty confident that shipping a BSD licensed
> > component alongside of our MsPL code should be OK. Worst case we get
> > someone in the community a'la Curt Hibbs to help us package this stuff
> > up J
>
> @ http://www.icsharpcode.net/OpenSource/SharpZipLib/
>
> #ziplib (SharpZipLib, formerly NZipLib) is a Zip, GZip, Tar and BZip2
> library written entirely in C# for the .NET platform. It is implemented as
> an assembly (installable in the GAC), and thus can easily be incorporated
> into other projects (in any .NET language). The creator of #ziplib put it
> this way: "I've ported the zip library over to C# because I needed
> gzip/zip compression and I didn't want to use libzip.dll or something like
> this. I want all in pure C#."
> License
>
> The library is released under the GPL with the following exception:
>
> Linking this library statically or dynamically with other modules is
> making a combined work based on this library. Thus, the terms and
> conditions of the GNU General Public License cover the whole combination.
>
> As a special exception, the copyright holders of this library give you
> permission to link this library with independent modules to produce an
> executable, regardless of the license terms of these independent modules,
> and to copy and distribute the resulting executable under terms of your
> choice, provided that you also meet, for each linked independent module,
> the terms and conditions of the license of that module. An independent
> module is a module which is not derived from or based on this library. If
> you modify this library, you may extend this exception to your version of
> the library, but you are not obligated to do so. If you do not wish to do
> so, delete this exception statement from your version.
>
> Note The exception is changed to reflect the latest GNU Classpath
> exception. Older versions of #ziplib did have another exception, but the
> new one is clearer and it doesn't break compatibility with the old one.
>
> Bottom line In plain English this means you can use this library in
> commercial closed-source applications.
>
> --
> /M:D
>
> M. David Peterson
> http://mdavid.name | http://www.oreillynet.com/pub/au/2354 |
> http://dev.aol.com/blog/3155
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/ironruby-core/attachments/20070912/76800731/attachment.html 


More information about the Ironruby-core mailing list