-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
formulae: add licenses for various formulae #59946
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fantastic work, @waldyrious!
We have added support for SPDX expressions but we decided to go about it in a more "ruby" way that uses hashes and arrays to indicate the expression logic instead of a parsing a string. I added suggestions with the correct style (I think it should be pretty straight forward).
Also, we prefer one commit per formula. You had a few commits that updated two (related) formulae, so it would be great if you could separate those.
Just so you know, we need to wait for a new Homebrew release before we can start using the updated license syntax in formulae, so I'm going to mark this as do not merge
until then. Once we have a new release and everything's been adressed we should be good to go!
4d3020b
to
5241fd6
Compare
@Rylan12 in the interests of making reviewing of this PR easier, I've applied the changes that have been agreed in the inline discussions, and marked them as resolved. For convenience, the changes were:
I'll stand by for instructions on how to proceed regarding |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, but I think we should still remove the MIT-CMU
license from telnet
as its definitely not MIT-CMU
.
Also, can you separate the telnet
and telnetd
changes into two separate commits?
Sources: - https://www.gnu.org/software/wget/ > GNU Wget is distributed under the GNU General Public License. - https://git.savannah.gnu.org/cgit/wget.git/tree/README > This program is free software; you can redistribute it and/or modify it > under the terms of the GNU General Public License as published by the > Free Software Foundation; either version 3 of the License, > or (at your option) any later version.
Source: - https://dev.perl.org/licenses/ > Perl5 (...) is free software; > you can redistribute it and/or modify it under the terms of either: > a) the GNU General Public License as published by the Free Software Foundation; > either version 1, or (at your option) any later version, or > b) the "Artistic License".
Sources: - https://exiftool.org/#license > This is free software; you can redistribute it and/or modify it > under the same terms as Perl itself. - https://dev.perl.org/licenses/ > Perl5 (...) is free software; > you can redistribute it and/or modify it under the terms of either: > a) the GNU General Public License as published by the Free Software Foundation; > either version 1, or (at your option) any later version, or > b) the "Artistic License".
Sources: - https://github.com/gwsw/less/blob/master/COPYING - https://github.com/gwsw/less/blob/master/LICENSE - https://github.com/gwsw/less/blob/master/README.VER: > This program is free software. > You may redistribute it and/or modify it under the terms of either: > 1. The GNU General Public License, as published by the Free Software > Foundation; either version 3, or (at your option) any later version. > A copy of this license is in the file COPYING. > or > 2. The Less License, in the file LICENSE. Note about the Less License: The less project is dual-licensed, but the Less License lacks a SPDX identifier. It matches the BSD-2-Clause nearly exactly, but changes the second clause from: > 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. to simply: > Redistributions in binary form must reproduce the above copyright notice > in the documentation and/or other materials provided with the distribution. Notice how "this list of conditions and the following disclaimer" was removed from the clause, so the legal obligations are slightly different If eventually the Less License gets an SPDX identifier, we might change the formula's license expression to include it, but at this point we are unable to represent it accurately, so only the GPL is mentioned (which is allowed in a dual-licensing context).
Notes: - All source files use the BSD-4-Clause-UC license, except `krb4-proto.h`, which only has the APSL-1.0 license header; - File `tn3270.c` includes both the BSD-4-Clause-UC and the APSL-1.0 licenses; - File `misc-proto.h` includes both the BSD-4-Clause-UC and a custom MIT-style license. The latter is not encoded in the license field of the formula, because it doesn't have an SPDX identifier.
Notes: - All the source files use the BSD-4-Clause-UC license, except for `vasprintf.c` and `strlcpy.c`, which have the BSD-3-Clause license instead; - Unlike `telnet`, none of the files in `telnetd` include the APSL-1.0 license header.
Sources: - https://github.com/JuliaStrings/utf8proc/blob/master/LICENSE.md - https://juliastrings.github.io/utf8proc > The utf8proc package is licensed under the free/open-source MIT "expat" license > (plus certain Unicode data governed by the similarly permissive Unicode data license); > please see the included LICENSE.md file for more detailed information.
5241fd6
to
4495585
Compare
@Rylan12 all done — thanks for the quick review! Please take another look when you can. I believe this may now be ready to merge :) |
Great work! Thanks, @waldyrious! |
Thanks for the thorough and helpful reviews, everyone! |
brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingbrew install <formula>
)?Adding my contribution to #58225. 🙂 Included in this PR:
wget
,exiftools
,less
,speex
,telnet(d)
andutf8proc
. Please see the individual commit messages for details on how these expressions were derived.(As a side note, I gained a new appreciation for clear licensing terms. These licenses have been quite cumbersome to determine, as the extended commit messages attest.)
Also,
brew audit --strict
doesn't seem to recognize SPDX expressions. I hope that's OK, as the discussion in #59582 seemed to indicate a general agreement to support them.