GPL v3 and Ruby License

I was using abbreviations here, in a license, it would be something like:

You are free to modify, copy and/or redistribute this software under
the GNU General Public License 2, or any later version of this
license.

···

On 4/5/06, Bob Gustafson <bobgus@rcn.com> wrote:

I think you agree that the 'v2 or later' is not particularly a good
thing, although you say 'GPL' without specifying a version.

Gregory Seidman <gsslist+ruby@anthropohedron.net> writes:

} a) Resist it by removing any "any later version" clauses from our
} license agreements which use the license of ruby
}
} b) Embrace it and re-release code using GPLv3 and Matz's terms, but
} make sure the FSF hears the voice of our community beforehand.
}
} c) Can it entirely and favor an established license such as the BSD license.
}
} d) Draft up our own license, possibly with cartoon foxes.

You forgot one:

e) Ignore it, continue to release under v2 with the clause that allows
   others to choose to license it under v3, and not include any non-v2
   patches/code.

+1, thanks for your pragmatism.

···

--Greg

--
Christian Neukirchen <chneukirchen@gmail.com> http://chneukirchen.org

Oh... cool. Now we just have libraries and things like that to be
concerned with, but that's an individual developers decision. Thanks
matz.

I wonder if it might be smart to explicitly note GPLv2?

···

On 4/6/06, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

Hi,

In message "Re: GPL v3 and Ruby License." > on Thu, 6 Apr 2006 02:03:34 +0900, "Gregory Brown" <gregory.t.brown@gmail.com> writes:

>Meaning... when GPLv3 comes out, do we.
>
>a) Resist it by removing any "any later version" clauses from our
>license agreements which use the license of ruby
>
>b) Embrace it and re-release code using GPLv3 and Matz's terms, but
>make sure the FSF hears the voice of our community beforehand.
>
>c) Can it entirely and favor an established license such as the BSD license.
>
>d) Draft up our own license, possibly with cartoon foxes.

For your information, at the beginning of Ruby's license, we see:

  Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
  You can redistribute it and/or modify it under either the terms of the GPL
  (see the file GPL), or the conditions below:

and the file GPL contains GPLv2, so you have no option to choose GPLv3
automatically even when it comes out. Even though I have no objection
to GPLv3 unlike Linus right now, still we don't have any problem with
our current licensing. So I'd wait for few more years after the final
release to settle things down, then if we find no problem, I would
replace the GPL file to GPLv3.

Yukihiro Matsumoto wrote:

For your information, at the beginning of Ruby's license, we see:

  Ruby is copyrighted free software by Yukihiro Matsumoto
<matz@netlab.jp>.
  You can redistribute it and/or modify it under either the terms of the
GPL
  (see the file GPL), or the conditions below:

and the file GPL contains GPLv2, so you have no option to choose GPLv3
automatically even when it comes out. Even though I have no objection
to GPLv3 unlike Linus right now, still we don't have any problem with
our current licensing. So I'd wait for few more years after the final
release to settle things down, then if we find no problem, I would
replace the GPL file to GPLv3.

Be careful what you assume about the GPL. Consider clause 9 of
the GPL file included with current Ruby:

  9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

In other words, because the current Ruby distribution does not
explicitly
restrict itself to a specific version of the GPL, anyone can re-release
or re-distribute current Ruby entirely under any published version of
the
GPL, including GPLv3 (when it comes out).

cheers,
andrew

···

--
Posted via http://www.ruby-forum.com/\.

[...]

Stronger is not necessarily better, of course. Stronger also can be
seen as 'more restrictive' by some. However, I do believe that
copyleft is not coercion because you cannot coerce someone through
licensing terms.

That's a common misconception. One *can* coerce through licensing
terms. If the choice is "my way or the highway", where the highway is
extremely difficult, it's coercion. A lot of Libertarians I know
would disagree me on this point, but they're also of the opinion that
coercion can only come from physical force. The verb "coerce",
however, is defined as: "To cause to do through pressure or
necessity, by physical, moral or intellectual means". A licence can
be coercion.

I'm an anarcho-capitalist. I guess that puts me in the dissenting
group on things like that. I believe that strong contracts that are
freely entered into can be upheld and can be used to support various
political and ethical goals.

