Re: run pgindent on a regular basis / scripted manner
Jelte Fennema <postgres@jeltef.nl>
Attachments
- v1-0002-Add-pgindent-pre-commit-hook.patch (application/octet-stream) patch v1-0002
- v1-0001-Add-pgindent-to-.editorconfig.patch (application/octet-stream) patch v1-0001
I whipped up a pre-commit hook which automatically runs pgindent on the changed files in the commit. It won't add any changes automatically, but instead it fails the commit if it made any changes. That way you can add them manually if you want. Or if you don't, you can simply run git commit again without adding the changes. (or you can use the --no-verify flag of git commit to skip the hook completely) It did require adding some extra flags to pgindent. While it only required the --staged-only and --fail-on-changed flags, the --changed-only flag was easy to add and seemed generally useful. I also attached a patch which adds the rules for formatting pgindent itself to the .editorconfig file. > Locally, I think pre-push would be better suited to > this than pre-commit (I often save WIP work in local branches, it'd be pretty > annoying if some indentation thing swore at me). I personally prefer pre-commit hooks, since then I don't have to go back and change some commit I made some time ago. And I think with the easy opt-out that this hook has it would work fine for my own workflow. But it shouldn't be hard to also include a pre-push hook too if you want that after all. Then people can choose to install the hook that they prefer. On Mon, 23 Jan 2023 at 02:38, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > Andres Freund <andres@anarazel.de> writes: > > On 2023-01-22 19:28:42 -0500, Tom Lane wrote: > >> Hmm ... right offhand, the only objection I can see is that the > >> pg_bsd_indent files use the BSD 4-clause license, which is not ours. > >> However, didn't UCB grant a blanket exception years ago that said > >> that people could treat that as the 3-clause license? > > > Yep: > > https://www.freebsd.org/copyright/license/ > > Cool. I'll take a look at doing this later (probably after the current > CF) unless somebody beats me to it. > > 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