Perl-Toolchain-Gang / Software-License

perl representation of common software licenses

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Artistic license confusion

ntyni opened this issue · comments

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.)

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.

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).

It seems to me that at least Software::License::Perl_5 should use
Artistic-1.0-Perl instead

Agreed.

that Software::License::Artistic_1_0 should possibly default to Artistic-1.0-Perl.

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.

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.