[...]

In theory, this stance is great. In practice, do you read *every*
licence you come across? Click-acceptance is legal these days, you know,
so there *might* be a licence clause that requires you to give your
firstborn the name "Myron Fiddlebrick", and you might have agreed to
such without having read it.

I'm one of those odd folks who *does* read all of the fine print (on
contracts that I sign; I generally ignore the licence details on
software because it isn't clear how enforceable it is and I prefer the
stated intent of the licence, e.g., "like a book", etc.), and I'll
challenge sections that I don't like. If it matters enough to me, I
won't do business with the person who puts out that sort of licence or
contracts.

Coercion can happen in many forms, and libreadline is a perfect example
of coercion. (Of course, I would argue that there are times when such
coercion is important and useful, such as when NeXT implemented an
Objective-C frontend for GCC and was forced to release its source.)

I don't really have an issue with a copyleft licence: if you want to
restrict how your code can be given out (e.g., like the CC ShareAlike
licence provision), then that's your choice. The problem I have with the
GNU GPL is the deception that goes on around it and the "moral"
boundaries it sets up around its restrictions. I also think, as I've
said, that the GPLv3 goes beyond what is reasonable for an open source
licence.

I am mostly in favor of weak copyleft, in most pragmatic
applications of licenses. Protect your source, ensure it will
remain free software, ensure the license can't be buried under a
proprietary license, etc. As far as linking and integrating with
non-free software... i'd like to be an idealist and say it's evil...
but of course, I wouldn't have a job if that were the case :wink:

Something like the MPL. The problem is, with the way that the GPL is
written, the MPL is incompatible with it. This will not be changing
under GPLv3.

I imagine I must be the FSF's "most loving critic". I do love these
guys and their ideas, but I don't love the vagueness and rhetoric they
are prone to:

Yeah. That's Stallman through and through. I was one of the ~300 or so
folks heavily involved in the discussion list about the MPL back in the
day, and I got into some arguments with Eben Moglen about the whole
thing when the FSF was trying to get Netscape to *solely* use the GNU
GPL. (I consider the day that the Mozilla Foundation relicensed
everything as MPL and GNU GPL as a net loss for quality open source.)

The problem is entirely in the GNU GPL's wording preventing further
restrictions on the code. Here's a gedankenexperiment:

  * Create a copyleft licence patterned after the GNU GPL (make it the
  GNU GPL without the propaganda). Call it the ASCL (Austin's Strong
  Copyleft Licence). Add one additional term that enforces your right
  to be known as the author of a work (this is *not* the advertising
  clause from the original BSD, mind you). The ASCL is incompatible
  with the GNU GPL.

The GNU GPL requires that your licence have a *subset* of restrictions
that the GNU GPL provides. It is not even clear if the GNU GPL would be
compatible the ASCL even if the additional term were removed. However,
even *one* additional restriction, no matter how reasonable, renders
your licence wholly incompatible with the GNU GPL.

It's nonsense, and it could be fixed pretty easily.

-austin

···

On 4/5/06, Gregory Brown <gregory.t.brown@gmail.com> wrote:

On 4/5/06, Austin Ziegler <halostatue@gmail.com> wrote:

--
Austin Ziegler * halostatue@gmail.com
               * Alternate: austin@halostatue.ca

Hi,

···

In message "Re: GPL v3 and Ruby License." on Thu, 6 Apr 2006 21:23:27 +0900, "Gregory Brown" <gregory.t.brown@gmail.com> writes:

I wonder if it might be smart to explicitly note GPLv2?

Indeed. I'd change the wording for next release.

              matz.

Hi,

Be careful what you assume about the GPL. Consider clause 9 of
the GPL file included with current Ruby

In other words, because the current Ruby distribution does not
explicitly
restrict itself to a specific version of the GPL, anyone can re-release
or re-distribute current Ruby entirely under any published version of
the
GPL, including GPLv3 (when it comes out).

Agreed. I will change the description to:

Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
You can redistribute it and/or modify it under either the terms of the GPL
version 2 (see the file GPL), or the conditions below:
^^^^^^^^^
in the near future to clarify.

              matz.

