Re: Artistic and LGPL compatibility in jar files
In message <[🔎] firstname.lastname@example.org>,
Alexander Cherepanov <email@example.com> writes
On Sat, 19 Dec 2009 11:03:45 +0000, "Anthony W. Youngman"
Or if they receive an UNALTERED copy from you! Because if you change the
licence (which you're not allowed to do) it's not an unaltered copy :-)
Please don't not mix licenses and license grants:-)
Let's consider it in more details: suppose I distribute your source
code non-altered or non-creatively altered (so I don't have any
copyright in this work) with GPLv3 attached and all references to
other licenses (whether GPLv2 or BSD) stripped. AFAICS it's clearly
permitted under clauses 4 and/or 5 of GPLv3.
In which case, you HAVE altered my work. You've removed part of it,
namely the licence grant.
Not necessarily but for simplicity let's consider the case when yes, I
have altered you work.
Oh - and that probably is a very definite copyright violation :-)
Please provide relevant quotes.
I didn't grant you a licence to do that,
Sure you did, it's called GPLv3.
In that case, seeing as you're taking "the work" to INCLUDE the licence
No, that's you who said that the work includes the license grant --
see above, underlined.
I assume "the work" also includes the licence?
In which case I've
just given you permission to alter the GPL :-) Which I *haven't* because
I granted you a licence to alter the program :-)
You take the position that the program != the work? I'm suprised.
No. I'm taking the position that the licence *grant*, like the licence
*itself*, is OUTSIDE of the work. I don't actually see how it can,
legally, be part of the work itself, seeing as it's granting permissions
to the work.
Ah, so you changed your position. Well, it doesn't matter whether the
license grant is part of the work or not. If it is, it can be modified
according to GPL. If it is not, GPL doesn't require to distribute it.
Let's assume the GPL doesn't require it to be distributed.
So you distribute a copy of my code, and a copy of the GPL. What right
does your recipient have to distribute my code? They have two separate
works, the GPL and my code, and NOTHING to link the two.
So they can't distribute my code, because they have nothing that says
they can. They have nothing that says the GPL that you gave them applies
to the code (mine) that you gave them.
And as someone else in this thread said, if they get one copy via one
route that is GPL, and another via another route that is BSD, they think
they can apply either licence to either copy. This is a very vague area.
The copyright covers works, not copies. Accordingly GPL applies to
works, not copies. So it doesn't metter which copy to use while it's
the same work.
But the GPL (or BSD or whatever) ONLY applies if, separate from BOTH the
work, AND the licence, you have a document that tells you that the
licence applies to the work.
Even if so, this only requires that you need two copies of such
documents, not two copies of the work.
But as far as I am concerned, legal niceties aside, if I dual-licence my
work (such as, let's say, making it GPL v2+), if you strip off the v2
and change it to v3+ you are misrepresenting me to my users,
I don't misrepresent you, I don't represent you at all. I just pass
your work under GPLv3 and don't imply that you have licensed it under
GPLv3 only in the first place.
Well, you MUST use GPLv3, or GPLv2, or GPL-whatever, to pass the work
If your argument is correct, as I have said repeatedly, the mere act
of passing on a v2+ work (*completely* *unaltered*) would, before v3
came out, have stripped the "plus" permission because it would have been
distributed under v2.
That's unreleated question. Whether it's possible to modify license
grant doesn't matter when it's not modified.
and you are stripping my users of the rights I granted them. Doesn't
the GPL 2 itself say "you mustn't impose further restrictions"?
Sure. And requirement to pass arbitrary license grants from original
author is exactly further restriction. So you cannot require it (if
you want your program to be distributable).
But that is a requirement *I* am imposing on *you* (which, as copyright
holder, I can do). Licence requirements NEVER apply to the copyright
holder. So I *can* require it of you.
Sure, that's why I added the part in the parentheses -- see above.
What is removing
the option to use v2, if not an unpermitted "further restriction"?
Then let's see what GPLv2 really says about it. From section 6:
You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
So I cannot impose restrictions outside GPLv2, not outside some
But without the licence grant, the GPLv2 doesn't apply. You seem to be
assuming the licence grant is unimportant.
No grant, no licence!
GPL itself requires to keep intact all notices stating that GPL
applies to the code. So no problem here.
Ah! Keep *intact* *all* notices stating that the GPL applies to the
So you would argue that, for example, changing my statement that "GPLv2+
applies" to "GPL v3 applies" is keeping *all* notices *intact*?
I'd describe that as butchering my notices, actually :-)
You got me on a couple of points, I think I've got you on this one :-)
While this may be a legal grey area, it isn't a grey moral area -
it's just unacceptable.
I fully agree that it's important question. And would like to see some
solid base here. Unfortunately, for now, I only see appeals to judge's
common sense, morality etc.
Actually, as you can see, I'm convinced it's NOT a grey area. The
licence grant tells you that you can use the licence with relation to
the work. Therefore, the three (the licence, the grant and the work) are
Actually I'm also convinced now (more or less) that it's NOT a grey
area. Everybody preserves full license grants for upstream
dual-licensed projects just because it's The Right Thing, not because
it's legally required. And this is a feature, not a bug.
It's quite in line with the section 7 of GPLv3:
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
BTW, Mozilla tri-license boilerplate also explicitly spells it out:
Alternatively, the contents of this file may be used under the terms of
either the GNU General Public License Version 2 or later (the "GPL"), or
the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
in which case the provisions of the GPL or the LGPL are applicable instead
of those above. If you wish to allow use of your version of this file only
under the terms of either the GPL or the LGPL, and not to allow others to
use your version of this file under the terms of the MPL, indicate your
decision by deleting the provisions above and replace them with the notice
and other provisions required by the GPL or the LGPL. If you do not delete
the provisions above, a recipient may use your version of this file under
the terms of any one of the MPL, the GPL or the LGPL.
Notice that this gives you EXPLICIT PERMISSION to edit the licence grant
- permission which is notably lacking from the GPL.
If the GPL says "you have to keep it intact", then that's what it means!
As I said above, dropping the reference to BSD is imho butchering it,
not keeping it intact :-)
The only remaining question is what exactly means to "keep intact all
notices stating that this License [...] apply to the code". If a
notice is like "This program is licensed under BSD or GPL", does GPL
require to keep it really intact or permits to drop "BSD or"?
After all, dropping the reference to the GPL denies the recipient the
opportunity to use the GPL as their licence (because they have no
evidence that the GPL applies), so the GPL clearly doesn't consider that
"keeping the notice intact". So if dropping the GPL isn't keeping the
notice intact, dropping BSD can't be keeping the notice intact, either
:-) (or dropping v2, or the plus, or whatever).
Anthony W. Youngman - firstname.lastname@example.org