Provided by: libcpan-changes-perl_0.400002-3_all
NAME
CPAN::Changes::Release - Information about a particular release
SYNOPSIS
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()' );
DESCRIPTION
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.
METHODS
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.
SEE ALSO
• CPAN::Changes::Spec • CPAN::Changes • Test::CPAN::Changes
AUTHOR
Brian Cassidy <bricas@cpan.org>
COPYRIGHT AND LICENSE
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.