···

In message "Re: GPL v3 and Ruby License." on Fri, 7 Apr 2006 01:18:41 +0900, Andrew Johnson <ajohnson@cpan.org> writes:

I'm not convinced that's what the licence is saying. If the program licence
terms say "GPL2 or later", I think this clause in GPL2 is saying only that
you can opt to *comply with* any later version. I don't think it's saying
that you can re-release the program code with licence terms of "GPLv3 or
later" -- just that for your specific use of the program, you can choose
which one you comply with.

It's possible I've misinterpreted Andrew's comment. And I'm not a lawyer --
I still have a beating human heart :slight_smile:

;Daniel

···

On 07/04/06, Andrew Johnson <ajohnson@cpan.org> wrote:

>
> Each version is given a distinguishing version number. If the Program
> specifies a version number of this License which applies to it and "any
> later version", you have the option of following the terms and
conditions
> either of that version or of any later version published by the Free
> Software Foundation. If the Program does not specify a version number
of
> this License, you may choose any version ever published by the Free
Software
> Foundation.

In other words, because the current Ruby distribution does not explicitly
restrict itself to a specific version of the GPL, anyone can re-release
or re-distribute current Ruby entirely under any published version of the
GPL, including GPLv3 (when it comes out).

cheers,
andrew

--
Daniel Baird
http://danielbaird.com (TiddlyW;nks! :: Whiteboard Koala :: Blog :: Things
That Suck)
[[My webhost uptime is ~ 92%.. if no answer pls call again later!]]

heh, that is what they say they put in v3 :slight_smile:

You see, if you allowed any additional restrictions, you could as well
use the BSD license.
But they say they observed that some acceptable additional
restrisctions tend to appear in other free licenses. And that they are
incompatible because of that. So they will name the acceptable
additional restrictions for you. And you can add them or use code
covered by other licenses that include them in your gpl software :slight_smile:

disclaimer: I did not read the license but this is discussed on the
page linked a few messages back just below the tivo issue

Thanks

Michal

···

On 4/5/06, Austin Ziegler <halostatue@gmail.com> wrote:

On 4/5/06, Gregory Brown <gregory.t.brown@gmail.com> wrote:
> On 4/5/06, Austin Ziegler <halostatue@gmail.com> wrote:
[...]
>>> I am mostly in favor of weak copyleft, in most pragmatic
>>> applications of licenses. Protect your source, ensure it will
>>> remain free software, ensure the license can't be buried under a
>>> proprietary license, etc. As far as linking and integrating with
>>> non-free software... i'd like to be an idealist and say it's evil...
>>> but of course, I wouldn't have a job if that were the case :wink:
>> Something like the MPL. The problem is, with the way that the GPL is
>> written, the MPL is incompatible with it. This will not be changing
>> under GPLv3.
> I imagine I must be the FSF's "most loving critic". I do love these
> guys and their ideas, but I don't love the vagueness and rhetoric they
> are prone to:

Yeah. That's Stallman through and through. I was one of the ~300 or so
folks heavily involved in the discussion list about the MPL back in the
day, and I got into some arguments with Eben Moglen about the whole
thing when the FSF was trying to get Netscape to *solely* use the GNU
GPL. (I consider the day that the Mozilla Foundation relicensed
everything as MPL and GNU GPL as a net loss for quality open source.)

The problem is entirely in the GNU GPL's wording preventing further
restrictions on the code. Here's a gedankenexperiment:

  * Create a copyleft licence patterned after the GNU GPL (make it the
        GNU GPL without the propaganda). Call it the ASCL (Austin's Strong
        Copyleft Licence). Add one additional term that enforces your right
        to be known as the author of a work (this is *not* the advertising
        clause from the original BSD, mind you). The ASCL is incompatible
        with the GNU GPL.

The GNU GPL requires that your licence have a *subset* of restrictions
that the GNU GPL provides. It is not even clear if the GNU GPL would be
compatible the ASCL even if the additional term were removed. However,
even *one* additional restriction, no matter how reasonable, renders
your licence wholly incompatible with the GNU GPL.

