CPAN::Changes::Group(3) A group of related change information within a release

SYNOPSIS


my $rel = CPAN::Changes::Release->new(
version => '0.01',
date => '2009-07-06',
);
my $grp = CPAN::Changes::Group->new(
name => 'BugFixes',
);
$grp->add_changes(
'Return a Foo object instead of a Bar object in foobar()'
);
$rel->attach_group( $grp ); # clobbers existing group if present.

DESCRIPTION

A release is made up of several groups. This object provides access to all of the key data that embodies a such a group.

For instance:

  0.27 2013-12-13
  - Foo
  [ Spec Changes ]
  - Bar

Here, there are two groups, the second one, " Spec Changes " and the first with the empty label "q[]".

METHODS

new( %args )

Creates a new group object, using %args as the default data.

  Group->new(
      name => 'Some Group Name',
      changes    => [ ],
  );

name()

Returns the name of the group itself.

changes( [ $group ] )

Gets the list of changes for this group as an arrayref of changes.

add_changes( @changes )

Appends a list of changes to the group.

    $group->add_changes( 'Added foo() function' );

set_changes( @changes )

Replaces the existing list of changes with the supplied values.

clear_changes( )

Clears all changes from the group.

groups( sort => \&sorting_function )

Returns a list of current groups in this release.

is_empty()

Returns whether or not the given group has changes.

serialize()

Returns the group data as a string, suitable for inclusion in a Changes file.

AUTHOR

Brian Cassidy <[email protected]>

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.