[Xapian-devel] Xapian license change
Wichert Akkerman
wichert at wiggy.net
Thu May 17 09:04:18 BST 2012
Hi Olly,
there is a lot of information in your email that I was not able to find
anywhere else. Perhaps it would be useful to create a relicensing-FAQ
page on the wiki with this information?
On 05/17/2012 04:07 AM, Olly Betts wrote:
> What's best to work on depends on what your skills and interests are.
> If anyone is seriously interested in contributing in this way, it
> probably makes most sense to simply discuss what's best for you to
> work on, either here, or on IRC.
I don't know exactly how much time I can contribute and I certainly will
not claim to be an expert on the underlying technology, but I am
interested and willing to help.
>> As far as I can see several things would need to happen:
>>
>> * a new license (or set of licenses) will need to be chosen
>> * current copyright holders will need to sign off on the relicensing
>> * dependencies on GPLed libraries (think getopt) will need to replaced
> Actually, GNU getopt is LGPL v2 or later (or at least so says the
> licensing boilerplate on the version we're using).
That helps. There was a wiki page which explicitly mentioned wanting to
replace getopt with something like popt for licensing reasons, which is
why I mentioned it.
>> Looking at older posts and the xapian website it seems that LGPL has
>> been suggested as an alternative license, but I can not find a clear
>> decision.
> I don't think we have a totally firm decision currently, but it is
> likely we'd go for either LGPL v2+ or MIT/X (with the latter probably
> being the favourite). We currently ask for patches to be dual-licensed
> under GPL v2+ and MIT/X, as the latter should give us compatibility with
> any Free Software licence:
>
> http://trac.xapian.org/browser/trunk/xapian-core/HACKING#L1228
Looking at commit logs that means everything since November 13 2009 is
already dual licensed.
>> Judging by the copyright statements in the sources (for xapian-core)
>> there are 18 copyright holders, which is a manageable list:
> Some of these are on code which is already under a liberal licence,
> so aren't a concern here. Most of the rest have already agreed.
>
>> Does anyone have any idea how willing these copyright holders might be
>> to approve relicensing?
> The ones we don't have agreement from are:
>
> * BrightStation PLC - it's not even clear who actually holds this
> copyright now, and we've heard competing claims. I discussed a
> potential LGPL relicensing with one claimant, but it went nowhere
> useful. This is where the code Xapian has evolved from was
> originally developed, so the oldest code (1999-2001) has this
> copyright, and over time it has been gradually replaced, but there
> is still a significant amount left.
>
> * Ananova Ltd - Another old copyright (from 2001-2002). I tried
> talking to them about relicensing some years ago, but their lawyers
> seemed more interested in trying to get me to retroactively sign an
> employment contract which I'd refused to sign at the time due to an
> unreasonable "no compete" clause.
>
> * Orange PCS Ltd - From 2003 and only affects one file, which is also
> (C) BrightStation and Ananova. Orange bought Ananova, so it's
> unlikely we'd get this relicensed either, but it doesn't really
> matter as we'd need to replace this file anyway.
Do you have a list of the code still owned by those three, so that can
be turned into a TODO list? A quick grep shows 100 files with a
BrightStation PLC copyright but nothing more recent than 2001, which
suggests that a lot of that code has already been replaced over time.
> There are some issues we haven't yet really reached a conclusion on that
> I can recall.
>
> * If we go for MIT/X, are we happy to have LGPL dependencies? This
> came up in the context of some of the GSoC proposals this year, as
> some of the machine learning libraries we might want to use are
> LGPL.
Are those dependencies required or optional? If the intention is to
allow give people using Xapian all the freedoms the MIT/X license
provides over LGPL than requiring on LGPL dependencies is not desirable
since those will still pull in the extra restrictions. If the extra
dependencies are optional (for example a user may not be interested
extra ML features) users can pick and choose.
> * If LGPL dependencies are OK, what about bundled LGPL code (like
> GNU getopt)?
I don't think bundling or not makes any difference. Shipping code under
multiple licenses in a single deliverable is quite common. You just need
to be careful in marking which license(s) apply everywhere.
> * Exactly what are we aiming to relicense?
>
> + xapian-core: We clearly want to have libxapian.so relicensed, but
> the tools probably matter less, and the testsuite could easily
> just remain GPL.
>
> + xapian-bindings: Since I rewrote most of the SWIG interface file
> to directly parse the C++ headers, there isn't actually a lot of
> the older code left here, but there is still some. It would be
> good to sort out the PHP bindings in particular, so they can be
> packaged again (currently GPL and PHP licences are apparently
> incompatible due to the rather pointless naming restriction the
> PHP licence imposes).
>
> + xapian-omega: This can probably remain GPL. I don't think it's
> a top priority anyway.
>
> + xapian-letor: New code, so easy to relicense.
>
> There's also an argument for consistent licensing, as that's much
> easier to understand and to explain to users.
Does that mean your proposal is to relicense everything except the
xapian-core testsuite and xapian-omega?
Regards,
WIchert.
More information about the Xapian-devel
mailing list