It's nonsense, and it could be fixed pretty easily.

You absolutely, positively, can redistribute the software under a later version.

That is the whole point of the clause. This was explictly mentioned
by Eben Moglen and Richard Stallman at the meeting I attended last
weekend.

If you grant permission for redistribution under the terms of GPL
version 'foo' or any later version... since this permission is granted
outside of the license, but the ability to do so is granted inside the
license, a redistributer is free to remove the 'or any later version',
upgrade to a newer version, etc.

You can't place additional restrictions on re-distribution AFAIK. I
do not think you could say 'freedom is granted to use this software
under v2 or later, but not redistribute under anything but v2'. I
think that would be a conflict.

···

On 4/6/06, Daniel Baird <danielbaird@gmail.com> wrote:

I'm not convinced that's what the licence is saying. If the program licence
terms say "GPL2 or later", I think this clause in GPL2 is saying only that
you can opt to *comply with* any later version. I don't think it's saying
that you can re-release the program code with licence terms of "GPLv3 or
later" -- just that for your specific use of the program, you can choose
which one you comply with.

heh, that is what they say they put in v3 :slight_smile:

They did. One step forward (acceptable additional restrictions), three
steps back (DRM and patent stuff, neither of which is best fought in
the GNU GPL).

disclaimer: I did not read the license but this is discussed on the
page linked a few messages back just below the tivo issue

I have read GPLv3 draft 1. I was unimpressed. I am underwhelmed by the process.

-austin

···

On 4/5/06, Michal Suchanek <hramrach@centrum.cz> wrote:
--
Austin Ziegler * halostatue@gmail.com
               * Alternate: austin@halostatue.ca

Hmm, I guess Bill Gates is right and GPL is aggresively viral after all :slight_smile:

It seems weird that if action A is allowable under GPL2 but not under GPL3,
and I repackage Ruby source and release it under GPL3, people who get source
from me can't do action A, but people who get source from the original
location can.

;Daniel

···

On 07/04/06, Gregory Brown <gregory.t.brown@gmail.com> wrote:

You absolutely, positively, can redistribute the software under a later
version.

--
Daniel Baird
http://danielbaird.com (TiddlyW;nks! :: Whiteboard Koala :: Blog :: Things
That Suck)
[[My webhost uptime is ~ 92%.. if no answer pls call again later!]]

But that's kind of the point of the whole thing. You can see farther
up the thread where we mentioned the 'any later version' clause to be
a back door, which can be avoided by mentioning an explicit version
number. But as Austin mentioned, it does swing both ways.

I'm personally going to avoid putting 'or any later version' in any of
my code, because I'm afraid that even if I'm down with GPLv3, which
for the most part I am... what's to say about GPLv4 or GPLv5? Is my
code going to be under a wildly different license 10 years from now
(assuming with incredible ego that i'll have some project that spans
that time frame)?

I don't want to think about it... so dropping the 'any later version'
term from my license file will save thinking about it.

···

On 4/6/06, Daniel Baird <danielbaird@gmail.com> wrote:

On 07/04/06, Gregory Brown <gregory.t.brown@gmail.com> wrote:
>
>
> You absolutely, positively, can redistribute the software under a later
> version.
>
>
Hmm, I guess Bill Gates is right and GPL is aggresively viral after all :slight_smile:

It seems weird that if action A is allowable under GPL2 but not under GPL3,
and I repackage Ruby source and release it under GPL3, people who get source
from me can't do action A, but people who get source from the original
location can.

I'm personally going to avoid putting 'or any later version' in any of
my code, because I'm afraid that even if I'm down with GPLv3, which
for the most part I am... what's to say about GPLv4 or GPLv5? Is my
code going to be under a wildly different license 10 years from now
(assuming with incredible ego that i'll have some project that spans
that time frame)?

Personally, I will just avoid using the GPL because of this nonsense.

I don't want to think about it... so dropping the 'any later version'
term from my license file will save thinking about it.

Everyone should do this in my view, only explicitly granting permission where they chose too.

···

On 6-Apr-06, at 9:35 PM, Gregory Brown wrote:

--
Jeremy Tregunna
jtregunna@blurgle.ca