Python 2.2 license

John Cowan jcowan at
Mon Nov 19 16:16:43 UTC 2001

I now think that Python 2.2 is GPL-compatible, based on a close
reading of its terms.  In particular, I think that only the
first eight numbered paragraphs (the Python 2.2 license proper)
are actually operative.  The others are "dead code", so to
speak, which must be carried along with the license but are
of no legal effect.  (IANAL, TINLA, YADA, YADA)

Why do I believe this?

None of the 2.0, 1.6.1, or 1.2 licenses are "viral"; they apply
only to the specified version of Python in source or binary form.
They do not prevent derivative works from being created that have
different licensing terms.  (BSD-ish licenses are like that.)
In the creation of Python 2.2, I believe that this has been done,
and the relevant new license is the eight paragraphs mentioned above.

So confining our analysis to the eight paragraphs only, and dismissing
all the stuff about California and Virginia law, we wind up with
a BSD license with one extra clause:

3. In the event Licensee prepares a derivative work that is based on
or incorporates Python 2.2 or any part thereof, and wants to make
the derivative work available to others as provided herein, then
Licensee hereby agrees to include in any such work a brief summary of
the changes made to Python 2.2.

As a purely documentation requirement, this does not impose
additional burdens incompatible with the GPL.

As is well known, I think the "otherwise using" part of clause 8
is mere flatus vocis: using software you lawfully own can't impose
any contract requirement on you.

Not to perambulate             || John Cowan <jcowan at>
    the corridors               ||
during the hours of repose     ||
    in the boots of ascension.  \\ Sign in Austrian ski-resort hotel

license-discuss archive is at

More information about the License-discuss mailing list