From: Noah Misch <noah@leadboat.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Jesse Zhang <sbjesse@gmail.com>
Cc: Andres Freund <andres@anarazel.de>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Subject: Re: run pgindent on a regular basis / scripted manner
Date: Wed, 12 Aug 2020 20:53:08 -0700
Message-ID: <20200813035308.GA1137170@rfd.leadboat.com> (raw)
In-Reply-To: <328084.1597276021@sss.pgh.pa.us>
References: <20200812223409.6di3y2qsnvynao7a@alap3.anarazel.de>
<CAGf+fX71Oa2vzg0xdj+vgrjmdVrm=kRLc7H3SEGtCHkGhoWDCg@mail.gmail.com>
<328084.1597276021@sss.pgh.pa.us>
On Wed, Aug 12, 2020 at 07:47:01PM -0400, Tom Lane wrote:
> Jesse Zhang <sbjesse@gmail.com> writes:
> > On Wed, Aug 12, 2020 at 3:34 PM Andres Freund wrote:
> >> Is there any reason we don't just automatically run pgindent regularly?
> >> Like once a week? And also update typedefs.list automatically, while
> >> we're at it?
>
> > You know what's better than weekly? Every check-in.
>
> I'm not in favor of unsupervised pgindent runs, really. It can do a lot
> of damage to code that was written without thinking about it --- in
> particular, it'll make a hash of comment blocks that were manually
> formatted and not protected with dashes.
>
> If the workflow is commit first and re-indent later, then we can always
> revert the pgindent commit and clean things up manually; but an auto
> re-indent during commit wouldn't provide that history.
There are competing implementations of assuring pgindent-cleanliness at every
check-in:
1. After each push, an automated followup commit appears, restoring
pgindent-cleanliness.
2. "git push" results in a commit that melds pgindent changes into what the
committer tried to push.
3. "git push" fails, for the master branch, if the pushed commit disrupts
pgindent-cleanliness.
Were you thinking of (2)? (1) doesn't have the lack-of-history problem, but
it does have the unexpected-damage problem, and it makes gitweb noisier. (3)
has neither problem, and I'd prefer it over (1), (2), or $SUBJECT.
Regarding typedefs.list, I would use the in-tree one, like you discussed here:
On Wed, Aug 12, 2020 at 07:57:29PM -0400, Tom Lane wrote:
> Maybe the secret is to not allow automated adoption of new typedefs.list
> entries, but to require somebody to add entries to that file by hand,
> even if they're basing it on the buildfarm results. (This would
> encourage the habit some people have adopted of updating typedefs.list
> along with commits that add typedefs. I've never done that, but would
> be willing to change if there's good motivation to.)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: noah@leadboat.com, tgl@sss.pgh.pa.us, sbjesse@gmail.com, andres@anarazel.de
Subject: Re: run pgindent on a regular basis / scripted manner
In-Reply-To: <20200813035308.GA1137170@rfd.leadboat.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox