Subject: Re: graphics/gd
To: None <mcmahill@mtl.mit.edu>
From: Alistair G. Crooks <agc@ftp.netbsd.org>
List: tech-pkg
Date: 08/27/1999 01:36:57
*** Individual's views on the validity of software patents are moot. ***

> I updated my copy of the graphics/gd package from 1.3p1 to 1.6.3 but
> noticed several issues which stopped me from committing the update.
> 
> The problem is that old (including 1.3) versions of gd generate GIF files.
> However due do concerns over the copyright issues around the compression
> used in GIF, new (1.6.3) versions of gd do not support GIF's at all but do
> PNG instead.  Here is the blurb from some of the gd documentation:

It has nothing to do with copyright, but everything to do with
patents.  However, as a precaution, and, as I just noticed PR 7969
pointing out the situation yesterday - so I'm behind on things,
OK? - I upgraded the package to the latest version straight away.

>      _HEY! READ THIS!_ gd 1.6.3 creates PNG images, not GIF images. This
>      is a good thing. PNG is a more compact format, and full compression
>      is available. Existing code will need modification to call
>      gdImagePng instead of gdImageGif. _Please do not ask us to send you
>      the old GIF version of GD._ Unisys holds a patent on the LZW
>      compression algorithm, which is used in fully compressed GIF
>      images. We are still investigating the legal issues surrounding
>      various alternative means of producing a valid GIF file.
> 
> so the problem is then that we have 4 other packages that depend on gd:
> 
> net/mrtg  -- could probably be updated to generate PNG's instead of GIF's
> 
> www/webalizer  -- specifically says to use gd-1.3, no newer, on its web
>                  page
> 
> www/php3-gd  -- haven't looked into this one yet
> 
> graphics/fly -- can be easily updated to produce PNG's intead of GIF's,
>                 however depending on what other scripts people have
>                 written that use fly, they may need updating as well.
> 
> 
> so, I see a couple options:
> 
> 1)  move the existing gd-1.3p1 package to graphics/gd13, have it install
>     its components with unique names, and point the other programs which 
>     depend on gd to gd13.  Then make a new package graphics/gd which is
>     the more up to date version.
> 
>     I'm not sure if there are any copyright issues for us if we continue
>     to distribute gd-1.3 with its compressed GIF producing code.
> 
> 2)  try and update the other packages and replace all GIF usage with PNG
>     usage.  I'm not sure when I could get this done especially since I
>     don't use the other packages that depend on gd.
> 
> 3)  leave the existing stuff alone and make a graphics/gd-png package
>     which goes forward with new releases of gd.  There is still the issue
>     of making sure there are no name clashes with the old gd or make a
>     CONFLICTS entry.
> 
> I'm not crazy about any of these.

I too am unsure of (1), and, as always with these things, will err
on the side of caution. (3) is not really viable, which leaves only
(2).

I also believe that (2) is the right way to go - if authors of
software which depends on gd are unwilling to update their software
to handle png, and as the popular web browsers are also capable
nowadays of rendering png graphics, I see no excuse. Just as we
have had to upgrade to png (and this is a positive step in the
right direction), so will everybody else in the open source movement
have to make the same transition.

Regards,
Alistair

PS. *** Individual's views on the validity of software patents are moot. ***
[Just in case you missed it the first time round]