From: | Dagfinn Ilmari Mannsåker <ilmari(at)ilmari(dot)org> |
---|---|
To: | Michael Paquier <michael(at)paquier(dot)xyz> |
Cc: | Alexander Lakhin <exclusion(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Cleaning up perl code |
Date: | 2024-07-02 12:55:25 |
Message-ID: | 87wmm4dkci.fsf@wibble.ilmari.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Michael Paquier <michael(at)paquier(dot)xyz> writes:
> On Fri, May 24, 2024 at 02:09:49PM +0900, Michael Paquier wrote:
>> For now, I have staged for commit the attached, that handles most of
>> the changes from Alexander (msvc could go for more cleanup?).
>
> This one has been applied as of 0c1aca461481 now that v18 is
> open.
>
>> I'll look at the changes from Dagfinn after that, including if perlcritic
>> could be changed. I'll handle the first part when v18 opens up, as
>> that's cosmetic.
For clarity, I've rebased my addional unused-variable changes (except
the errcodes-related ones, see below) onto current master, and split it
into separate commits with detailed explaiations for each file file, see
attached.
> I'm still biased about the second set of changes proposed here,
> though. ProhibitUnusedVariables would have benefits when writing perl
> code in terms of clarity because we would avoid useless stuff, but it
> seems to me that we should put more efforts into the unification of
> the errcodes parsing paths first to have a cleaner long-term picture.
>
> That's not directly the fault of this proposal that we have the same
> parsing rules spread across three PL languages, so perhaps what's
> proposed is fine as-is, at the end.
It turns out there are a couple more places that parse errcodes.txt,
namely doc/src/sgml/generate-errcodes-table.pl and
src/backend/utils/generate-errcodes.pl. I'll have a go refactoring all
of these into a common function à la Catalog::ParseHeader() that returns
a data structure these scripts can use as as appropriate.
> Any thoughts or comments from others more familiar with
> ProhibitUnusedVariables?
Relatedly, I also had a look at prohibiting unused regex captures
(RegularExpressions::ProhibitUnusedCapture), which found a few real
cases, but also lots of false positives in Catalog.pm, because it
doesn't understand that %+ uses all named captures, so I won't propose a
patch for that until that's fixed upstream
(https://github.com/Perl-Critic/Perl-Critic/pull/1065)
- ilmari
Attachment | Content-Type | Size |
---|---|---|
0001-Remove-unused-variables-in-libq-encryption-negotiati.patch | text/x-diff | 3.4 KB |
0002-msvc_gendef.pl-Remove-unused-variable.patch | text/x-diff | 762 bytes |
0003-pgindent-remove-unused-variable.patch | text/x-diff | 828 bytes |
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2024-07-02 12:59:45 | Re: Inline non-SQL SRFs using SupportRequestSimplify |
Previous Message | Aleksander Alekseev | 2024-07-02 12:52:58 | Re: Adding skip scan (including MDAM style range skip scan) to nbtree |