Great Idea, support all the things Eduard and Fokko said as well. Probably makes sense to keep using tools we already have if possible
On Thu, Aug 21, 2025 at 11:13 AM Fokko Driesprong <fo...@apache.org> wrote: > Hey Manu, > > Thanks for suggesting this, and I strongly support using a linter. > Recently I noticed that we use different flavors of Markdown > <https://github.com/apache/iceberg/pull/13181#pullrequestreview-3106017612> in > the table, and the linter would take care of that. > > I do have a similar remark as Eduard. If Spotless supports this, I think > that would be the easiest. Otherwise, I think pre-commit would also be a > good option within the Java repo as this is also easy to run locally. Using > pre-commit we can also add other linters (shell, end-of-line, detecting > debug statements, credential detection, spell-checker, etc). > > The biggest downside is that we might lose some version history due to > just reformatting. For example, if you widen a column in a table, I think > the linter will realign the whole table. However, through GitHub we can > easily track down the lineage. > > Kind regards, > Fokko > > Off-topic: At some point, we can replace pre-commit by prek > <https://github.com/j178/prek> when it gets mature enough. As Atwood's > law states; Any application that can be written in Rust, will eventually be > written in Rust (slightly adapted). > > > Op do 21 aug 2025 om 17:59 schreef Eduard Tudenhöfner < > etudenhoef...@apache.org>: > >> We're already using spotless to format Java code and spotless also >> supports markdown files >> <https://github.com/diffplug/spotless/tree/main/plugin-gradle> so maybe >> worth exploring how we could achieve this through spotless? >> The main advantage would be that people would be able to catch linting >> errors already locally before CI runs. >> >> On Thu, Aug 21, 2025 at 5:38 PM Manu Zhang <owenzhang1...@gmail.com> >> wrote: >> >>> Hi all, >>> >>> What do you think of adding a GitHub action to lint markdown files? It >>> can catch markdown rendering issues early and ensure a consistent style >>> across markdown files. iceberg-python has already included markdown lint[1] >>> in pre-commit hook. (Thanks Fokko for the suggestion!) >>> >>> I've a draft PR[2] that adds a Docs CI triggered on changes to any >>> markdown files. The lint rules are highly customizable via a config >>> file[3]. While fixing existing issues spotted by the CI, I'd like to get >>> early feedback from the community. >>> >>> 1. >>> >>> https://github.com/apache/iceberg-python/blob/main/.pre-commit-config.yaml#L41 >>> <https://github.com/apache/iceberg-python/blob/main/.pre-commit-config.yaml#L41> >>> 2. https://github.com/apache/iceberg/pull/13826 >>> 3. >>> https://github.com/manuzhang/iceberg/blob/markdownlint/.markdownlint.jsonc >>> >>> Regards, >>> Manu >>> >>