lintian/.perlcriticrc

459 lines
9.9 KiB
Plaintext

# -*- conf -*-
# the list of checks could perhaps be moved to t/scripts/critic.pl.
verbose = 1
# severity is ignored for our main purposes, see below
severity = 1
criticism-fatal = 1
color = 1
allow-unsafe = 1
# to try some other stuff, uncomment the following
# theme = security || bugs || complexity || maintenance
# use a whitelist; the disabling config blocks below are for documentation only
only = 1
# use separate blocks below instead of long Lines in include
include =
[BuiltinFunctions::ProhibitBooleanGrep]
[BuiltinFunctions::ProhibitComplexMappings]
[BuiltinFunctions::ProhibitLvalueSubstr]
[BuiltinFunctions::ProhibitReverseSortBlock]
[BuiltinFunctions::ProhibitShiftRef]
[BuiltinFunctions::ProhibitSleepViaSelect]
[BuiltinFunctions::ProhibitStringyEval]
allow_includes = 1
[BuiltinFunctions::ProhibitStringySplit]
[BuiltinFunctions::ProhibitUniversalCan]
[BuiltinFunctions::ProhibitUniversalIsa]
[BuiltinFunctions::ProhibitUselessTopic]
[BuiltinFunctions::ProhibitVoidGrep]
[BuiltinFunctions::ProhibitVoidMap]
[BuiltinFunctions::RequireBlockGrep]
[BuiltinFunctions::RequireBlockMap]
[BuiltinFunctions::RequireGlobFunction]
[BuiltinFunctions::RequireSimpleSortBlock]
[ClassHierarchies::ProhibitAutoloading]
[ClassHierarchies::ProhibitExplicitISA]
[ClassHierarchies::ProhibitOneArgBless]
[-CodeLayout::ProhibitFatCommaNewline]
[-CodeLayout::ProhibitIfIfSameLine]
[CodeLayout::ProhibitHardTabs]
[-CodeLayout::ProhibitParensWithBuiltins]
[CodeLayout::ProhibitQuotedWordLists]
[CodeLayout::ProhibitTrailingWhitespace]
[-CodeLayout::RequireConsistentNewlines]
[-CodeLayout::RequireFinalSemicolon]
[CodeLayout::RequireTidyCode]
[-CodeLayout::RequireTrailingCommaAtNewline]
[-CodeLayout::RequireTrailingCommas]
[ControlStructures::ProhibitCStyleForLoops]
[-ControlStructures::ProhibitCascadingIfElse]
[-ControlStructures::ProhibitDeepNests]
[ControlStructures::ProhibitLabelsWithSpecialBlockNames]
[ControlStructures::ProhibitMutatingListFunctions]
[ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions]
[-ControlStructures::ProhibitPostfixControls]
[-ControlStructures::ProhibitUnlessBlocks]
[ControlStructures::ProhibitUnreachableCode]
[ControlStructures::ProhibitUntilBlocks]
[ControlStructures::ProhibitYadaOperator]
[-Compatibility::ConstantPragmaHash]
[-Compatibility::ConstantLeadingUnderscore]
[-Compatibility::Gtk2Constants]
[-Compatibility::PerlMinimumVersionAndWhy]
[-Compatibility::PodMinimumVersion]
[-Compatibility::ProhibitUnixDevNull]
[-Documentation::PodSpelling]
[-Documentation::ProhibitAdjacentLinks]
[Documentation::ProhibitDuplicateHeadings]
[Documentation::ProhibitDuplicateSeeAlso]
[Documentation::ProhibitBadAproposMarkup]
[Documentation::ProhibitLinkToSelf]
[Documentation::ProhibitParagraphEndComma]
[Documentation::ProhibitParagraphTwoDots]
[Documentation::ProhibitUnbalancedParens]
[-Documentation::ProhibitVerbatimMarkup]
[-Documentation::RequireEndBeforeLastPod]
[-Documentation::RequireFilenameMarkup]
[-Documentation::RequireFinalCut]
[-Documentation::RequireLinkedURLs]
[Documentation::RequirePackageMatchesPodName]
[-Documentation::RequirePodAtEnd]
[-Documentation::RequirePodSections]
[-ErrorHandling::RequireCarping]
[-ErrorHandling::RequireCheckingReturnValueOfEval]
[Community::AmpersandSubCalls]
[Community::ArrayAssignAref]
[Community::BarewordFilehandles]
[Community::ConditionalDeclarations]
[Community::ConditionalImplicitReturn]
[Community::DeprecatedFeatures]
[Community::DiscouragedModules]
[Community::DollarAB]
[Community::Each]
[Community::EmptyReturn]
[Community::IndirectObjectNotation]
[Community::LexicalForeachIterator]
[Community::LoopOnHash]
[-Community::ModPerl]
[Community::MultidimensionalArrayEmulation]
[Community::OpenArgs]
[Community::OverloadOptions]
[Community::PackageMatchesFilename]
[Community::POSIXImports]
[Community::PreferredAlternatives]
[Community::Prototypes]
[Community::StrictWarnings]
[Community::Threads]
[Community::Wantarray]
[Community::WarningsSwitch]
[Community::WhileDiamondDefaultAssignment]
[InputOutput::ProhibitBacktickOperators]
[InputOutput::ProhibitBarewordFileHandles]
[-InputOutput::ProhibitExplicitStdin]
[InputOutput::ProhibitInteractiveTest]
[InputOutput::ProhibitJoinedReadline]
[-InputOutput::ProhibitOneArgSelect]
[InputOutput::ProhibitReadlineInForLoop]
[-InputOutput::ProhibitTwoArgOpen]
# not needed with Community::OpenArgs
[InputOutput::RequireBracedFileHandleWithPrint]
[-InputOutput::RequireBriefOpen]
[-InputOutput::RequireCheckedClose]
[-InputOutput::RequireCheckedOpen]
[InputOutput::RequireCheckedSyscalls]
functions = open opendir chdir read readdir readline closedir sysopen sysread sysclose mkdir link pipe readlink unlink rename symlink fork
# possible TODO: close
[-InputOutput::RequireEncodingWithUTF8Layer]
[Miscellanea::ProhibitFormats]
[-Miscellanea::ProhibitTies]
[Miscellanea::ProhibitUnrestrictedNoCritic]
[Miscellanea::ProhibitUselessNoCritic]
[-Miscellanea::TextDomainPlaceholders]
[-Miscellanea::TextDomainUnused]
[Modules::ProhibitAutomaticExportation]
[Modules::ProhibitConditionalUseStatements]
[Modules::ProhibitEvilModules]
[-Modules::ProhibitExcessMainComplexity]
# Maybe some day...
[Modules::ProhibitModuleShebang]
[Modules::ProhibitMultiplePackages]
[-Modules::ProhibitPOSIXimport]
# not needed with Community::POSIXImports
[Modules::ProhibitUseQuotedVersion]
[Modules::RequireBarewordIncludes]
[Modules::RequireEndWithOne]
[Modules::RequireExplicitPackage]
[-Modules::RequireFilenameMatchesPackage]
# not needed with Community::PackageMatchesFilename
[Modules::RequireNoMatchVarsWithUseEnglish]
[-Modules::RequireVersionVar]
# We don't use package versions atm and even if we did, it probably
# won't have full coverage anyway.
[NamingConventions::Capitalization]
[NamingConventions::ProhibitAmbiguousNames]
[Objects::ProhibitIndirectSyntax]
[References::ProhibitDoubleSigils]
[-RegularExpressions::ProhibitCaptureWithoutTest]
[-RegularExpressions::ProhibitComplexRegexes]
[-RegularExpressions::ProhibitEnumeratedClasses]
[-RegularExpressions::ProhibitEscapedMetacharacters]
[RegularExpressions::ProhibitFixedStringMatches]
[RegularExpressions::ProhibitSingleCharAlternation]
[RegularExpressions::ProhibitUnusedCapture]
[RegularExpressions::ProhibitUnusualDelimiters]
allow_all_brackets = 1
[RegularExpressions::ProhibitUselessTopic]
[RegularExpressions::RequireBracesForMultiline]
allow_all_brackets = 1
[-RegularExpressions::RequireDotMatchAnything]
[-RegularExpressions::RequireExtendedFormatting]
[-RegularExpressions::RequireLineBoundaryMatching]
[-Subroutines::ProhibitAmpersandSigils]
# not needed with Community::AmpersandSubCalls
[Subroutines::ProhibitBuiltinHomonyms]
[-Subroutines::ProhibitExcessComplexity]
[-Subroutines::ProhibitExplicitReturnUndef]
[-Subroutines::ProhibitManyArgs]
[Subroutines::ProhibitNestedSubs]
[Subroutines::ProhibitReturnSort]
[-Subroutines::ProhibitSubroutinePrototypes]
# not needed with Community::Prototypes
[Subroutines::ProhibitUnusedPrivateSubroutines]
[Subroutines::ProtectPrivateSubs]
[Subroutines::RequireArgUnpacking]
[Subroutines::RequireFinalReturn]
terminal_funcs = CORE::exec fatal_error internal_error Lintian::Util::internal_error Die error
[TestingAndDebugging::ProhibitNoStrict]
[-TestingAndDebugging::ProhibitNoWarnings]
[-TestingAndDebugging::ProhibitProlongedStrictureOverride]
[-TestingAndDebugging::RequireTestLabels]
[-TestingAndDebugging::RequireUseStrict]
# not needed with Community::StrictWarnings]
[-TestingAndDebugging::RequireUseWarnings]
# not needed with Community::StrictWarnings]
[ValuesAndExpressions::ConstantBeforeLt]
[ValuesAndExpressions::NotWithCompare]
[-ValuesAndExpressions::ProhibitArrayAssignAref]
# not needed with Community::ArrayAssignAref
[ValuesAndExpressions::ProhibitBarewordDoubleColon]
[ValuesAndExpressions::ProhibitCommaSeparatedStatements]
[-ValuesAndExpressions::ProhibitComplexVersion]
[-ValuesAndExpressions::ProhibitConstantPragma]
[ValuesAndExpressions::ProhibitDuplicateHashKeys]
[ValuesAndExpressions::ProhibitEmptyCommas]
[ValuesAndExpressions::ProhibitEmptyQuotes]
[-ValuesAndExpressions::ProhibitEscapedCharacters]
[ValuesAndExpressions::ProhibitFiletest_f]
[ValuesAndExpressions::ProhibitImplicitNewlines]
[ValuesAndExpressions::ProhibitInterpolationOfLiterals]
[ValuesAndExpressions::ProhibitLeadingZeros]
[ValuesAndExpressions::ProhibitLongChainsOfMethodCalls]
[ValuesAndExpressions::ProhibitMagicNumbers]
[ValuesAndExpressions::ProhibitMismatchedOperators]
[ValuesAndExpressions::ProhibitMixedBooleanOperators]
[ValuesAndExpressions::ProhibitNoisyQuotes]
[ValuesAndExpressions::ProhibitNullStatements]
[ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters]
[ValuesAndExpressions::ProhibitSpecialLiteralHeredocTerminator]
[ValuesAndExpressions::ProhibitUnknownBackslash]
[-ValuesAndExpressions::ProhibitVersionStrings]
[-ValuesAndExpressions::RequireConstantVersion]
[-ValuesAndExpressions::RequireInterpolationOfMetachars]
[ValuesAndExpressions::RequireNumberSeparators]
[-ValuesAndExpressions::RequireNumericVersion]
[ValuesAndExpressions::RequireQuotedHeredocTerminator]
[ValuesAndExpressions::RequireUpperCaseHeredocTerminator]
[ValuesAndExpressions::UnexpandedSpecialLiteral]
[Variables::ProhibitAugmentedAssignmentInDeclaration]
[Variables::ProhibitConditionalDeclarations]
[-Variables::ProhibitEvilVariables]
[-Variables::ProhibitLocalVars]
[Variables::ProhibitMatchVars]
[Variables::ProhibitPackageVars]
add_packages = Devel::Size Module::CoreList Text::Wrap YAML::XS
[Variables::ProhibitPerl4PackageNames]
[-Variables::ProhibitPunctuationVars]
# Requires "use English" and our style is against that.
[Variables::ProhibitReusedNames]
[Variables::ProhibitUnusedVariables]
[Variables::ProtectPrivateVars]
[Variables::RequireInitializationForLocalVars]
[Variables::RequireLexicalLoopIterators]
[Variables::RequireLocalizedPunctuationVars]
allow = %ENV %SIG $! $? $0
[Variables::RequireNegativeIndices]