Perlcritic config -查找生成错误的策略名称



我正在尝试开始使用Perlcritic,并且我正在改进我自己的配置,删除所有我不同意或认为不适合我的规则。

我知道我可以使用. perlcriticrc文件来做到这一点,并且我可以使用该文件中的exclude指令来排除我不同意的策略,但是要做到这一点,我需要找到导致我想要抑制的错误的策略的名称。

我无法在任何地方的CPAN文档中找到策略列表,并且错误消息没有给出正在生成的策略的名称,因此我完全不知道应该如何生成排除列表。

如果有人能给我指出一种将错误映射到策略的方法,或者甚至只是给我指出一个核心策略的列表,我将非常感激!

非常不直观的——verbose标志是您想要的,根据如何使Perl::Critic在其输出中显示违规策略?

gdarcy@greg-pc:~$ perlcritic——verbose 8 src/Some/Module.pm[TestingAndDebugging::RequireUseStrict]在第19行,第1列启用结构之前的代码。(严重程度:5)[Variables::RequireLexicalLoopIterators]第1899行第4列的循环迭代器不是词法迭代器。(严重程度:5)[Variables::RequireLexicalLoopIterators]循环迭代器在第1911行第4列不是词法的。(严重程度:5)[Variables::RequireLexicalLoopIterators]第2487行第4列的循环迭代器不是词法的。(严重程度:5)[Variables::RequireLexicalLoopIterators]循环迭代器在第3902行第2列不是词法的。(严重程度:5)

在我工作的地方,我们有一个项目perlcriticrc文件,包含行

verbose = [%p] %m at line %l, column %c.  %e.  (Severity: %s)n

[%p]在命令行上显示与--verbose 8相似的策略

可能是Perl::Critic::PolicySummary

verbose设置为9将显示策略名称:

perlcritic --verbose 9

generatestats脚本可以通过MANIFEST链接在CPAN上找到,它显示了策略名称的摘要。

——exclude和——include选项最适合在命令行对策略集进行临时调整。要定义默认的策略集,您应该在.perlcriticrc文件中单独启用/禁用它们。这其实很简单:

$> perlcritic --profile-proto > ~/.perlcriticrc

现在~/。perlcriticrc将包含所有策略及其默认配置参数,以及每个策略的简要描述。通过在每个策略名称前加上'-'来禁用您不喜欢的策略,如下所示:

[TestingAndDebugging::RequireUseStrict]  # This policy is enabled (default)
[-TestingAndDebugging::RequireUseWarnings] # This policy is now disabled

默认情况下,Perl::Critic可以从您没有显式禁用的任何策略中进行选择。因此,如果您只打算使用少数几个策略,并且不想禁用97个不同的策略,那么请考虑使用——only选项,它告诉Perl::Critic只从您在.perlcriticrc.中显式启用的策略中进行选择。

请记住,.perlcriticrc文件只定义Perl::Critic可以选择的默认策略。您总是可以通过在命令行中覆盖——severity、——theme或——exclude选项来选择这些策略的子集。

正如其他人指出的那样,——verbose选项允许您配置每条消息显示的信息(包括策略名称等)。例如,如果您想查看"POLICY_NAME: MESSAGE at LINE",您可以这样做:

$> perlcritic --verbose '%p: %m at line %ln' MyModule.pm

为p::C::Policy命名空间中的模块查询CPAN索引。这包括在主P::C发行版中没有找到的策略。

$ cpan
cpan shell -- CPAN exploration and modules installation (v1.9800)
Enter 'h' for help.
cpan[1]> m /Perl::Critic::Policy::/
  Database was generated on Fri, 18 Nov 2011 14:38:48 GMT
Module  = Perl::Critic::Policy::Bangs::ProhibitBitwiseOperators (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitCommentedOutCode (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitFlagComments (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitNoPlan (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitNumberedNames (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitRefProtoOrProto (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitUselessRegexModifiers (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::Bangs::ProhibitVagueNames (PETDANCE/Perl-Critic-Bangs-1.08.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitBooleanGrep (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitComplexMappings (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitLvalueSubstr (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitReverseSortBlock (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitSleepViaSelect (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitStringyEval (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitStringySplit (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitUniversalCan (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitUniversalIsa (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitVoidGrep (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::ProhibitVoidMap (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::RequireBlockGrep (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::RequireBlockMap (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::RequireGlobFunction (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::BuiltinFunctions::RequireSimpleSortBlock (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ClassHierarchies::ProhibitAutoloading (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ClassHierarchies::ProhibitExplicitISA (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ClassHierarchies::ProhibitOneArgBless (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::ProhibitHardTabs (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::ProhibitHashBarewords (MARCELO/Perl-Critic-Itch-0.07.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::ProhibitParensWithBuiltins (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::ProhibitQuotedWordLists (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::ProhibitTrailingWhitespace (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::RequireASCII (ELLIOTJS/Perl-Critic-More-1.000.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::RequireConsistentNewlines (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::RequireFinalSemicolon (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::RequireTidyCode (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::RequireTrailingCommaAtNewline (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::CodeLayout::RequireTrailingCommas (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  < Perl::Critic::Policy::CodeLayout::RequireUseUTF8 (ELLIOTJS/Perl-Critic-Swift-v1.0.3.tar.gz)
Module  = Perl::Critic::Policy::Compatibility::ConstantLeadingUnderscore (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Compatibility::ConstantPragmaHash (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Compatibility::Gtk2Constants (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Compatibility::PerlMinimumVersionAndWhy (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Compatibility::PodMinimumVersion (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  < Perl::Critic::Policy::Compatibility::ProhibitThreeArgumentOpen (ELLIOTJS/Perl-Critic-Compatibility-1.001.tar.gz)
Module  = Perl::Critic::Policy::Compatibility::ProhibitUnixDevNull (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitCStyleForLoops (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitCascadingIfElse (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitDeepNests (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitLabelsWithSpecialBlockNames (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitMutatingListFunctions (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitPostfixControls (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitUnlessBlocks (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitUnreachableCode (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ControlStructures::ProhibitUntilBlocks (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Documentation::PodSpelling (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Documentation::ProhibitAdjacentLinks (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::ProhibitBadAproposMarkup (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::ProhibitLinkToSelf (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::ProhibitParagraphTwoDots (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::ProhibitUnbalancedParens (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::ProhibitVerbatimMarkup (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::RequireEndBeforeLastPod (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Documentation::RequireLinkedURLs (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  < Perl::Critic::Policy::Documentation::RequirePODUseEncodingUTF8 (ELLIOTJS/Perl-Critic-Swift-v1.0.3.tar.gz)
Module  = Perl::Critic::Policy::Documentation::RequirePackageMatchesPodName (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Documentation::RequirePodAtEnd (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Documentation::RequirePodLinksIncludeText (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Documentation::RequirePodSections (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  < Perl::Critic::Policy::Dynamic::NoIndirect (VPIT/Perl-Critic-Policy-Dynamic-NoIndirect-0.06.tar.gz)
Module  < Perl::Critic::Policy::Dynamic::ValidateAgainstSymbolTable (THALJEF/Perl-Critic-Dynamic-0.05.tar.gz)
Module  = Perl::Critic::Policy::Editor::RequireEmacsFileVariables (ELLIOTJS/Perl-Critic-More-1.000.tar.gz)
Module  = Perl::Critic::Policy::ErrorHandling::RequireCarping (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ErrorHandling::RequireCheckingReturnValueOfEval (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ErrorHandling::RequireUseOfExceptions (ELLIOTJS/Perl-Critic-More-1.000.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitBacktickOperators (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitBarewordFileHandles (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitExplicitStdin (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitInteractiveTest (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitJoinedReadline (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitOneArgSelect (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitReadlineInForLoop (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::ProhibitTwoArgOpen (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::RequireBracedFileHandleWithPrint (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::RequireBriefOpen (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::RequireCheckedClose (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::RequireCheckedOpen (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::RequireCheckedSyscalls (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::InputOutput::RequireEncodingWithUTF8Layer (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Lax::ProhibitComplexMappings::LinesNotStatements (RJBS/Perl-Critic-Lax-0.008.tar.gz)
Module  = Perl::Critic::Policy::Lax::ProhibitEmptyQuotes::ExceptAsFallback (RJBS/Perl-Critic-Lax-0.008.tar.gz)
Module  = Perl::Critic::Policy::Lax::ProhibitLeadingZeros::ExceptChmod (RJBS/Perl-Critic-Lax-0.008.tar.gz)
Module  = Perl::Critic::Policy::Lax::ProhibitStringyEval::ExceptForRequire (RJBS/Perl-Critic-Lax-0.008.tar.gz)
Module  = Perl::Critic::Policy::Lax::RequireEndWithTrueConst (RJBS/Perl-Critic-Lax-0.008.tar.gz)
Module  = Perl::Critic::Policy::Lax::RequireExplicitPackage::ExceptForPragmata (RJBS/Perl-Critic-Lax-0.008.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::ProhibitFormats (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::ProhibitTies (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::ProhibitUnrestrictedNoCritic (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::ProhibitUselessNoCritic (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::RequireRcsKeywords (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::TextDomainPlaceholders (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Miscellanea::TextDomainUnused (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Modules::PerlMinimumVersion (ELLIOTJS/Perl-Critic-More-1.000.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitAutomaticExportation (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitConditionalUseStatements (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitEvilModules (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitExcessMainComplexity (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitModuleShebang (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitMultiplePackages (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitPOSIXimport (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Modules::ProhibitUseQuotedVersion (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireBarewordIncludes (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireEndWithOne (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireExplicitInclusion (THALJEF/strictersubs/Perl-Critic-StricterSubs-0.03.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireExplicitPackage (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireFilenameMatchesPackage (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireNoMatchVarsWithUseEnglish (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequirePerlVersion (ELLIOTJS/Perl-Critic-More-1.000.tar.gz)
Module  = Perl::Critic::Policy::Modules::RequireVersionVar (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::NamingConventions::Capitalization (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::NamingConventions::ProhibitAmbiguousNames (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  < Perl::Critic::Policy::NamingConventions::ProhibitMixedCaseSubs (ELLIOTJS/Perl-Critic-Deprecated-1.108.tar.gz)
Module  < Perl::Critic::Policy::NamingConventions::ProhibitMixedCaseVars (ELLIOTJS/Perl-Critic-Deprecated-1.108.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitDumper (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitFetchrowHashref (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitLocaltime (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitLowPrecendeceOps (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitOpen (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitRequire (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::ProhibitSomeCoreFunctions (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::RequireCamelCase (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::RequireParensWithMethods (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  < Perl::Critic::Policy::OTRS::RequireTrueReturnValueForModules (RENEEB/Perl-Critic-OTRS-0.01.tar.gz)
Module  = Perl::Critic::Policy::Objects::ProhibitIndirectSyntax (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::References::ProhibitDoubleSigils (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitCaptureWithoutTest (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitComplexRegexes (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitEnumeratedClasses (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitEscapedMetacharacters (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitFixedStringMatches (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitSingleCharAlternation (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitUnusedCapture (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::ProhibitUnusualDelimiters (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::RequireBracesForMultiline (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::RequireDotMatchAnything (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::RequireExtendedFormatting (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::RegularExpressions::RequireLineBoundaryMatching (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Storable::ProhibitStoreOrFreeze (MATTD/Perl-Critic-Storable-0.01.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitAmpersandSigils (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitBuiltinHomonyms (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitCallsToUndeclaredSubs (THALJEF/strictersubs/Perl-Critic-StricterSubs-0.03.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitCallsToUnexportedSubs (THALJEF/strictersubs/Perl-Critic-StricterSubs-0.03.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitExcessComplexity (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitExplicitReturnUndef (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitExportingUndeclaredSubs (THALJEF/strictersubs/Perl-Critic-StricterSubs-0.03.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitManyArgs (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitNestedSubs (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitQualifiedSubDeclarations (THALJEF/strictersubs/Perl-Critic-StricterSubs-0.03.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitReturnSort (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitSubroutinePrototypes (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProhibitUnusedPrivateSubroutines (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::ProtectPrivateSubs (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::RequireArgUnpacking (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Subroutines::RequireFinalReturn (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::TestingAndDebugging::ProhibitNoStrict (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::TestingAndDebugging::ProhibitNoWarnings (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::TestingAndDebugging::ProhibitProlongedStrictureOverride (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::TestingAndDebugging::RequireTestLabels (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::TestingAndDebugging::RequireUseStrict (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::TestingAndDebugging::RequireUseWarnings (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Tics::ProhibitLongLines (RJBS/Perl-Critic-Tics-0.006.tar.gz)
Module  = Perl::Critic::Policy::Tics::ProhibitManyArrows (RJBS/Perl-Critic-Tics-0.006.tar.gz)
Module  = Perl::Critic::Policy::Tics::ProhibitUseBase (RJBS/Perl-Critic-Tics-0.006.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ConstantBeforeLt (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::NotWithCompare (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitAccessOfPrivateData (KCOWGILL/Perl-Critic-Nits-v1.0.0.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitArrayAssignAref (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitBarewordDoubleColon (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitCommaSeparatedStatements (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitComplexVersion (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitConstantPragma (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitEmptyCommas (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitEmptyQuotes (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitEscapedCharacters (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitFiletest_f (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitImplicitNewlines (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitLeadingZeros (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitLongChainsOfMethodCalls (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitMagicNumbers (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitMismatchedOperators (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitMixedBooleanOperators (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitNoisyQuotes (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitNullStatements (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitSpecialLiteralHeredocTerminator (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitUnknownBackslash (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::ProhibitVersionStrings (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RequireConstantVersion (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RequireInterpolationOfMetachars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RequireNumberSeparators (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RequireNumericVersion (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RequireQuotedHeredocTerminator (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RequireUpperCaseHeredocTerminator (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::RestrictLongStrings (ELLIOTJS/Perl-Critic-More-1.000.tar.gz)
Module  = Perl::Critic::Policy::ValuesAndExpressions::UnexpandedSpecialLiteral (KRYDE/Perl-Critic-Pulp-65.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitConditionalDeclarations (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitEvilVariables (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitLocalVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitMatchVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitPackageVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitPerl4PackageNames (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitPunctuationVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitReusedNames (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitUnusedVariables (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProhibitUselessInitialization (JTRAMMELL/Perl-Critic-PetPeeves-JTRAMMELL-0.02.tar.gz)
Module  = Perl::Critic::Policy::Variables::ProtectPrivateVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::RequireInitializationForLocalVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::RequireLexicalLoopIterators (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::RequireLocalizedPunctuationVars (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  = Perl::Critic::Policy::Variables::RequireNegativeIndices (ELLIOTJS/Perl-Critic-1.116.tar.gz)
Module  < Perl::Critic::Policy::logicLAB::ProhibitShellDispatch (JONASBN/Perl-Critic-Policy-logicLAB-ProhibitShellDispatch-0.01.tar.gz)
Module  < Perl::Critic::Policy::logicLAB::ProhibitUseLib (JONASBN/Perl-Critic-Policy-logicLAB-ProhibitUseLib-0.01.tar.gz)
Module  < Perl::Critic::Policy::logicLAB::RequireSheBang (JONASBN/Perl-Critic-Policy-logicLAB-RequireSheBang-0.03.tar.gz)
Module  = Perl::Critic::Policy::logicLAB::RequireVersionFormat (JONASBN/Perl-Critic-Policy-logicLAB-RequireVersionFormat-0.03.tar.gz)
225 items found

最新更新