[TIP] does licensing of test tools matter?

Jesse Noller jnoller at gmail.com
Wed Aug 5 06:36:16 PDT 2009


On Wed, Aug 5, 2009 at 3:31 AM, holger krekel<holger at merlinux.eu> wrote:
> Hi TIP,
>
> i was wondering the other day - is licensing of test libs and
> tools and issue for anyone here?
>
> As noted elsewhere i am considering using (L)GPL style
> licenses instead of the current MIT license possibly for
> future py.test releases so i am interested in opinions from
> testing people in particular and trust no flame wars arise :)
>
> best & thanks,
> holger
>
> --
> Metaprogramming, Python, Testing: http://tetamap.wordpress.com
> Python, PyPy, pytest contracting: http://merlinux.eu

Simply put; Yes. It Matters.

Sure, if I only *consume* your tool, as a 3rd party - meaning, I only
use it to run something which does not import your libraries or code,
everything is fine. I'll never depend on your code, or ship something
which does as I don't feel like triggering other things within the
GPL.

The second I import your code is when things go south. The LGPL allows
for linking which is what a python import "is"[1], which is fine -
however the GPL's relationship with python imports is unclear (and
anyone who tells you otherwise is a full of baloney). If I import, is
that linking only? What happens if I call APIs (allowed for in the
LGPL) - but what happens if at runtime I monkey-patch some of the
LGPL'ed code?

So; sure - LGPL for tools might be OK - but then ask yourself - does
the LGPL really matter if what you want is to force anyone - or any
company - to have to push any modifications, additions, etc to the
public. If you want to do that, then skip the LGPL, and go with the
GPL. However, in doing so, you prevent anyone who is allergic (myself
included) from touching your tool and code.

Personally - and this is personal opinion only - part of what has been
such a driving force for me to use python is the liberal licensing of
so much of the code - from the PSF license to 90% of the libraries
within the community allow me a great deal of freedom as a developer.
The attitude and license is one of "do as you will, but don't be a
jerk - we're all consenting adults" - I value this more than anything
the GPL has to offer.

Having a more liberal license does not forgo you, as a developer, the
possibility of making consulting gigs or money off of your libraries
and tools. The best example is that of Curl/libcurl - afaik, Daniel
(the author) makes a living off of that tools and library, and I know
of several companies which have paid him directly for changes to be
made, custom forks, etc.

Personally; I have (and possibly will never) submit patches or make
modifications to (L)GPL'ed source code unless I find myself completely
unable to avoid it. I do not want to run the risk of needing to
relicense consumer code at my job(s) or personal projects. I will not
import GPLed code - and if I need to use it, I'll put it in a
subprocess pipe and screen-scrape the output.

jesse



More information about the testing-in-python mailing list