App-GitHooks
view release on metacpan or search on metacpan
lib/App/GitHooks/Hook/CommitMsg.pm view on Meta::CPAN
: '/dev/tty';
open( STDIN, '<', $console ); ## no critic (InputOutput::RequireCheckedOpen)
# If the terminal isn't interactive, we won't have a human available to fix the
# problems so we just let the commit go as is.
my $config = $app->get_config();
my $force_interactive = $config->get( 'testing', 'force_interactive' );
return $HOOK_EXIT_SUCCESS
if !$app->get_terminal()->is_interactive() && !$force_interactive;
# Analyze the commit message and prompt the user to fix it if needed until it
# passes the checks.
my $has_errors = 0;
while ( 1 )
{
# Retrieve the commit message.
my $command_line_arguments = $app->get_command_line_arguments();
my $commit_message_file = $command_line_arguments->[0];
my $commit_message = App::GitHooks::CommitMessage->new(
message => Path::Tiny::path( $commit_message_file )->slurp_utf8() // '',
app => $app,
( run in 2.145 seconds using v1.01-cache-2.11-cpan-6aa56a78535 )