Some thoughts on the documentation for adding a linter/formatter while trying to add a linter/formatter.
1. The linked repository (
https://github.com/pantsbuild/example-plugin/tree/main/pants-plugins/examples/bash) is seemingly out-of-date with the current version of Pants (E.g. some types no longer exist).
2. The linked repository also adds
full support for a new language (Bash), which comes with additional bells and whistles simply adding a linter/formatter doesn't need. It's hard to see what I'd need for linting/formatting vs. what I need for making binaries and testing (which I don't need)
3. The documentation has code snippets for several files, but seems to straddle between "files needed to add new language support" and "files needed for your linter/formatter support". I'm very confused what goes where 😅
4. The last file snippet in each section has a filepath header. I think that should be added to all snippets, otherwise I'm not sure which snippet belongs in which file, or what the conventional name of each file should be.
a. This would help with #3 as well I think
5. The guides also add a linter/formatter for a language already recognized in Pants (shell), so it uses Pants-defined types. I'm kind of lost at sea for defining the relevant types for a language Pants doesn't come with support for.
a. Perhaps the guide can fork and provide info on these tasks for a new language or an already-existing one?
b. More examples in the example repo could help as well