I'm not a NH team member, but I've licensed a lot of code under xGPL myself. 
Here's what we did:

// The re-motion Core Framework is free software; you can redistribute it
// and/or modify it under the terms of the GNU Lesser General Public License
// as published by the Free Software Foundation; either version 2.1 of the
// License, or (at your option) any later version.

That works, but since no single person owns the copyright for NH, a license 
change would be some work to administrate.
NH has no license headers, just a reference to LGPL (without version) and the 
lgpl.txt file which contains v2.1. So it's not entirely clear that you cannot 
us it under LGPLv3.

First, LGPLv2.1 is compatible to GPL2 and 3. LGPLv3 is a better fit, since it's 
just an extension to the text of GPLv3, but that does not make v2.1 
incompatible. See the compatibility matrix in 
http://www.gnu.org/licenses/gpl-faq.html

The license language can cause you some gray hair if you try to interpret every 
single word and not just rely on the FSF's interpretation. The FSF helps with 
advice, but they usually don't give word-by-word explanations for their 
interpretations, so you're on your own here. That said, everyone agrees that 
the LGPL on a library does not give you rights to modify the program that links 
it.

What's the scenario where this would be challenged in court? The NH community 
turning against you, or a single contributor? Making a case in a court of law, 
telling it that their interpretation differs so much from everyone else's, 
including the license authors? What for?

The real problem is that lawyers like to dissect OSS licenses, for some reason 
unknown. If they read EULAs with the same scrutiny and made real risk 
assessments, they'd never again let you buy a commercial product.

BTW, even if the FSF's interpretation does not hold in court, the worst thing 
that can happen is you lose rights to use the library. Some people might tell 
you that all your work automatically becomes LGPL, but that's nonsense.

Cheers,
Stefan


From: [email protected] 
[mailto:[email protected]] On Behalf Of Stephen Bohlen
Sent: Tuesday, September 21, 2010 3:57 PM
To: nhibernate-development
Subject: [nhibernate-development] LGPL v3 for NH3 (?)

All:

I'm sure licensing choice for NH is a pretty uninteresting topic <g>, but I've 
been approached by a potential NH adopter asking if we would ever consider 
moving from LGPLv2.1 to LGPLv3 as part of the NH3 release cycle.

As I understand it, the (general) motivator behind creating the LGPLv3 was to 
provide an LGPL license version that is more compatible with GPLv3-licensed 
code (e.g., if LGPLv2.1 code is linked into GPLv3 code, there are apparently 
some potentially contradictory clauses between the LGPLv2.1 and the GPLv3 that 
would make such a release legally conflicted).

The user has pointed out that their legal department has expressed specific 
concern re: the following text in section 6 of LGPLv2.1:
"(...) you may also combine or link a 'work that uses the Library' with the 
Library to produce a work containing portions of the Library, and distribute 
that work under terms of your choice, provided that the terms permit 
modification of the work for the customer's own use and reverse engineering for 
debugging such modifications."

They have expressed some concern re: the potential ambiguity of the scope of 
what must be made available for reverse-engineering under this clause, fearing 
that it might be interpreted as including their own (presumably commercial) 
solution.  They have also noted that this ambiguity appears to have been 
acknowledged by the LGPL authors as the related phrase has been modified in 
LGPLv3 to read:

"You may convey a Combined Work under terms of your choice that, taken 
together, effectively do not restrict modification of the portions of the 
Library contained in the Combined Work and reverse engineering for debugging 
such modifications (...)".

I am neither a lawyer nor do I desire to become one so I cannot really offer an 
opinion re: whether one of these clauses is more or less clear than the other 
in any meaningful way.  But I am wondering if anyone can proffer a compelling 
reason for us NOT to move to LGPLv3 as part of the NH3 release so that it can 
be more easily used in concert with GPLv3-based proejcts.
What are people's opinions on this?

Steve Bohlen
[email protected]<mailto:[email protected]>
http://blog.unhandled-exceptions.com
http://twitter.com/sbohlen

Reply via email to