Re: run pgindent on a regular basis / scripted manner

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Peter Geoghegan <pg(at)bowt(dot)ie>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andres Freund <andres(at)anarazel(dot)de>, Jelte Fennema <postgres(at)jeltef(dot)nl>, Michael Paquier <michael(at)paquier(dot)xyz>, "shiy(dot)fnst(at)fujitsu(dot)com" <shiy(dot)fnst(at)fujitsu(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Justin Pryzby <pryzby(at)telsasoft(dot)com>, Noah Misch <noah(at)leadboat(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Magnus Hagander <magnus(at)hagander(dot)net>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Stephen Frost <sfrost(at)snowman(dot)net>, Jesse Zhang <sbjesse(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
Subject: Re: run pgindent on a regular basis / scripted manner
Date: 2023-08-13 14:33:21
Message-ID: a7f96d6c-af5f-3249-90df-15131cb4a11e@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


On 2023-08-12 Sa 20:53, Peter Geoghegan wrote:
> On Sat, Aug 12, 2023 at 5:20 PM Tom Lane<tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> Hm. I was envisioning that we should expect committers to deal
>> with this, not original patch submitters. So that's an argument
>> against including it in the CI tests. But I'm in favor of anything
>> we can do to make it more painless for committers to fix up patch
>> indentation.

I agree with this.

> Making it a special responsibility for committers comes with the same
> set of problems that we see with catversion bumps. People are much
> more likely to forget to do something that must happen last.

After I'd been caught by this once or twice I implemented a git hook
test for that too - in fact it was the first hook I did. It's not
perfect but it's saved me a couple of times:

check_catalog_version () {

    # only do this on master
    test  "$branch" = "master" || return 0

    case "$files" in
        *src/include/catalog/catversion.h*)
            return 0;
            ;;
        *src/include/catalog/*)
            ;;
        *)
            return 0;
            ;;
    esac

    # changes include catalog but not catversion.h, so warn about it
    {
        echo 'Commit on master alters catalog but catversion not bumped'
        echo 'It can be forced with git commit --no-verify'
    } >&2

    exit 1
}

cheers

andrew

--
Andrew Dunstan
EDB:https://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2023-08-13 23:06:29 Re: Support to define custom wait events for extensions
Previous Message Fabien COELHO 2023-08-13 09:32:08 pgbench with libevent?