CPAN::Changes(3)
π CPAN::Changes π
okay bestie, so this is the manual for CPAN::Changes β a Perl module that parses CPAN-style change logs. it's literally your new fave. π
β¨ SYNOPSIS β¨
use CPAN::Changes;
my $changes = CPAN::Changes->load('Changes');
$changes->release('0.01');
πΈ DESCRIPTION πΈ
so like, it's standard practice to include a Changes file in your distribution. the whole point of that Changes file? helping a user figure out what's changed since the last release. periodt. π
people have devised many ways to write the Changes file. a preliminary specification has been created (CPAN::Changes::Spec) to encourage module authors to write clear and concise Changes. iconic behavior, honestly.
this module will help users programmatically read and write Changes files that conform to the specification. yes bestie, read and write. π¦
π₯ METHODS π₯
new ( %args )
Creates a CPAN::Changes object. slay.
%args
preambleβ the preamble section of the changelog.releasesβ an arrayref ofCPAN::Changes::Releaseobjects.
load ( $filename, %args )
Creates a new CPAN::Changes object by parsing the given file via CPAN::Changes::Parser. π§
load_string ( $filename, %args )
Creates a new CPAN::Changes object by parsing the given string via CPAN::Changes::Parser.
preamble ( [ $preamble ] )
Gets or sets the preamble section. lowkey the easiest one here. π
releases ( [ @releases ] )
Gets or sets the list of releases as CPAN::Changes::Release objects.
add_release ( @releases )
Adds the given releases to the change log. If a release of the same version exists, it will be overwritten. no cap, it'll just replace it. π
delete_release ( @versions )
Removes the given versions from change log.
find_release ( $version )
Finds a release with the given version. go little detective go π΅οΈ β well, actually it's just find_release, but you get the vibe.
reversed
Returns a new CPAN::Changes object with the releases in the opposite order. it's giving β¨mirrorβ¨.
clone ( %attrs )
Returns a new CPAN::Changes object with the given attributes changed.
serialize ( %options )
Returns the change log as a string suitable for saving as a Changes file. main character energy fr fr.
widthβ the width to wrap lines at. by default, lines will be wrapped at75characters.stylesβ an array reference of styles to use when outputting the entries, one for each level of change. the first entry is used for the release entry itself. the styles can be either a single character to prefix change lines or two characters to use as a prefix and suffix.indentsβ an array reference of indent strings to use when outputting the entries.reverse(legacy) β if true, releases will be output in reversed order.group_sort(legacy) β a code reference used to sort the groups in the releases.
π«Ά LEGACY METHODS π«Ά
delete_empty_groups
Removes empty groups. bye bye empties π¨
release
An alias for find_release.
π AUTHOR π
haarg - Graham Knop (cpan:HAARG) <haarg@haarg.org>
π CONTRIBUTORS π
Brian Cassidy <bricas@cpan.org>
β COPYRIGHT β
Copyright (c) 2011-2015 the CPAN::Changes "AUTHOR" and "CONTRIBUTORS" as listed above.
π LICENSE π
This library is free software and may be distributed under the same terms as perl itself. See <http://dev.perl.org/licenses/>.
ngl bestie, that's the whole page π no gatekeeping here.
okay so that's a wrap! this was CPAN::Changes(3) from perl v5.42.0, dated 2025-07-25 β screenshot it, save it, tattoo it on your arm, whatever you gotta do π«Άβ¨π
π¦ where this page comes from
- fedora 43: perl-CPAN-Changes 0.500005-2.fc43 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms