inline

On Tue, Sep 21, 2010 at 5:03 PM, Frans Bouma <[email protected]> wrote:

>        The key is 'derivate work'. Altering a dialect class and change 2
> lines and enclose that dialect class in your own 1000 classes big project
> doesn't make that 1000 classes big project a derivative work and doesn't
> force it to inherit the license.
>
>
I would agree that MyCustomDialect :
NHibernate.Dialects.MSSqlServer2005Dialect probably falls under the LGPL.
For that matter, if you distribute that class in the same assembly as other
stuff, you probably need to release the whole LGPL.
However, there is a very simple solution if you did that and you only caught
it after the release. You can extract that class to a separate assembly, put
THAT asm under the LGPL, and the rest of your code is unaffected.



>        So if they binary link to NHibernate, or modify code in it, you've
> to provide the changes made.
>

The problem isn't so much modifying NH. The problem is all the extension
points.


>
>        LGPLv3 doesn't change that at all. GPL3 (and thus LGPL3) adds:
> - a more strict set of rules what 'linking' implies. Everyone except the
> people inside FSF understand how stupid this rule is but instead of
> realizing that for example a dynamically loaded dll which interface is
> dynamically discovered at runtime does NOT mean 'linking', they continue on
> that path and add a bigger set of rules to formulate what 'linking' means.
> (if I recall correctly, they now also include a clause about webservices...
> :/)
>

The web services part is for the AGPL, not the GPL or LGPL, IIRC.
There are explicit ways to break the links, anything that is out of process
(cmd line, pipes, etc).


>        That's the rule of thumb. The conditions apply if your work is a
> 'derivative work' of the GPL-ed piece of code. So using a GPL-ed ASP.NET
> control in your website with 15000 pages isn't making that website a
> derivate work, however this is fuzzy: every judge can decide differently.
> This is also the reason why some companies find the GPL 'viral' and
> 'wrong'.
>

Actually, that scenario is safe. You aren't distributing your changes.


>        Does using a LGPL-ed piece of code protect you from GPL influences?
> That's unclear. An example of that is the MySQL ADO.NET provider. It's
> licensed under GPL3. If I use NHibernate in a commercial application,
> targeting MySQL, using the GPL-ed MySQL ado.net provider and distribute
> that
> application, what's going to happen? Is my application a derivative work of
> the MySQL application? A sane person would say: "no". Well, ask MySQL, and
> they'll tell you differently.


IIRC, the MySQL stance is that if you can use the app with more than 1 db,
it doesn't apply.
But with NH (or any modern ORM), I would switch the DB rather than have the
argument.


> Who's right? That's unclear, and I think also
> the reason why you got the question, however what's odd is that they asked
> about LGPL-3, which IMHO doesn't protect you from nonsense like the example
> I gave above.
>
>        Sadly, asking a lawyer isn't really going to help, as lawyers too
> have different opinions about this.
>
>                FB
>
>
> >
> > Steve Bohlen
> > [email protected]
> > http://blog.unhandled-exceptions.com
> > http://twitter.com/sbohlen
> >
> >
> >
> > On Tue, Sep 21, 2010 at 10:24 AM, Frans Bouma <[email protected]> wrote:
> >
> >
> >       To my knowledge you can't re-license code you don't own the
> copyright
> > of.
> >       Not sure if this is a problem, but I could imagine that code which
> is
> > ported
> >       from Java has to inherit the same license.
> >
> >       Also, IMHO GPL 3 protects better against patent trolls (and as you
> > might
> >       know, RH settled with Firestar over a lawsuit filed by Firestar
> over
> > a
> >       patent violation by Hibernate) but it's a very complicated license,
> > and the
> >       language in it is so obscure that everyone can distillate her/his
> own
> >       opinion from it how it should be applied.
> >
> >       Be aware that re-licensing code will affect everyone using it.
> >
> >       What I don't understand is that they're concerned about what to
> > provide for
> >       reverse engineering but at the same time they're developing a GPL
> v3
> >       application? Isn't that odd, considering that a GPL-ed application
> > already
> >       implies you should provide all code? I.o.w.: aren't they concerned
> > about
> >       something else, i.e.: the dual license they likely want to apply,
> > namely a
> >       commercial license as well?
> >
> >              FB
> >
> >
> >       > 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]
> >       > http://blog.unhandled-exceptions.com
> >       > http://twitter.com/sbohlen
> >
> >
> >
> >
>
>
>

Reply via email to