Re: [PATCH] pg_bsd_indent: improve formatting of multiline comments
Arseniy Mukhin <arseniy.mukhin.dev@gmail.com>
From: Arseniy Mukhin <arseniy.mukhin.dev@gmail.com>
To: Aleksander Alekseev <aleksander@timescale.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Michael Paquier <michael@paquier.xyz>
Date: 2025-06-19T20:33:55Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
pgindent: improve formatting of multiline comments.
- 60f9467c3834 19 (unreleased) landed
-
Adjust style of some debugging macros.
- ba1e14134a77 19 (unreleased) landed
-
Fix a couple of comments.
- 123661427b97 19 (unreleased) landed
-
Add IGNORE NULLS/RESPECT NULLS option to Window functions.
- 25a30bbd4235 19 (unreleased) cited
-
Split WaitEventSet functions to separate source file
- 393e0d231405 18.0 cited
On Thu, Jun 19, 2025 at 5:51 PM Aleksander Alekseev <aleksander@timescale.com> wrote: > > Hi, > > Michael (cc:'ed) pointed out [1] that pg_bsd_indent could do a > slightly better job when it comes to formatting multiline comments. I > prepared a patch that fixes this. > > How to test it: > > ``` > ninja -C build > cp build/src/tools/pg_bsd_indent/pg_bsd_indent ~/bin/pg_bsd_indent > cp src/tools/pgindent/pgindent ~/bin/pgindent > pgindent src/backend/utils/adt/varlena.c > git diff > ``` > > Expected changes: > > ``` > -/* name_text() > +/* > + * name_text() > * Converts a Name type to a text type. > */ > ``` > > Everything else should work as before. > > Thoughts and feedback are most welcomed. > > [1]: https://postgr.es/m/CAJ7c6TN7ppSmZMPejvKZreOs%3D%2BkJEhrGQNuVpmTjj9W-%3DMjgCg%40mail.gmail.com > > -- > Best regards, > Aleksander Alekseev Hi Aleksander! Thank you for the patch! I tried it with the whole project and almost always it works great. But I noticed two cases where it works probably not as expected: 1) comments which don't have a star on each line. For example: file 'cube.c' before: /* make up a metric in which one box will be 'lower' than the other -- this can be useful for sorting and to determine uniqueness */ after: /* * make up a metric in which one box will be 'lower' than the other -- this can be useful for sorting and to determine uniqueness */ 2) comments where closing */ is on the last comment line. For example: file 'crypt-blowfish.c' before: /* This has to be bug-compatible with the original implementation, so * only encode 23 of the 24 bytes. :-) */ after: /* * This has to be bug-compatible with the original implementation, so * only encode 23 of the 24 bytes. :-) */ Best regards, Arseniy Mukhin