ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
From: "vo.x (Vit Ondruch) via ruby-core" <ruby-core@ml.ruby-lang.org>
To: ruby-core@ml.ruby-lang.org
Cc: "vo.x (Vit Ondruch)" <noreply@ruby-lang.org>
Subject: [ruby-core:117618] [Ruby master Feature#20437] Could be the licensing conditions be made less ambiguous?
Date: Fri, 19 Apr 2024 15:59:07 +0000 (UTC)	[thread overview]
Message-ID: <redmine.issue-20437.20240419155907.703@ruby-lang.org> (raw)
In-Reply-To: redmine.issue-20437.20240419155907.703@ruby-lang.org

Issue #20437 has been reported by vo.x (Vit Ondruch).

----------------------------------------
Feature #20437: Could be the licensing conditions be made less ambiguous?
https://bugs.ruby-lang.org/issues/20437

* Author: vo.x (Vit Ondruch)
* Status: Open
----------------------------------------
# Current state

The current [COPYING](https://github.com/ruby/ruby/blob/6cfd929034f1fe3d93160365505a8b88bef56159/COPYING) file says the following:

~~~
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
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

... snip ...
~~~

And this is quite ambiguous. Let me show a few examples:

# Ambiguous examples

## lib/net/protocol.rb

https://github.com/ruby/ruby/blob/6cfd929034f1fe3d93160365505a8b88bef56159/lib/net/protocol.rb#L11-L13

~~~
# This program is free software. You can re-distribute and/or
# modify this program under the same terms as Ruby itself,
# Ruby Distribute License or GNU General Public License.
~~~

So what is the license? Is it 2-clause BSDL + Ruby + GPL? Or is is just Ruby + GPL but not 2-clause BSDL?

## Racc

https://github.com/ruby/racc/blob/d52fb64d166046bfde81e6e9c424fcd884ebcabf/README.rdoc?plain=1#L44-L45

~~~
Racc is distributed under the same terms of ruby.
(see the file COPYING).
~~~

where the [COPYING](https://github.com/ruby/racc/blob/d52fb64d166046bfde81e6e9c424fcd884ebcabf/COPYING) contains just 2-clause BSDL.

Not even mentioning that Ruby used to be GPLv2 licensed:

https://github.com/ruby/racc/commit/cc7fe952a6b1fc2ef43477674fa13f2d9d99e818

## Rubygems

https://github.com/rubygems/rubygems/blob/master/LICENSE.txt

The license is obviously modeled after Ruby COPYING file, but if it could say "licensed under MIT or Ruby", it would be much better.

## Gettext

https://github.com/ruby-gettext/gettext/blob/8d84132efd888e68fffbce413316458788eeaf1e/README.md?plain=1#L294C1-L295C45

The license note is so old that it is not obvious what that means and what was the intention. Did the Ruby relicensing from "GPLv2 or Ruby" to "GPLv2 or BSD" influenced this project?

## SPDX

https://spdx.org/licenses/Ruby.html

It quotes just the "conditions below" as a Ruby license, while referring to [Ruby license file](https://www.ruby-lang.org/en/about/license.txt) mentioning also 2-clause BSDL

# Proposal

To me it seems that the whole world recognizes "Ruby" license, except Ruby. Therefore I think it would be nice if Ruby project recognized the "Ruby" license. There are two possibilities I can think of:

## Refer the license by name

~~~diff
$ git diff
diff --git a/COPYING b/COPYING
index 48e5a96de7..a2d179a8a9 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
-2-clause BSDL (see the file BSDL), or the conditions below:
+2-clause BSDL (see the file BSDL), or the conditions of the Ruby license 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
~~~

## Extract the "conditions below" into "Ruby" license file


The "conditions below" text could be extracted into separate file (e.g. "RUBY_LICENSE") and the "COPYING" file rephrased to say:

~~~
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
2-clause BSDL (see the file BSDL), or Ruby license (see the file RUBY_LICENSE)
~~~



-- 
https://bugs.ruby-lang.org/
 ______________________________________________
 ruby-core mailing list -- ruby-core@ml.ruby-lang.org
 To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
 ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/

           reply	other threads:[~2024-04-19 15:59 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <redmine.issue-20437.20240419155907.703@ruby-lang.org>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.ruby-lang.org/en/community/mailing-lists/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=redmine.issue-20437.20240419155907.703@ruby-lang.org \
    --to=ruby-core@ruby-lang.org \
    --cc=noreply@ruby-lang.org \
    --cc=ruby-core@ml.ruby-lang.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).