3

我有:

  • Ubuntu 10.04
  • Perlbrew 0.39
  • 切换到 Perl 5.12.3。用 perlbrew
  • 使用 cpanm 安装 Perl::Critic 和 Perl::Critic::Tics

我的 .perlcriticrc 文件:

severity = 1
only= 1

[CodeLayout::ProhibitHardTabs]
allow_leading_tabs = 0

[Perl::Critic::Policy::CodeLayout::RequireConsistentNewlines]

[Perl::Critic::Policy::Tics::ProhibitLongLines]
base_max = 120
hard_max = 130
pct_allowed = 5

[Perl::Critic::Policy::OTRS::RequireCamelCase]

其他策略按预期运行,但只要一行超过 hard_max 定义的长度,我就会收到错误消息:

Use of uninitialized value $min_width in numeric gt (>) at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 51.
Use of uninitialized value $replength in numeric gt (>) at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 51.
Use of uninitialized value $max_width in numeric gt (>) at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 56.
Use of uninitialized value $replength in numeric gt (>) at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 56.
Use of uninitialized value $replength in subtraction (-) at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 67.
Use of uninitialized value $min_width in subtraction (-) at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 67.
Use of uninitialized value $replacement in concatenation (.) or string at /home/birdy/perl5/perlbrew/perls/perl-5.12.3/lib/site_perl/5.12.3/String/Format.pm line 67.

感谢您抽出宝贵时间,如果您需要任何其他信息,请告诉我。

4

1 回答 1

1

这对我来说似乎是一个错误。即使我完全忽略我的.perlcriticrc文件,我也会收到相同的警告:

perlcritic -1 --noprofile mycode.pl

我在 perl 5.12.2 上。

您应该针对Perl::Critic::Tics提交错误报告。我已经检查了Perl::Critic和Perl::Critic的文件,但我没有找到任何与. 确保您拥有和的最新版本。我有电流(0.006),但我的有点过时(1.111)。ChangesTicsString::FormatCriticTicsTicsCritic

于 2012-02-10T17:55:16.297 回答