NAME

App::GitHooks::Plugin::ValidateChangelogFormat - Validate the format of changelog files.

DESCRIPTION

This plugin verifies that the changes log conforms to the specifications outlined in CPAN::Changes::Spec.

VERSION

Version 1.1.0

CONFIGURATION OPTIONS

This plugin supports the following options in the [ValidateChangelogFormat] section of your .githooksrc file.

        [ValidateChangelogFormat]
        version_format_regex = /^v\d+\.\d+\.\d+$/
        date_format_regex = /^\d{4}-\d{2}-\d{2}$/

version_format_regex

A regular expression that will be checked against the version number for each release listed in the change log.

        version_format_regex = /^v\d+\.\d+\.\d+$/

By default, this plugin allows the versioning schemes described in "Version-Formats" in CPAN::Meta::Spec.

date_format_regex

A regular expression that will be checked against the date for each release listed in the change log.

        date_format_regex = /^\d{4}-\d{2}-\d{2}$/

By default, this plugin allows the date formats listed in "Date" in CPAN::Changes::Spec.

METHODS

get_file_pattern()

Return a pattern to filter the files this plugin should analyze.

        my $file_pattern = App::GitHooks::Plugin::ValidateChangelogFormat->get_file_pattern(
                app => $app,
        );

By default, this catches files named changes or changelog, with an optional extension of .md or .pod. The name of the files is not case sensitive.

get_file_check_description()

Return a description of the check performed on files by the plugin and that will be displayed to the user, if applicable, along with an indication of the success or failure of the plugin.

        my $description = App::GitHooks::Plugin::ValidateChangelogFormat->get_file_check_description();

run_pre_commit_file()

Code to execute for each file as part of the pre-commit hook.

        my $success = App::GitHooks::Plugin::ValidateChangelogFormat->run_pre_commit_file();

The code in this subroutine is mostly adapted from Test::CPAN::Changes.

SEE ALSO

BUGS

Please report any bugs or feature requests through the web interface at https://github.com/guillaumeaubert/App-GitHooks-Plugin-ValidateChangelogFormat/issues/new. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

        perldoc App::GitHooks::Plugin::ValidateChangelogFormat

You can also look for information at:

AUTHOR

Guillaume Aubert, <aubertg at cpan.org>.

COPYRIGHT & LICENSE

Copyright 2015-2017 Guillaume Aubert.

This code is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LICENSE file for more details.