Re: run pgindent on a regular basis / scripted manner
Tom Lane <tgl@sss.pgh.pa.us>
Robert Haas <robertmhaas@gmail.com> writes: > On Tue, Oct 17, 2023 at 8:45 AM Robert Haas <robertmhaas@gmail.com> wrote: >> +1. I think this is more annoying than the status quo ante. > Although ... I do think it's spared me some rebasing pain, and that > does have some real value. I wonder if we could think of other > alternatives. An alternative I was thinking about after reading your earlier email was going back to the status quo ante, but doing the manual tree-wide reindents significantly more often than once a year. Adding one at the conclusion of each commitfest would be a natural thing to do, for instance. It's hard to say what frequency would lead to the least rebasing pain, but we know once-a-year isn't ideal. > For example, maybe we could have a bot. If you push a > commit that's not indented properly, the bot reindents the tree, > updates git-blame-ignore-revs, and sends you an email admonishing you > for your error. I'm absolutely not in favor of completely-automated reindents. pgindent is a pretty stupid tool and it will sometimes do stupid things, which you have to correct for by tweaking the input formatting. The combination of the tool and human supervision generally produces pretty good results, but the tool alone not so much. > Or we could have a server-side hook that will refuse > the misindented commit, with some kind of override for emergency > situations. Even though I'm in the camp that would like the tree correctly indented at all times, I remain very much against a commit hook. I think that'd be significantly more annoying than the current situation, which you're already unhappy about the annoying-ness of. The bottom line here, I think, is that there's a subset of committers that would like perfectly mechanically-indented code at all times, and there's another subset that just doesn't care that much. We don't (and shouldn't IMO) have a mechanism to let one set force their views on the other set. The current approach is clearly insufficient for that, and I don't think trying to institute stronger enforcement is going to make anybody happy. regards, tom lane
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix comment from commit 22655aa231.
- 01529c704008 17.0 cited
-
Add a few recent commits to .git-blame-ignore-revs.
- 0df7d1da40e3 17.0 landed
-
Pre-beta2 mechanical code beautification.
- b334612b8aee 16.0 landed
-
Pre-beta mechanical code beautification.
- 0245f8db36f3 16.0 landed
-
Make agreed-on updates in perltidy options.
- df6b19fbbc20 16.0 landed
-
Remove obsolete pgindent options --code-base and --build
- b16259b3c189 16.0 landed
-
Integrate pg_bsd_indent into our build/test infrastructure.
- 156c049beed9 16.0 landed
-
Sync pg_bsd_indent's copyright notices with Postgres practice.
- b44e5fced3e5 16.0 landed
-
Import pg_bsd_indent sources.
- 4e831f4cee14 16.0 landed
-
pgindent: filter files for the --commit option
- dab07e8c6896 16.0 landed
-
pgindent: more ways to find files to indent
- 068a243b7771 16.0 landed
-
Fix pgindent --show-diff option.
- 62e1e28bf769 16.0 cited
-
Add non-destructive modes to pgindent
- b90f0b57474e 16.0 landed
-
Initial pgindent run with pg_bsd_indent version 2.0.
- e3860ffa4dd0 10.0 cited