Select Git revision
.perlcriticrc 6.50 KiB
#severity = gentle
severity = stern
only = 0
force = 0
verbose = 8
top = 10
theme = (core || pbp || security || bugs || complexity || maintenance || cosmetic || pulp || bangs ||certrec || certrule ) && !more
# more
color = 1
# Tell us which rule this violated, so we can tell it to get lost
verbose = [%p] %m at %f line %l, near '%r'\n
### rules
### Git
# We use git, not svn or RCS
[-Miscellanea::RequireRcsKeywords]
# We'll enforce dependencies in other ways, rather than magically putting
# a $VERSION variable in modules.
[-Modules::RequireVersionVar]
### Modern Perl
# We'll run on at least perl 5.30
[Compatibility::PodMinimumVersion]
above_version = 5.031
# So don't badger us about explicitly declaring which version of Perl we
# require
[-Compatibility::PerlMinimumVersionAndWhy]
# Perltidy is a judgement call.
[-CodeLayout::RequireTidyCode]
# Damian Conway's insistence that the literal '' or "" in a proper
# monospaced font is difficult to read is frankly bizarre.
[-ValuesAndExpressions::ProhibitEmptyQuotes]
[-ValuesAndExpressions::ProhibitNoisyQuotes]
# reverse sort @array is indeed better than
# sort { $b cmp $a } @array
# I'm not so sure about hating on $b vs $a in e.g.
# sort { $b->{stuff} <=> $a->{stuff} }
[-BuiltinFunctions::ProhibitReverseSortBlock]
# This is overridden by the better rule RequireCheckedSyscalls
[-InputOutput::RequireCheckedClose]
# There's muscle memory of always adding /xms to a regex, and then there's
# typing for the hell of it.
[-RegularExpressions::RequireDotMatchAnything]
[-RegularExpressions::RequireLineBoundaryMatching]
# Inline POD is good, dammit.
[-Documentation::RequirePodAtEnd]
# These are internal Perl modules. They don't need all these sections.
[-Documentation::RequirePodSections]
# We throw structured exceptions all the time. Carp would be a bad idea
# here.
[-ErrorHandling::RequireCarping]
###
[Bangs::ProhibitDebuggingModules]
severity = 3
[Bangs::ProhibitNumberedNames]
exceptions = md5 utf8 sha1 sha2 sha512
severity = 3