postgres.git / summary / log / commit / refs
commit d2c1512ac48c1c25dfec07d341e9b74e57f6fbc4
Author: Andrew Dunstan <andrew@dunslane.net>
Date: Mon May 07 19:21:00 2018 +0000
First released in: 11.0
Clean up some perlcritic warnings
In Catalog.pm, mark eval of a string instead of a block as allowed.
Disallow perlcritic completely in Gen_dummy_probes.pl, as it's
generated code.
Protect a couple of lines in plperl code from perltidy, so that the
annotation for perlcritic stays on the same line as the construct it
would otherwise object to.
src/backend/catalog/Catalog.pm | 5 ++++-
src/backend/utils/Gen_dummy_probes.pl | 3 +++
src/pl/plperl/plc_perlboot.pl | 6 +++---
src/pl/plperl/plc_trusted.pl | 5 +++--
4 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/src/backend/catalog/Catalog.pm b/src/backend/catalog/Catalog.pm
index 7497d9cd9fb..f387c865c68 100644
--- a/src/backend/catalog/Catalog.pm
+++ b/src/backend/catalog/Catalog.pm
@@ -250,7 +250,10 @@ sub ParseData
if ($lcnt == $rcnt)
{
- eval '$hash_ref = ' . $_;
+ # We're treating the input line as a piece of Perl, so we
+ # need to use string eval here. Tell perlcritic we know what
+ # we're doing.
+ eval '$hash_ref = ' . $_; ## no critic (ProhibitStringyEval)
if (!ref $hash_ref)
{
die "$input_file: error parsing line $.:\n$_\n";
diff --git a/src/backend/utils/Gen_dummy_probes.pl b/src/backend/utils/Gen_dummy_probes.pl
index a38fea3e043..91d79684e99 100644
--- a/src/backend/utils/Gen_dummy_probes.pl
+++ b/src/backend/utils/Gen_dummy_probes.pl
@@ -14,6 +14,9 @@
#
#-------------------------------------------------------------------------
+# turn off perlcritic for autogened code
+## no critic
+
$0 =~ s/^.*?(\w+)[\.\w+]*$/$1/;
use strict;
diff --git a/src/pl/plperl/plc_perlboot.pl b/src/pl/plperl/plc_perlboot.pl
index ff059648696..05334a662d3 100644
--- a/src/pl/plperl/plc_perlboot.pl
+++ b/src/pl/plperl/plc_perlboot.pl
@@ -51,9 +51,9 @@ sub ::encode_array_constructor
}
{
-
- package PostgreSQL::InServer
- ; ## no critic (RequireFilenameMatchesPackage);
+#<<< protect next line from perltidy so perlcritic annotation works
+ package PostgreSQL::InServer; ## no critic (RequireFilenameMatchesPackage)
+#>>>
use strict;
use warnings;
diff --git a/src/pl/plperl/plc_trusted.pl b/src/pl/plperl/plc_trusted.pl
index 7b11a3f52b0..dea3727682c 100644
--- a/src/pl/plperl/plc_trusted.pl
+++ b/src/pl/plperl/plc_trusted.pl
@@ -1,7 +1,8 @@
# src/pl/plperl/plc_trusted.pl
-package PostgreSQL::InServer::safe
- ; ## no critic (RequireFilenameMatchesPackage);
+#<<< protect next line from perltidy so perlcritic annotation works
+package PostgreSQL::InServer::safe; ## no critic (RequireFilenameMatchesPackage)
+#>>>
# Load widely useful pragmas into plperl to make them available.
#
[parent: 17551f1a21fa]