Perl-Critic icon indicating copy to clipboard operation
Perl-Critic copied to clipboard

Specifying verbose in .perlcriticrc does bizarre things

Open epa opened this issue 1 year ago • 0 comments

% mkdir x
% cd x
% echo 'verbose = "%f:%l:%c:%m [%p] (%e)\n"' >.perlcriticrc
% touch y
% perlcritic --brutal y
Operator or semicolon missing before %f at (eval 68) line 1.
Ambiguous use of % resolved as operator % at (eval 68) line 1.
Backslash found where operator expected at (eval 68) line 1, near ")\"
        (Missing operator before \?)
String found where operator expected at (eval 68) line 1, near "n"""
Fatal error while critiquing "y": Bareword "f" not allowed while "strict subs" in use at (eval 68) line 1.
syntax error at (eval 68) line 1, near "f:"
Global symbol "%l" requires explicit package name (did you forget to declare "my %l"?) at (eval 68) line 1.
Global symbol "%c" requires explicit package name (did you forget to declare "my %c"?) at (eval 68) line 1.
Global symbol "%m" requires explicit package name (did you forget to declare "my %m"?) at (eval 68) line 1.
Global symbol "%p" requires explicit package name (did you forget to declare "my %p"?) at (eval 68) line 1.
Global symbol "%e" requires explicit package name (did you forget to declare "my %e"?) at (eval 68) line 1.
 at /usr/share/perl5/vendor_perl/Perl/Critic/Utils.pm line 331.
        Perl::Critic::Utils::interpolate("\"%f:%l:%c:%m [%p] (%e)\\n\"") called at /usr/share/perl5/vendor_perl/Perl/Critic/Utils.pm line 1041
        Perl::Critic::Utils::verbosity_to_format("\"%f:%l:%c:%m [%p] (%e)\\n\"") called at /usr/share/perl5/vendor_perl/Perl/Critic/Command.pm line 311
        Perl::Critic::Command::_render_report("y", HASH(0x55b85e725040), Perl::Critic::Violation=HASH(0x55b86194ef38)) called at /usr/share/perl5/vendor_perl/Perl/Critic/Command.pm line 243
        eval {...} called at /usr/share/perl5/vendor_perl/Perl/Critic/Command.pm line 248
        Perl::Critic::Command::_critique(HASH(0x55b85e725040), "y") called at /usr/share/perl5/vendor_perl/Perl/Critic/Command.pm line 64
        Perl::Critic::Command::run() called at /usr/bin/perlcritic line 20

This with 1.150. I had expected to specify verbose in the file in the same way as it would be given on the command line.

epa avatar Aug 16 '23 09:08 epa