-
Notifications
You must be signed in to change notification settings - Fork 40
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
Artistic license confusion #32
Comments
I think we need someone with more familiarity with licencing issues (and how they relate to Perl) to comment on this. |
I just ran into exactly this issue. I consider it a blocker for #54 |
It appears that there are some 160 modules on CPAN that declare themselves to use the artistic 1, though I have the impression almost all of them are just a fe authors (Ron Savage in particular). |
Agreed.
I think that is the main question right now. I'm not quite sure either. |
The difference between them dates back to 1993. Reasons are unknown, but I suppose we could ask Larry (not sure he'll remember) |
The commit Perl/perl5@463ee0b is titled "perl 5.0 alpha 4". Because alpha releases happen before a final release, I interpret it as a change before releasing Perl 5. Based on this reasoning, I'm keen to correcting the license text to Artistic-1.0-Perl. |
perl 5.0 alpha 4 changed a license from (SPDX identifiers) Artistic-1.0 to Artistic-1.0-Perl license. Hence Software::License::Perl_5 was quoting wrong Artistic text. This patch aligns Software::License::Perl_5 to what <https://dev.perl.org/licenses/artistic.html> web and Perl 5 sources present. As the license name I used an SPDX name <https://spdx.org/licenses/Artistic-1.0-Perl.html> to prevent from proliferating identifiers. The version() methods relies on the default implementation, yielding "1.0.Perl". Perl-Toolchain-Gang#32
TBH I strongly suspect OSI who messed up; Perl is the source of the Artistic License so its version should have been authoritative. I have no idea where they got their version from, I don't think I've ever encountered The Artistic License outside of Perl space. But regardless that doesn't help us now. Software::Licence 0.104003 will output the license correctly. |
As seen at http://spdx.org/licenses/, there are three variants
of the Artistic license version 1.0 around.
http://spdx.org/licenses/Artistic-1.0
http://spdx.org/licenses/Artistic-1.0-Perl
http://spdx.org/licenses/Artistic-1.0-cl8
The one that is shipped with Perl in the top level "Artistic" file (and
that is included in /usr/share/common-licenses on Debian) is the one
called "Artistic-1.0-Perl", but Software::License has "Artistic-1.0",
which has a different number of clauses and some other more or less
subtle differences.
A crude way to tell these apart is
/7.\s_C subroutines/ and out("Artistic-1.0-Perl");
/8.\s_The name of the Copyright Holder/ and out("Artistic-1.0");
/8.\s*Aggregation of this Package/ and out("Artistic-1.0-cl8");
It seems to me that at least Software::License::Perl_5 should use
Artistic-1.0-Perl instead, and that Software::License::Artistic_1_0
should possibly default to Artistic-1.0-Perl.
This affects quite a few CPAN distributions using Dist::Zilla and generating top level LICENSE files. If the author requests the same terms as Perl itself, generating a different copy of the license than the one in the Perl distribution seems to be incorrect.
(This is also https://bugs.debian.org/764753, and there's a quick script using the above heuristics at http://anonscm.debian.org/cgit/pkg-perl/scripts.git/plain/artistic-version in case that's helpful to others too.)
The text was updated successfully, but these errors were encountered: