Issue with psql's create_help.pl under perlcritic
Hi all,
A recent system update of a Debian SID host has begun to show me this
issue:
./src/bin/psql/create_help.pl: Bareword dir handle opened at line 47,
column 1. See pages 202,204 of PBP.
([InputOutput::ProhibitBarewordDirHandles] Severity: 5)
This issue gets fixed here as of the attached.
Comments?
--
Michael
Attachments:
psql_perlcritic.patchtext/x-diff; charset=us-asciiDownload
diff --git a/src/bin/psql/create_help.pl b/src/bin/psql/create_help.pl
index 2c5fed203e..1d5366db16 100644
--- a/src/bin/psql/create_help.pl
+++ b/src/bin/psql/create_help.pl
@@ -44,7 +44,7 @@ my $define = $hfilebasename;
$define =~ tr/a-z/A-Z/;
$define =~ s/\W/_/g;
-opendir(DIR, $docdir)
+opendir(my $dh, $docdir)
or die "$0: could not open documentation source dir '$docdir': $!\n";
open(my $hfile_handle, '>', "$outdir/$hfile")
or die "$0: could not open output file '$hfile': $!\n";
@@ -103,7 +103,7 @@ my $maxlen = 0;
my %entries;
-foreach my $file (sort readdir DIR)
+foreach my $file (sort readdir $dh)
{
my ($cmdid, @cmdnames, $cmddesc, $cmdsynopsis);
$file =~ /\.sgml$/ or next;
@@ -230,4 +230,4 @@ print $hfile_handle "
close $cfile_handle;
close $hfile_handle;
close $depfile_handle if ($depfile);
-closedir DIR;
+closedir $dh;
On 2023-01-18 We 03:50, Michael Paquier wrote:
Hi all,
A recent system update of a Debian SID host has begun to show me this
issue:
./src/bin/psql/create_help.pl: Bareword dir handle opened at line 47,
column 1. See pages 202,204 of PBP.
([InputOutput::ProhibitBarewordDirHandles] Severity: 5)This issue gets fixed here as of the attached.
Comments?
Looks fine. Interesting it's not caught by perlcritic on my Fedora 35
instance, nor my Ubuntu 22.04 instance.
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com
On Wed, Jan 18, 2023 at 08:43:01AM -0500, Andrew Dunstan wrote:
Looks fine.
Thanks for double-checking, will apply shortly.
Interesting it's not caught by perlcritic on my Fedora 35
instance, nor my Ubuntu 22.04 instance.
Perhaps that just shows up on the latest version of perlcritic? I use
1.148 in the box where this issue shows up, for all the stable
branches of Postgres.
--
Michael