NAME
Software::LicenseUtils - little useful bits of code for licensey things
VERSION
version 0.104001
METHODS
guess_license_from_pod
my @guesses = Software::LicenseUtils->guess_license_from_pod($pm_text);
Given text containing POD, like a .pm file, this method will attempt to guess at the license under which the code is available. This method will return either a list of Software::License classes names (as strings) or false.
This method looks for a POD heading like 'license', 'copyright', or 'legal'.
Calling this method in scalar context is a fatal error.
guess_license_from_meta
my @guesses = Software::LicenseUtils->guess_license_from_meta($meta_str);
Given the content of the META.(yml|json) file found in a CPAN distribution, this method makes a guess as to which licenses may apply to the distribution. It will return a list of zero or more Software::License instances or classes.
guess_license_from_meta_key
my @guesses = Software::LicenseUtils->guess_license_from_meta_key($key, $v);
This method returns zero or more Software::License classes known to use $key
as their META key. If $v
is supplied, it specifies whether to treat $key
as a v1 or v2 meta entry. Any value other than 1 or 2 will raise an exception.
new_from_short_name
my $license_object = Software::LicenseUtils->new_from_short_name( {
short_name => 'GPL-1',
holder => 'X. Ample'
}) ;
Create a new Software::License object from the license specified with short_name
. Known short license names are GPL-*
, LGPL-*
, Artistic
and Artistic-*
new_from_spdx_expression
my $license_object = Software::LicenseUtils->new_from_spdx_expression( {
spdx_expression => 'MPL-2.0',
holder => 'X. Ample'
}) ;
Create a new Software::License object from the license specified with spdx_expression
. Some licenses doesn't have an spdx identifier (for example Software::License::Perl_5), so you can pass spdx identifier but also expressions. Known spdx license identifiers are BSD
, MPL-1.0
.
AUTHOR
Ricardo Signes <rjbs@semiotic.systems>
COPYRIGHT AND LICENSE
This software is copyright (c) 2021 by Ricardo Signes.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.