mirror of
https://github.com/postgres/postgres.git
synced 2026-01-05 23:38:41 +03:00
Add a script and a config file to run perlcritic
This is similar to what we do to run perltidy. For now we only run at severity level 5. Over time we can improve our perl code and reduce the severity level. Discussion: https://postgr.es/m/86aa2a3a-0c68-21fb-9560-84ad6914d561@2ndQuadrant.com
This commit is contained in:
14
src/tools/pgperlcritic/perlcriticrc
Normal file
14
src/tools/pgperlcritic/perlcriticrc
Normal file
@@ -0,0 +1,14 @@
|
||||
######################################################################
|
||||
#
|
||||
# src/tools/pgperlcritic/perlcriticrc
|
||||
#
|
||||
# config file for perlcritic for Postgres project
|
||||
#
|
||||
#####################################################################
|
||||
|
||||
severity = 5
|
||||
|
||||
theme = core
|
||||
|
||||
# allow octal constants with leading zeros
|
||||
[-ValuesAndExpressions::ProhibitLeadingZeros]
|
||||
28
src/tools/pgperlcritic/pgperlcritic
Executable file
28
src/tools/pgperlcritic/pgperlcritic
Executable file
@@ -0,0 +1,28 @@
|
||||
#!/bin/sh
|
||||
|
||||
# src/tools/pgperlcritic/pgperlcritic
|
||||
|
||||
test -f src/tools/pgperlcritic/perlcriticrc || {
|
||||
echo could not find src/tools/pgperlcritic/perlcriticrc
|
||||
exit 1
|
||||
}
|
||||
|
||||
set -e
|
||||
|
||||
# set this to override default perlcritic program:
|
||||
PERLCRITIC=${PERLCRITIC:-perlcritic}
|
||||
|
||||
# locate all Perl files in the tree
|
||||
{
|
||||
# take all .pl and .pm files
|
||||
find . -type f -a \( -name '*.pl' -o -name '*.pm' \) -print
|
||||
# take executable files that file(1) thinks are perl files
|
||||
find . -type f -perm -100 -exec file {} \; -print |
|
||||
egrep -i ':.*perl[0-9]*\>' |
|
||||
cut -d: -f1
|
||||
} |
|
||||
sort -u |
|
||||
xargs $PERLCRITIC \
|
||||
--quiet \
|
||||
--program-extensions .pl \
|
||||
--profile=src/tools/pgperlcritic/perlcriticrc
|
||||
Reference in New Issue
Block a user