App-Changelord/lib/App/Changelord.pm

46 lines
1.0 KiB
Perl

package App::Changelord;
# ABSTRACT: cli-based changelog manager
use 5.36.0;
use Moo;
use CLI::Osprey
desc => 'changelog manager';
use YAML;
use List::AllUtils qw/ pairmap partition_by /;
use App::Changelord::Role::ChangeTypes;
sub run($self) {
App::Changelord::Command::Print->new(
parent_command => $self,
)->run;
}
subcommand $_ => 'App::Changelord::Command::' . ucfirst $_ =~ s/-(.)/uc $1/er
for qw/ schema validate version bump init add git-gather print /;
1;
__END__
=head1 DESCRIPTION
C<App::Changelord> offers a collection of cli commands to
interact with a YAML-based CHANGELOG file format, from which
a Markdown CHANGELOG fit for general comsumption can be generated.
See the original blog entry in the C<SEE ALSO> section for the full
motivation.
For a list of the commands, C<changelord --help>, then to
get information on the individual commands C<changelord *subcommand* --man>.
=head1 SEE ALSO
L<Changelord, registrar of deeds extraordinaire|https://techblog.babyl.ca/entry/changelord> - the introducing blog entry.