CPAN::Changes::Release − Information about a particular release
my $rel =
CPAN::Changes::Release−>new(
version => '0.01',
date => '2009−07−06',
);
$rel−>add_changes(
{ group => 'THINGS THAT MAY BREAK YOUR CODE' },
'Return a Foo object instead of a Bar object in foobar()'
);
A changelog is made up of one or more releases. This object provides access to all of the key data that embodies a release including the version number, date of release, and all of the changelog information lines. Any number of changelog lines can be grouped together under a heading.
new( %args
)
Creates a new release object, using %args as the default
data.
version( [
$version ] )
Gets/sets the version number for this release.
date( [
$date ] )
Gets/sets the date for this release.
note( [
$note ] )
Gets/sets the note for this release.
changes( [
$group ] )
Gets the list of changes for this release as a hashref of
group/changes pairs. If a group name is specified, an array
ref of changes for that group is returned. Should that group
not exist, undef is returned.
add_changes(
[ \%options ], @changes )
Appends a list of changes to the release. Specifying a
"group" option appends them to that particular
group. NB: the default group is represented
by and empty string.
# Append to
default group
$release−>add_changes( 'Added foo() function' );
# Append to a particular group
$release−>add_changes( { group => 'Fixes' },
'Fixed foo() function' );
set_changes(
[ \%options ], @changes )
Replaces the existing list of changes with the supplied
values. Specifying a "group" option will only
replace change items in that group.
clear_changes(
)
Clears all changes from the release.
groups( sort
=> \&sorting_function )
Returns a list of current groups in this release.
If sort is provided, groups are sorted according to the given function. If not, they are sorted alphabetically.
add_group(
@groups )
Creates an empty group under the names provided.
delete_group(
@groups )
Deletes the groups of changes specified.
delete_empty_groups(
)
Deletes all groups that don’t contain any changes.
serialize(
group_sort => \&sorting_function )
Returns the release data as a string, suitable for inclusion
in a Changes file.
If group_sort is provided, change groups are sorted according to the given function. If not, groups are sorted alphabetically.
get_group( [
$name ] )
Returns the internal CPAN::Changes::Group object for the
group $name.
If $name is not specified, the "default" group "('')" will be returned.
If $name does not exist, a CPAN::Changes::Group object will be created, and returned.
attach_group(
$group_object )
Attach a CPAN::Changes::Group object to the
"::Release". Note that the name is not
specified, as it is instead determined from
"$group_object−>name"
group_values(
sort => \&sorting_function )
Works like "groups" but instead returns
"CPAN::Changes::Group" compatible objects.
• |
CPAN::Changes::Spec |
|||
• |
CPAN::Changes |
|||
• |
Test::CPAN::Changes |
Brian Cassidy <bricas@cpan.org>
Copyright 2011−2013 by Brian Cassidy
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.