libpng license 2.0

Cosmin Truta <[email protected]> Mon, 3 Sep 2018 16:19:12 -0400
Newsgroups gmane.comp.graphics.png.devel
Message-ID <CAAoVtZxmEtyf37JYhsjdxY4PjdCXfGRSB6g7PTORY0xx_cBL8w@mail.gmail.com>
Hello, everyone,

For the future releases of libpng, I would like to introduce the
libpng license 2.0 (i.e. the "PNG Reference Library License 2.0").

My plan is to release the upcoming libpng-1.6.36 under this new
license. What do you think?

See my proposed drafts here:

LICENSE.md
AUTHORS.md
https://gist.github.com/ctruta/5e276eb83213f9d66bf61539156830c5


== WHY libpng license 2.0 ==

Unlike other software licenses that change rarely or not at all, the
libpng license has been constantly changing with the published libpng
version. I would like to follow what the rest of the open-source
software world is doing, and have the libpng license frozen also.

Upon taking over from Glenn, I had a dilemma: should I just add in
my own copyright notice, and add any future acknowledged contributor
to the list of Contributing Authors in the existing paragraphs? Or,
rather, should I add an entire paragraph with my own copyright notice,
and another mentioning the Contributing Authors associated with my
own copyright notice, etc.? I found disadvantages in both choices.

There are precedents of publishing new licenses while keeping the old
terms and conditions. See, for example, the Python license, in which
the license agreement for version 2/3/etc. incorporates the old "CNRI
License Agreement for Python 1.6.1", and the even older "CWI License
Agreement for Python 0.9.0 through 1.2".


== WHAT IS libpng license 2.0 ==

The libpng license 2.0 is the terms and conditions from the zlib
license, plus the disclaimer from the Boost license.

The list of Contributing Authors is flattened into a separate AUTHORS
file, as in many other prominent open-source software projects.

The legacy libpng license, all the way to 1.6.35, is also included.
I will keep the Contributing Authors lists intact, as they are
arguably part of the old license. I won't change those lists because
that would mean changing the old license, and I am not sure about
the consequences of doing so.


== WHY zlib license for terms and conditions ==

The present-day zlib and libpng licenses are similar in spirit, but
not identical in letter. They are often referred to, collectively
(but incorrectly) as "the zlib/libpng license".

I would like to make the new license as close to the zlib license as
possible, with two small clarifications. Here goes:

> Permission is hereby granted to use, copy, modify, and distribute
> this software, or portions hereof, for any purpose, without fee,
> subject to the following restrictions:
>
>  1. The origin of this software must not be misrepresented; you
>     must not claim that you wrote the original software.  If you
>     use this software in a product, an acknowledgment in the product
>     documentation would be appreciated, but is not required.
>
>  2. Altered source versions must be plainly marked as such, and must
>     not be misrepresented as being the original software.
>
>  3. This Copyright notice may not be removed or altered from any
>     source or altered source distribution.

See https://opensource.org/licenses/Zlib


== WHY Boost license for disclaimer ==

Years ago, I had proposed adopting the zlib license, verbatim, for
libpng, but Glenn did not agree. He did not like zlib's disclaimer,
because of UCITA.

UCITA may have failed to become a Uniform Act in the U.S., but it is
still in effect in two states, Virginia and Maryland. (Maryland is
Glenn's state.)

This is about disclaiming explicitly the warranty of non-infringement.

Logically, the zlib license disclaimer sounds perfectly fine to me.
To me (caution: IANAL), "no express or implied warranties" literally
means "no express or implied warranties". Or, let's make it simpler,
"no warranties" means literally "no warranties". There should be no
need to be explicit about the warranties of non-infringement (or
fitness for a purpose, or merchantability, etc. etc. etc.)

But UCITA claims otherwise, and Glenn was concerned about that.

Given where I live, none of that bothers me. However, in deference
to Glenn, and to not jeopardize (in Glenn's opinion) anybody who
hacks libpng in a jurisdiction where UCITA is in effect, I looked
over the various disclaimers in other licenses, and eventually
decided on the disclaimer from the Boost license.

Here goes:

> The software is supplied "as is", without warranty of any kind,
> express or implied, including, without limitation, the warranties
> of merchantability, fitness for a particular purpose, title, and
> non-infringement.  In no even shall the Copyright owners, or
> anyone distributing the software, be liable for any damages or
> other liability, whether in contract, tort or otherwise, arising
> from, out of, or in connection with the software, or the use or
> other dealings in the software, even if advised of the possibility
> of such damage.

For the people familiar with the MIT license: this is like the MIT
license disclaimer, but has an extra warranty disclaimer (that of
"title"), and explicitly protects not only "the Copyright owners",
but also "anyone distributing the software".


Sincerely,
Cosmin

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot