######################################################################
#
# src/tools/perlcheck/perlcriticrc
#
# config  file for perlcritic for Postgres project
#
#####################################################################

severity = 5

theme = core

# print the policy name as well as the normal output
verbose = %f: %m at line %l, column %c.  %e.  ([%p] Severity: %s)\n

# Note: for policy descriptions see https://metacpan.org/dist/Perl-Critic


# allow octal constants with leading zeros
[-ValuesAndExpressions::ProhibitLeadingZeros]

# insist on use of the warnings pragma
[TestingAndDebugging::RequireUseWarnings]
severity = 5

# forbid grep and map in void context
[BuiltinFunctions::ProhibitVoidGrep]
severity = 5

[BuiltinFunctions::ProhibitVoidMap]
severity = 5

# Require checking return value of system calls.  The excluded ones
# are currently consistently checked, but more checking could be
# added.
[InputOutput::RequireCheckedSyscalls]
severity = 5
functions = :builtins
exclude_functions = binmode chdir close closedir kill mkdir print rmdir setsockopt sleep truncate umask unlink waitpid
