# Show the severity level
severity = 1

# Basically show what profile is complaining
verbose = %f:%l:%c: %m, %e (%p, severity %s)\n

# Don't warn on these variables
[Variables::ProhibitPunctuationVars]
allow = $@ $!

# Ignore syscall returns on print, it not actually returning is... whatever.
[InputOutput::RequireCheckedSyscalls]
exclude_functions = print say

# Allow things like print qx(somecmd) in a void context to work, this is ok.
[InputOutput::ProhibitBacktickOperators]
only_in_void_context = 1

# I actually like using unless... so don't piss me off whinging about it
[-ControlStructures::ProhibitUnlessBlocks]

# The following only apply to modules
[-Modules::RequireVersionVar]
[-ErrorHandling::RequireCarping]

# Tabs suck, no
[CodeLayout::ProhibitHardTabs]
allow_leading_tabs = 0

# For small regexes, no /x at the end is fine, 12 should be enough
[RegularExpressions::RequireExtendedFormatting]
minimum_regex_length_to_complain_about = 12

# These are kosher kthxbai
[ControlStructures::ProhibitPostfixControls]
allow = for if until unless

# For POE, we do things like my $foo = $_[HEAP]; and thats OK
[Subroutines::RequireArgUnpacking]
allow_subscripts = 1

# For POD documentation, I don't care about required sections.
[Documentation::RequirePodSections]
lib_sections = NAME | SYNOPSIS | DESCRIPTION | AUTHOR | COPYRIGHT | SEE ALSO
script_sections = NAME | SYNOPSIS | DESCRIPTION | AUTHOR | COPYRIGHT | SEE ALSO

# This is for POD documentation mainly.
[CodeLayout::ProhibitHardTabs]
allow_leading_tabs = 1
