1Software::License(3)  User Contributed Perl Documentation Software::License(3)
2
3
4

NAME

6       Software::License - packages that provide templated software licenses
7

VERSION

9       version 0.104002
10

SYNOPSIS

12         my $license = Software::License::Discordian->new({
13           holder => 'Ricardo Signes',
14         });
15
16         print $output_fh $license->fulltext;
17

PERL VERSION

19       This module is part of CPAN toolchain, or is treated as such.  As such,
20       it follows the agreement of the Perl Toolchain Gang to require no newer
21       version of perl than v5.8.1.  This version may change by agreement of
22       the Toolchain Gang, but for now is governed by the Lancaster Consensus
23       <https://github.com/Perl-Toolchain-Gang/toolchain-
24       site/blob/master/lancaster-consensus.md> of 2013.
25

METHODS

27   new
28         my $license = $subclass->new(\%arg);
29
30       This method returns a new license object for the given license class.
31       Valid arguments are:
32
33       holder
34           the holder of the copyright; required
35
36       year
37           the year of copyright; defaults to current year
38
39       program
40           the name of software for use in the middle of a sentence
41
42       Program
43           the name of software for use in the beginning of a sentence
44
45       "program" and "Program" arguments may be specified both, either one or
46       none.  Each argument, if not specified, is defaulted to another one, or
47       to properly capitalized "this program", if both arguments are omitted.
48
49   year
50   holder
51       These methods are attribute readers.
52
53   program
54       Name of software for using in the middle of a sentence.
55
56       The method returns value of "program" constructor argument (if it
57       evaluates as true, i. e.  defined, non-empty, non-zero), or value of
58       "Program" constructor argument (if it is true), or "this program" as
59       the last resort.
60
61   Program
62       Name of software for using in the middle of a sentence.
63
64       The method returns value of "Program" constructor argument (if it is
65       true), or value of "program" constructor argument (if it is true), or
66       "This program" as the last resort.
67
68   name
69       This method returns the name of the license, suitable for shoving in
70       the middle of a sentence, generally with a leading capitalized "The."
71
72   url
73       This method returns the URL at which a canonical text of the license
74       can be found, if one is available.  If possible, this will point at
75       plain text, but it may point to an HTML resource.
76
77   notice
78       This method returns a snippet of text, usually a few lines, indicating
79       the copyright holder and year of copyright, as well as an indication of
80       the license under which the software is distributed.
81
82   license
83       This method returns the full text of the license.
84
85   fulltext
86       This method returns the complete text of the license, preceded by the
87       copyright notice.
88
89   version
90       This method returns the version of the license.  If the license is not
91       versioned, this method will return false.
92
93   meta_name
94       This method returns the string that should be used for this license in
95       the CPAN META.yml file, according to the CPAN Meta spec v1, or undef if
96       there is no known string to use.
97
98       This method may also be invoked as "meta_yml_name" for legacy reasons.
99
100   meta2_name
101       This method returns the string that should be used for this license in
102       the CPAN META.json or META.yml file, according to the CPAN Meta spec
103       v2, or undef if there is no known string to use.  If this method does
104       not exist, and "meta_name" returns open_source, restricted,
105       unrestricted, or unknown, that value will be used.
106
107   spdx_expression
108       This method should return the string with the spdx identifier as
109       indicated by <https://spdx.org/licenses/>
110

LOOKING UP LICENSE CLASSES

112       If you have an entry in a META.yml or META.json file, or similar
113       metadata, and want to look up the Software::License class to use, there
114       are useful tools in Software::LicenseUtils.
115

TODO

117       •   register licenses with aliases to allow $registry->get('gpl', 2);
118

SEE ALSO

120       The specific license:
121
122       •   Software::License::AGPL_3
123
124       •   Software::License::Apache_1_1
125
126       •   Software::License::Apache_2_0
127
128       •   Software::License::Artistic_1_0
129
130       •   Software::License::Artistic_2_0
131
132       •   Software::License::BSD
133
134       •   Software::License::CC0_1_0
135
136       •   Software::License::Custom
137
138       •   Software::License::EUPL_1_1
139
140       •   Software::License::EUPL_1_2
141
142       •   Software::License::FreeBSD
143
144       •   Software::License::GFDL_1_2
145
146       •   Software::License::GFDL_1_3
147
148       •   Software::License::GPL_1
149
150       •   Software::License::GPL_2
151
152       •   Software::License::GPL_3
153
154       •   Software::License::LGPL_2_1
155
156       •   Software::License::LGPL_3_0
157
158       •   Software::License::MIT
159
160       •   Software::License::Mozilla_1_0
161
162       •   Software::License::Mozilla_1_1
163
164       •   Software::License::Mozilla_2_0
165
166       •   Software::License::None
167
168       •   Software::License::OpenSSL
169
170       •   Software::License::Perl_5
171
172       •   Software::License::PostgreSQL
173
174       •   Software::License::QPL_1_0
175
176       •   Software::License::SSLeay
177
178       •   Software::License::Sun
179
180       •   Software::License::Zlib
181
182       Extra licenses are maintained on CPAN in separate modules.
183
184       The App::Software::License module comes with a script software-license
185       <https://metacpan.org/pod/distribution/App-Software-
186       License/script/software-license>, which provides a command-line
187       interface to Software::License.
188

AUTHOR

190       Ricardo Signes <rjbs@semiotic.systems>
191

CONTRIBUTORS

193       •   Alex Kapranoff <kappa@yandex.ru>
194
195       •   Andrew Grangaard <granny-github@ofb.net>
196
197       •   Axel Beckert <abe@deuxchevaux.org>
198
199       •   Bernardo Rechea <brbpub@gmail.com>
200
201       •   Bernhard Amann <bernhard@icsi.berkeley.edu>
202
203       •   bowtie <bowtie@cpan.org>
204
205       •   Brian Cassidy <bricas@cpan.org>
206
207       •   Brian Phillips <bphillips@digitalriver.com>
208
209       •   Craig Scrivner <scrivner@geology.cwu.edu>
210
211       •   Curtis Brandt <curtis@cpan.org>
212
213       •   Dave Rolsky <autarch@urth.org>
214
215       •   David E. Wheeler <david@justatheory.com>
216
217       •   David Golden <dagolden@cpan.org>
218
219       •   Dominique Dumont <dod@debian.org>
220
221       •   Dylan William Hardison <dylan@hardison.net>
222
223       •   Flavio Poletti <flavio@polettix.it>
224
225       •   Florian Ragwitz <rafl@debian.org>
226
227       •   Graham Knop <haarg@haarg.org>
228
229       •   Justin Baker <me@jbaker.dev>
230
231       •   Kang-min Liu <gugod@gugod.org>
232
233       •   Karen Etheridge <ether@cpan.org>
234
235       •   Kenichi Ishigaki <ishigaki@cpan.org>
236
237       •   Kivanc Yazan <kivancyazan@gmail.com>
238
239       •   Leon Timmermans <fawaka@gmail.com>
240
241       •   magnolia <magnolia.k@me.com>
242
243       •   mikegrb <mgreb@linode.com>
244
245       •   Neil Bowers <neil@bowers.com>
246
247       •   Nicolas Rochelemagne <rochelemagne@cpanel.net>
248
249       •   Olivier Mengué <dolmen@cpan.org>
250
251       •   Pablo Rodríguez González <pablo.rodriguez.gonzalez@gmail.com>
252
253       •   Shlomi Fish <shlomif@iglu.org.il>
254
255       •   srchulo <violapiratejunky@gmail.com>
256
257       •   Syohei YOSHIDA <syohex@gmail.com>
258
259       •   Tomasz Konojacki <me@xenu.pl>
260
261       •   Van de Bugger <van.de.bugger@gmail.com>
262
263       •   Wesley Schwengle <wesley@schwengle.net>
264
266       This software is copyright (c) 2022 by Ricardo Signes.
267
268       This is free software; you can redistribute it and/or modify it under
269       the same terms as the Perl 5 programming language system itself.
270
271
272
273perl v5.36.0                      2023-01-20              Software::License(3)
Impressum