Re: run pgindent on a regular basis / scripted manner
Jelte Fennema <postgres@jeltef.nl>
> I think that would be undesirable, because then reindentation noise > in completely-unrelated files would get baked into feature commits, > complicating review and messing up "git blame" history. With a rebase hook similar to the the pre-commit hook that I shared upthread, your files will be changed accordingly, but you don't need to commit those changes in the same commit as the one that you're rebasing. You could append another commit after it. Another option would be to move the typedefs.list change to a separate commit together with all project wide indentation changes. > The real bottom line here is that AFAICT, there are fewer committers > who care about indent cleanliness than committers who do not, so > I do not think that the former group get to impose strict rules > on the latter, much as I might wish otherwise. Is this actually the case? I haven't seen anyone in this thread say they don't care. From my perspective it seems like the unclean indents simply come from forgetting to run pgindent once in a while. And those few forgetful moments add up over a year. of commits. That's why to me tooling seems the answer here. If the tooling makes it easy not to forget then the problem goes away. > FWIW, Andrew's recent --show-diff feature for pgindent has > already improved my workflow for that. I can do > "pgindent --show-diff >fixindent.patch", manually remove any hunks > in fixindent.patch that don't pertain to the code I'm working on, > and apply what remains to fix up my new code. (I had been doing > something basically like this, but with more file-copying steps > to undo pgindent's edit-in-place behavior.) Yeah, I have a similar workflow with the pre-commit hook that I shared. By using "git checkout -p" I can remove hunks that don't pertain to my code. Still it would be really nice not to have to go through that effort (which is significant for the libpq code that I've been workin on, since there's ~50 incorrectly indented hunks). > Here's another improvement I think will be useful when the new gadgets > are used in a git hook: first, look for the excludes file under the > current directory if we aren't setting $code_base (e.g if we have files > given on the command line), and second apply the exclude patterns to the > command line files as well as to files found using File::Find. Change looks good to me.
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