1severity = 3
2verbose = 11
3theme = (core && (pbp || bugs || maintenance || cosmetic || complexity || security || tests)) || moose
4program-extensions = pl psgi t
5
6exclude = Subroutines::ProhibitCallsToUndeclaredSubs
7
8[BuiltinFunctions::ProhibitStringySplit]
9severity = 3
10
11[CodeLayout::RequireTrailingCommas]
12severity = 3
13
14[ControlStructures::ProhibitCStyleForLoops]
15severity = 3
16
17[InputOutput::RequireCheckedSyscalls]
18functions = :builtins
19exclude_functions = sleep
20severity = 3
21
22[RegularExpressions::ProhibitComplexRegexes]
23max_characters = 200
24
25[RegularExpressions::ProhibitUnusualDelimiters]
26severity = 3
27
28[Subroutines::ProhibitUnusedPrivateSubroutines]
29private_name_regex = _(?!build)\w+
30
31[TestingAndDebugging::ProhibitNoWarnings]
32allow = redefine
33
34[ValuesAndExpressions::ProhibitEmptyQuotes]
35severity = 3
36
37[ValuesAndExpressions::ProhibitInterpolationOfLiterals]
38severity = 3
39
40[ValuesAndExpressions::RequireUpperCaseHeredocTerminator]
41severity = 3
42
43[Variables::ProhibitPackageVars]
44add_packages = Carp Test::Builder
45
46[-Subroutines::RequireFinalReturn]
47
48# This incorrectly thinks signatures are prototypes.
49[-Subroutines::ProhibitSubroutinePrototypes]
50
51[-ErrorHandling::RequireCarping]
52
53# No need for /xsm everywhere
54[-RegularExpressions::RequireDotMatchAnything]
55[-RegularExpressions::RequireExtendedFormatting]
56[-RegularExpressions::RequireLineBoundaryMatching]
57
58# http://stackoverflow.com/questions/2275317/why-does-perlcritic-dislike-using-shift-to-populate-subroutine-variables
59[-Subroutines::RequireArgUnpacking]
60
61# "use v5.14" is more readable than "use 5.014"
62[-ValuesAndExpressions::ProhibitVersionStrings]
63
64# Explicitly returning undef is a _good_ thing in many cases, since it
65# prevents very common errors when using a sub in list context to construct a
66# hash and ending up with a missing value or key.
67[-Subroutines::ProhibitExplicitReturnUndef]
68
69# Sometimes I want to write "return unless $x > 4"
70[-ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions]
71