Make license/licenses field mandatory
alexch at gmail.com
Tue Oct 18 13:58:24 EDT 2011
We've been discussing this on the gemcutter list too; here's a summary
of my personal thoughts from that thread.
I'd say limit the field to a single line, which contains either:
* a URL to the license
* a path to a file inside the gem itself (usually license.txt)
* a short name, based on a standard dictionary of licenses
On Mon, Oct 17, 2011 at 9:55 PM, 7rans <transfire at gmail.com> wrote:
> There is a standard, SPDX (spdx.org)
Cool! The more I think about this -- which is still, admittedly, not
vey much -- the more I think that a URI/URL is the way to go. Not so
much for a clickable hyperlink -- which, as we can see now, is not
always useful -- but as a, you know, Uniform format for Identifying
and/or Locating a Resource, which is what a license field in a gem
wants to do.
Making our own dictionary would be a losing proposition; better to
piggyback on spdx, even if it means typing
"http://spdx.org/licenses/MIT" rather than "MIT"
Though actually SPDX defines a "short identifer" too, so in that
example, either could work.
Also, to answer the actual question, generally, if things are
mandatory, people get annoyed and fill in garbage, which wouldn't help
So I'd be quite wary of making anything mandatory, especially not
without having a good answer for these questions:
* What if I want to publish my gem with no license?
* ...with a personally crafted license?
* ...in the public domain?
* What are the data structure rules for the field(s)?
* i.e. ...Does "MIT" mean the same as "mit" as "MIT Public License" as "M.I.T."?
* Whose short name dictionary are we using? Who's responsible for
maintaining and updating that list?
* What about different versions and variants of the same license?
(I know you've covered a lot of these points already, but just wanted
to restate the questions.)
Alex Chaffee - alex at cohuman.com - http://alexch.github.com
Stalk me: http://friendfeed.com/alexch | http://twitter.com/alexch |
More information about the RubyGems-Developers