Re: run pgindent on a regular basis / scripted manner
Jelte Fennema <postgres@jeltef.nl>
As a not very frequent submitter, on all the patches that I submit I keep running into this problem. I have two open patchsets for libpq[1][2] both of which currently include the same initial "run pgindent" patch in addition to the actual patch, just so I can actually run it on my own patch because a9e9a9f caused formatting to totally be off in the libpq directory. And there's lots of other changes that pgindent wants to make, which are visible on the job that Magnus has set up. To me a master branch that pgindent never complains about sounds amazing! And I personally think rejection of unindented pushes and cfbot complaining about unindented patches would be a very good thing, because that seems to be the only solution that could achieve that. Having cfbot complain also doesn't sound like a crazy burden for submitters. Many open-source projects have CI complaining if code formatting does not pass automatic formatting tools. As long as there is good documentation on how to install and run pgindent I don't think it should be a big problem. A link to those docs could even be included in the failing CI job its error message. A pre-commit hook that submitters/committers could install would be super useful too. Since right now I sometimes forget to run pgindent, especially since there's no editor integration (that I know of) for pgindent. Side-question: What's the reason why pgindent is used instead of some more "modern" code formatter that doesn't require keeping typedefs.list up to date for good looking output? (e.g. uncrustify or clang-format) Because that would also allow for easy editor integration. [1]: https://commitfest.postgresql.org/41/3511/ [2]: https://commitfest.postgresql.org/41/3679/
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