Softwa...r_later(3pm)

πŸ’– Softwa...r_later(3pm) β€” the group chat version πŸ’–

okay so this is a page from the User Contributed Perl Documentation, and it's all about Softwa...r_later. Sit down, bestie, we're learning today. ✨


🌸 NAME 🌸

Software::License::LGPL_3_0::or_later β€” it's the LGPLv3.0+ license for the Software::License infrastructure. That's the whole name, no notes. πŸ’…


πŸŽ€ VERSION πŸŽ€

Version v0.10.2, released on 2016-10-10 22:17 UTC. Vintage. Iconic. It said what it said. πŸ¦‹


πŸ’€ WHAT? πŸ’€

Software-License-OrLaterPack (or just OrLaterPack when we're being brief, which we love) is an add-on for Software-License. It's a whole set of licenses that come with the "or later" clause β€” like GPL_3::or_later. Basically it lets Perl developers (the ones using Dist-Zilla, iykyk) release their work under a License version N, or β€” if the user wants β€” literally any later version. Choices! Freedom! We love to see it. 🫢

This right here is the docs for the Software::License::LGPL_3_0::or_later module specifically. Read this if you're gonna hack on it, extend it, or use the module directly, no middleman.

If you just want to use a GNU license with the "or later" clause, go read the user manual instead. And general stuff like getting source, building, installing, bug reporting and a few other things β€” all of that lives in the README file. πŸ“–


✨ SYNOPSIS ✨

my $lic = Software::License::LGPL_3_0::or_later->new( {
    holder  => 'John Doe',
    year    => '2010',
    program => 'Assa'
} );

$lic->_abbr;    # 'LGPL'
$lic->abbr;     # 'LGPLv3.0+'
$lic->_name;    # 'GNU Lesser General Public License'
$lic->name;     # 'The GNU Lesser General Public License version 3.0 or later'

$lic->notice;
    # Copyright statement and
    # standard GNU 3-paragraph license notice.
$lic->notice( 'short' );
    # Copyright statement, license name and
    # two sentences about free software and warranties.

# Xand other methods inherited from Software::License::LGPL_3_0
# and Software::License.

Look at her go. Every one of those outputs is exact, don't come for me. πŸ’…


🌈 DESCRIPTION 🌈

Software::License::LGPL_3_0::or_later is a subclass of Software::License::LGPL_3_0. It overrides a few of its parent's methods and also brings a few brand-new methods of its own to the function. Main character behavior, honestly.

For the general description of the class interface, go see the documentation on Software::License.


πŸ‘‘ OBJECT ATTRIBUTES πŸ‘‘

πŸ’œ _abbr

Bare abbreviated license name β€” LGPL. That's it, that's the whole vibe.

Note: this attribute is not inherited from the base class. It's original. It's self-made. πŸ’…

πŸ’œ abbr

Abbreviated license name, which is the bare abbreviated license name concatenated with the 'v' character and the license version (with that trailing plus sign hanging on at the end). ✨

Note: this attribute is not inherited from the base class.

πŸ’œ base

A reference to the base license object β€” like, the license without the "or later" clause. The unproblematic version. πŸ™ˆ

Note: this attribute is not inherited from the base class.

πŸ’œ _name

Bare name of the license β€” which is also the bare name of the base license, because it includes neither the definitive article ("The"), nor the license version, nor the "or later" clause. Just: GNU Lesser General Public License. Stripped. Minimalist. πŸŽ€

Note: this attribute is not inherited from the base class.

πŸ’œ name

This one actually meets the Software::License specification, bestie. The name it returns starts with the definitive capitalized article ("The"). It also includes the base license version (like the other Software::License classes do) β€” and heads up, that's without the trailing plus sign β€” plus the "or later" clause. All the pieces. 🧩

πŸ’œ program

A program name, exactly as specified by the program option in the constructor, or the Program option in the constructor, or fallback "this program". This form of the program name is meant to be dropped in the middle of a sentence. Grammar matters, periodt. ✏️

Note: this attribute is not inherited from the base class.

πŸ’œ Program

A program name, exactly as specified by the Program option in the constructor, or the program option in the constructor, or fallback "This program". This form is meant to go at the beginning of a sentence β€” capitalized, leading the way, main character energy. πŸ‘‘

Note: this attribute is not inherited from the base class.

πŸ’œ version

The license version β€” that's the base license version with the plus sign appended to denote the "or later" clause. βž•


πŸ¦‹ OBJECT METHODS πŸ¦‹

πŸ“ notice

This method overrides Software::License's notice. Here's what's different, bestie:

  • If the license object was created with the program option, or the Program option, or both, then the notice will include the real program name instead of the generic "this program". Personalized! 🫢
  • It returns the copyright statement, followed by the standard GNU 3-paragraph license notice.
  • The result is formatted with Text::Wrap::fill. Fancy.

You can also call the method with a 'short' argument to get the short version of the notice. The short version includes: the copyright statement, the license name, and two sentences about free software and warranties. Snappy. Efficient. We love her.

Note: This is an experimental feature. Proceed with the appropriate amount of caution. πŸ’€

🌟 AUTHOR 🌟

Van de Bugger <van.de.bugger@gmail.com>


Copyright (C) 2015 Van de Bugger

License GPLv3+: The GNU General Public License version 3 or later <http://www.gnu.org/licenses/gpl-3.0.txt>.

This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


and that's the whole page, bestie β€” written by perl v5.32.0 back on 2021-01-18, filed under Softwa...r_later(3pm). slay, go forth, and license responsibly πŸ’…βœ¨