Ruby's License will change to BSDL + Ruby's dual license == Background Ruby's License, which is used as the license of Ruby and other related software, says it is dual license: GPLv2 or Ruby's in a narrow sense. But it has following problems: * it is not compatible with GPLv3 * a modest person can't port Ruby's code into BSDL * a greed person can port Ruby's code into public domain (use quotation clause) So copyleft spirit of Ruby's License is the barrier to BSDL, but can't effect to modified codes. == Change current: GPLv2 + Ruby's new: BSDL + Ruby's == Merit * you can use Ruby with GPLv3 software * you can port Ruby's code into BSDL code == Demerit nothing: because people can everything with change the name or quotation clause. == Discussion It was discussed in [ruby-dev:39167], [ruby-core:25272] and so on. Initial decision was made on RubyKaigi 2010 by Matz. http://redmine.ruby-lang.org/wiki/ruby/DevelopersM... == Public Comment Matz said we'll wait 2 weeks for the comment. So please comment to us if you have any comment.
on 2010-08-31 18:30
on 2010-08-31 18:58
(2010/09/01 1:30), NARUSE, Yui wrote:
> Ruby's License will change to BSDL + Ruby's dual license
== What is the BSDL?
2-clause BSDL or ISC License
They are considered functionally equivalent but
* ISC License is made by Internet Systems Consortium,
and used by BIND and OpenBSD, which seems strict people
* ISC License is more simple
So I think ISC License is better
on 2010-08-31 19:37
On 01/09/10 at 01:30 +0900, NARUSE, Yui wrote: > * a greed person can port Ruby's code into public domain > (use quotation clause) > > So copyleft spirit of Ruby's License is the barrier to BSDL, > but can't effect to modified codes. > > == Change > > current: GPLv2 + Ruby's > new: BSDL + Ruby's That's the 3-clause BSD license, not the 4-clause one, right? > == Merit > > * you can use Ruby with GPLv3 software > * you can port Ruby's code into BSDL code > > == Demerit > > nothing: because people can everything with change the name or quotation clause. May I ask why you did not completely drop the Ruby licence, and only use BSD ? Since the BSD is the more permissive of the two, everybody not following the Ruby license can instead follow the BSD license anyway. And it would make the whole licensing situation much simpler. > It was discussed in [ruby-dev:39167], [ruby-core:25272] and so on. > Initial decision was made on RubyKaigi 2010 by Matz. > http://redmine.ruby-lang.org/wiki/ruby/DevelopersM... On a side note, this document says that Debian squeeze uses 1.9.1. That is not true, we transitioned to 1.9.2 shortly before the 1.9.2 release, though the packages are still named *ruby1.9.1 because we version them with the ruby compatibility version, not the ruby version itself. (it would be too complex to have a transition to change the naming now, as it would require modifying all ruby library packages.) Lucas
on 2010-08-31 20:17
(2010/09/01 2:36), Lucas Nussbaum wrote: >> * a modest person can't port Ruby's code into BSDL > > That's the 3-clause BSD license, not the 4-clause one, right? 2-clause. I added it in [ruby-core:31972], sorry for confusing. > BSD ? Since the BSD is the more permissive of the two, everybody not > following the Ruby license can instead follow the BSD license anyway. > And it would make the whole licensing situation much simpler. Ruby's License permits users to include Ruby's code into their code without any copyright notice of Ruby. So "the BSD is the more permissive of the two" is wrong. >> It was discussed in [ruby-dev:39167], [ruby-core:25272] and so on. >> Initial decision was made on RubyKaigi 2010 by Matz. >> http://redmine.ruby-lang.org/wiki/ruby/DevelopersM... > > On a side note, this document says that Debian squeeze uses 1.9.1. That > is not true, we transitioned to 1.9.2 shortly before the 1.9.2 release, > though the packages are still named *ruby1.9.1 because we version them > with the ruby compatibility version, not the ruby version itself. (it > would be too complex to have a transition to change the naming now, as > it would require modifying all ruby library packages.) I added your comment, thanks.
on 2010-09-01 10:12
On 01/09/10 at 03:13 +0900, NARUSE, Yui wrote: > >>* it is not compatible with GPLv3 > >>new: BSDL + Ruby's > >> > without any copyright notice of Ruby. > So "the BSD is the more permissive of the two" is wrong. I don't find this in the Ruby license. I read: verbatim redistribution -> keep copyright notices redistribution after modification -> doesn't say anything about copyright notices Also, in general, I have the impression that the Ruby license is not very well written. For example, the permission to redistribute modified versions in never explicitely granted (it is implicitely granted by 2.b). I would recommend not rushing that decision: licensing changes are painful decisions, and it would be much better if in the end, the Ruby licensing situation was clarified. I would personally prefer a switch to either GPL V2+, or BSD, without any dual licensing clause. Some organizations could provide legal counsel on this, like the Software Freedom Law Center. - Lucas
on 2010-09-01 16:19
(2010/09/01 17:02), Lucas Nussbaum wrote: > On 01/09/10 at 03:13 +0900, NARUSE, Yui wrote: >> Ruby's License permits users to include Ruby's code into their code >> without any copyright notice of Ruby. >> So "the BSD is the more permissive of the two" is wrong. > > I don't find this in the Ruby license. I read: > verbatim redistribution -> keep copyright notices > redistribution after modification -> doesn't say anything about > copyright notices It is 4.: 4. You may modify and include the part of the software into any other software (possibly commercial). But some files in the distribution are not written by the author, so that they are not under these terms. For the list of those files and their copying conditions, see the file LEGAL. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/... Once the code is included by other code, and it is free from Ruby's License. > Also, in general, I have the impression that the Ruby license is not > very well written. For example, the permission to redistribute modified > versions in never explicitely granted (it is implicitely granted by > 2.b). No, the main clause for the permission to redistribute modified versions is allowed by 2.a). > I would recommend not rushing that decision: licensing changes are > painful decisions, and it would be much better if in the end, the Ruby > licensing situation was clarified. I would personally prefer a switch to > either GPL V2+, or BSD, without any dual licensing clause. This is long term problem; Matz said "Ruby's License is not good for new software" in his diary at 2003-06-07. http://www.rubyist.net/~matz/20030607.html#p06 And we are facing real problem from the time GPLv3 published. This effects distributors for both Ruby and Readline6. So we should resolve it in near future. Changing Ruby's License from dual with GPLv2 to dual with BSDL is considered no side effect because of looseness of Ruby's License. So it must be a reasonable solution. Yes, your proposal: change to BSDL single license is good point. But it has some side effect: * lost non-standard name clause 2.c) and 3.c) * lost "arrangements with the author" clause 2.d) and 3.d) * lost 4. If someone uses those clause, they can't update the code from Ruby. So such change needs more care. But we are not interesting about having any exclusive rights; we don't need such restriction.
on 2010-09-01 16:42
On 01/09/10 at 23:18 +0900, NARUSE, Yui wrote: > Yes, your proposal: change to BSDL single license is good point. > But it has some side effect: > * lost non-standard name clause 2.c) and 3.c) Those are additional restrictions. They are actually void, because the modifier or the redistributor could just choice to place its work under BSL. > * lost "arrangements with the author" clause 2.d) and 3.d) Same here: I could modify Ruby and place my modifications or my redistribution under BSD without doing any of 2.a, 2.b, 2.c, 2.d. > * lost 4. This is already permitted by the BSD license anyway. > If someone uses those clause, they can't update the code from Ruby. > So such change needs more care. So, to summarize, there are two cases: - clauses where the Ruby license adds additional restrictions, compared to BSD (example: 2.* 3.*): Then it is possible to circumvent those restrictions by using BSD only. - clauses where the BSD license adds additional restrictions, compared to Ruby's: the only clause in that case is the fact that you must retain the copyright notices. That doesn't sound serious enough to warrant dual licensing. And if that's really a problem, you could actually remove that clause from the BSD license. - Lucas
on 2010-09-01 19:49
(2010/09/01 23:41), Lucas Nussbaum wrote: > On 01/09/10 at 23:18 +0900, NARUSE, Yui wrote: >> Yes, your proposal: change to BSDL single license is good point. >> But it has some side effect: >> * lost non-standard name clause 2.c) and 3.c) > > Those are additional restrictions. They are actually void, because the > modifier or the redistributor could just choice to place its work under > BSL. Distributor A can modify Ruby's code and distribute under the name other than Ruby. Distributor B, who get the code from distributor A, can distribute under the name of Ruby. So this is not additional restrictions. (this clause is more ambiguous on the license in Japanese) >> * lost "arrangements with the author" clause 2.d) and 3.d) > > Same here: I could modify Ruby and place my modifications or my > redistribution under BSD without doing any of 2.a, 2.b, 2.c, 2.d. No. By this clause, Matz can change the license only by his thought. >> * lost 4. > > This is already permitted by the BSD license anyway. 4. doesn't need keep copyright notices. >> If someone uses those clause, they can't update the code from Ruby. >> So such change needs more care. > > So, to summarize, there are two cases: > - clauses where the Ruby license adds additional restrictions, compared > to BSD (example: 2.* 3.*): > Then it is possible to circumvent those restrictions by using BSD > only. As I wrote above, it cannot. > - clauses where the BSD license adds additional restrictions, compared > to Ruby's: > the only clause in that case is the fact that you must retain the > copyright notices. That doesn't sound serious enough to warrant dual > licensing. And if that's really a problem, you could actually remove > that clause from the BSD license. I think removed one is not a major BSDL. I don't think that it is better than Ruby's; Ruby's is 100% compatible with Ruby's.
on 2010-09-01 21:25
On Aug 31, 2010, at 9:50 AM, NARUSE, Yui wrote: > * ISC License is more simple > So I think ISC License is better Might I also humbly suggest considering the Apache 2 license. The Apache 2 license is fully compatible with GPLv3, and similar to the BSD License, but it contains an extra clause covering patent indemnification (see #3 here: http://www.apache.org/licenses/LICENSE-2.0.html). - Josh
on 2010-09-02 01:00
(2010/09/02 4:23), Joshua Ballanco wrote:
> Might I also humbly suggest considering the Apache 2 license. The Apache 2 license is fully compatible with GPLv3, and similar to the BSD License, but it contains an extra clause covering patent indemnification (see #3 here: http://www.apache.org/licenses/LICENSE-2.0.html).
Do you have any practical list of patents or patent holders that exist
today
on our distribution? I don't. It seems useless to me.
on 2010-09-02 02:22
2010/9/2 Joshua Ballanco <jballanc@gmail.com>: >> * ISC License is made by Internet Systems Consortium, >> and used by BIND and OpenBSD, which seems strict people >> * ISC License is more simple >> So I think ISC License is better > > Might I also humbly suggest considering the Apache 2 license. The Apache 2 license is fully compatible with GPLv3, and similar to the BSD License, but it contains an extra clause covering patent indemnification (see #3 here: http://www.apache.org/licenses/LICENSE-2.0.html). The Apache License, Version 2.0 is not compatible with GPLv2, and more strict than BSDL.
on 2010-09-02 08:47
On Sep 1, 2010, at 3:59 PM, Urabe Shyouhei wrote: > (2010/09/02 4:23), Joshua Ballanco wrote: >> Might I also humbly suggest considering the Apache 2 license. The Apache 2 license is fully compatible with GPLv3, and similar to the BSD License, but it contains an extra clause covering patent indemnification (see #3 here: http://www.apache.org/licenses/LICENSE-2.0.html). > > Do you have any practical list of patents or patent holders that exist today > on our distribution? I don't. It seems useless to me. I was thinking about the future, but again, just a suggestion. The incompatibility with GPLv2 essentially rules it out as Yui points out.
on 2010-09-13 18:33
I wrote a concrete patch. ISC License is discouraged by GNU, so this is 2-cluase BSDL. http://www.gnu.org/licenses/license-list.html#ISC diff --git a/BSDL b/BSDL new file mode 100644 index 0000000..d63ffac --- /dev/null +++ b/BSDL @@ -0,0 +1,24 @@ + + Copyright (C) 1993-2010 Yukihiro Matsumoto. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. diff --git a/COPYING b/COPYING index 9043404..a1f19ff 100644 --- a/COPYING +++ b/COPYING @@ -1,6 +1,6 @@ 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: +You can redistribute it and/or modify it under either the terms of the +2-clause BSDL (see the file BSDL), or the conditions below: 1. You may make and give away verbatim copies of the source form of the software without restriction, provided that you duplicate all of the diff --git a/COPYING.ja b/COPYING.ja index aa2a163..5b5b91c 100644 --- a/COPYING.ja +++ b/COPYING.ja <skipped; see [ruby-dev:42250]>
on 2010-09-14 06:01
Hi,
We've waited for several weeks, no one has shown objection to changing
license, besides Apache license suggestion, so now we can change the
license of Ruby. Could you apply the patch?
matz.
In message "Re: [ruby-core:32364] Re: Change Ruby's License to BSDL +
Ruby's dual license"
on Tue, 14 Sep 2010 01:33:31 +0900, "NARUSE, Yui"
<naruse@airemix.jp> writes:
|I wrote a concrete patch.
|
|ISC License is discouraged by GNU, so this is 2-cluase BSDL.
|http://www.gnu.org/licenses/license-list.html#ISC
on 2010-09-14 06:42
2010/9/14 Yukihiro Matsumoto <matz@ruby-lang.org>: > Hi, > > We've waited for several weeks, no one has shown objection to changing > license, besides Apache license suggestion, so now we can change the > license of Ruby. Could you apply the patch? I'll wait a day for reviewing the patch and I'll commit it tomorrow.
on 2010-09-14 08:26
knu pointed that "THE AUTHOR" of following line should be "THE AUTHOR AND CONTRIBUTORS" because FreeBSD's actual License does so. + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR http://svn.freebsd.org/viewvc/base/head/COPYRIGHT?... So I'll change it.
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.