pgperltidy requires a particular version of perltidy, but the version
wasn't checked like how pgindent checks the underlying indent binary.
Fix by checking the version of perltidy and error out if an incorrect
version is used.
Author: Daniel Gustafsson <daniel@yesql.se>
Reported-by: Tom Lane <tgl@sss.pgh.pa.us>
Reviewed-by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
Reviewed-by: Álvaro Herrera <alvherre@kurilemu.de>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Reviewed-by: Andrew Dunstan <andrew@dunslane.net>
Discussion: https://postgr.es/m/
1209850.
1764092152@sss.pgh.pa.us
# set this to override default perltidy program:
PERLTIDY=${PERLTIDY:-perltidy}
+PERLTIDY_VERSION=20230309
+if ! $PERLTIDY -v | grep -q $PERLTIDY_VERSION; then
+ echo "You do not appear to have $PERLTIDY version $PERLTIDY_VERSION installed on your system." >&2
+ exit 1
+fi
+
. src/tools/perlcheck/find_perl_files
find_perl_files "$@" | xargs $PERLTIDY --profile=src/tools/pgindent/perltidyrc