Skip to content

Formatting with gofumpt #604

@thanethomson

Description

@thanethomson

There have been discussions previously about potentially formatting (and enforcing formatting) with gofumpt (see tendermint/tendermint#9738, tendermint/tendermint#9208, tendermint/tendermint#8478).

The main argument against this was that doing a big-bang reformat of the whole codebase significantly hampers our ability to do code archeology, which, with a codebase like this, is incredibly important for our team to be able to make meaningful progress.

A compromise here would be to start to enforce this locally - i.e. on each of our own machines when saving our code, that only the files each of us touch in a specific PR get formatted with gofumpt. As we progressively refactor the system, I'm fairly confident we'll end up touching most of the codebase, simultaneously progressively formatting the code.

At some point, once the diff between formatting and not formatting the codebase with gofumpt drops below a certain level (say a few hundred LoC), we can simply format the remainder of the code in a single PR and implement a formatting enforcement check as part of CI (at which point we can close this issue).

Metadata

Metadata

Assignees

Labels

hygieneAny work relating to code legibility/hygiene to make it easier to read

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions