The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

# $Id: perlcriticrc 386 2009-01-08 13:50:49Z jonasbn $

severity = 3
verbose  = 8

#------------------------------------------------------------------------------

[Documentation::RequirePodSections]
lib_sections    = NAME|SYNOPSIS|VERSION|DESCRIPTION|SUBROUTINES/METHODS|DIAGNOSTICS|CONFIGURATION AND ENVIRONMENT|DEPENDENCIES|TEST AND QUALITY|QUALITY AND CODING STANDARD|BUGS AND LIMITATIONS|BUG REPORTING|DEVELOPMENT|TODO|SEE ALSO|AUTHOR|LICENSE AND COPYRIGHT

[Miscellanea::RequireRcsKeywords]
keywords = Id

[CodeLayout::ProhibitHardTabs]
allow_leading_tabs = 0

#Requires Perl::Critic 1.094, for exclude_functions
[InputOutput::RequireCheckedSyscalls]
functions = :builtins
exclude_functions = print


[-Documentation::RequirePodLinksIncludeText]
[Variables::ProhibitPunctuationVars]
allow = $@ $!

#I like constants
#https://logiclab.jira.com/wiki/display/OPEN/Perl-Critic-Policy-ValuesAndExpressions-ProhibitConstantPragma
[-ValuesAndExpressions::ProhibitConstantPragma]

#I don't use Emacs
[-Editor::RequireEmacsFileVariables]

#We subclass Module::Build so this is required
[-NamingConventions::Capitalization]

#I prefer UTF-8 
[-CodeLayout::RequireASCII]

#The policy unfortunately catches TODO in the POD
[-Bangs::ProhibitFlagComments]

# TODO

[-InputOutput::RequireBracedFileHandleWithPrint]

[-ErrorHandling::RequireUseOfExceptions]

[-RegularExpressions::RequireExtendedFormatting]

[-RegularExpressions::RequireDotMatchAnything]

[-RegularExpressions::RequireLineBoundaryMatching]

[-RegularExpressions::ProhibitUnusualDelimiters] 

[-Variables::ProhibitPunctuationVars]

[-ControlStructures::ProhibitUnlessBlocks]

[-Documentation::RequirePodSections]

[-ValuesAndExpressions::ProhibitEmptyQuotes]

#Variables::ProhibitPunctuationVars needs to be addressed in local disabling

[-Documentation::ProhibitVerbatimMarkup]

[-Compatibility::PodMinimumVersion]