hi,
I'm resuming part of the c.l.py thread on Scientific libraries on
Python over here. Sorry about the cross posting and off topic nature
of the post.
MayaVi (http://mayavi.sf.net) is currently distributed under the GPL.
I wrote mayavi for the community and intend that it stays that way.
Although the GPL tries to ensure that software remain free, its a
little too restrictive at times.
SciPy is distributed under a BSD like(?) license. That may be fine
for SciPy but I think the BSD license is too non-restrictive. I would
very much like that all future enhancements to MayaVi stay free. If
some company decides to put 5 folks on MayaVi and make it much nicer,
I'd *like* that the new version remain free.
However, forcing the person who links to or uses MayaVi as an
application or even component to also release their software under the
GPL is a little too restrictive. It also prevents the scipy folks
from possibly bundling mayavi along with their package even though
their code is "free". IIRC, several folks on c.l.py expressed their
desire that mayavi (and other things) should be bundled along with
scipy.
One possiblity suggested by Travis Oliphant was to release mayavi
under the LGPL. This makes MayaVi itself distributed under a more
restrictive license and yet allows SciPy to bundle it with their code.
However, I still dont really understand the LGPL license. What does
it allow and what doesn't it allow? Specifically I have a few
questions.
(1) Can someone subclass a MayaVi class and distribute the new code
and yet keep the source closed? Is it worth protecting mayavi from
such attempts?
(2) What does the LGPL protect actually? What type of changes are
allowed and what are not?
(3) What are the advantages/disadvantages of LGPL versus the
GPL/BSD. Is there anything to worry about?
Thanks,
prabhu