Thanks for this really useful plugin, and it's great to see it is now part of the bufbuild org!
I'd like to propose a tweak to linter output, though I'm not sure how it could be implemented. We're seeing linter output like the following:
Some Protobuf files had lint violations:
..-proto/company/service/v1/schema.proto:52:9:...
(The ..- bit comes about because our proto schemas sit in a ../proto directory adjacent to the gradle submodule where this plugin is being run. I don't think this is relevant to this overall request, though)
The overall path shown, though, is a bit unergonomic: IDEs do not show it as a clickable link, making it quite fiddly to find the erroneous file and line. For IDEs to render the link as clickable, I believe an absolute path is required.
I think it would be a better developer experience if:
- the paths were absolute, not relative
- the paths were to the original source files instead of the
build/bufbuild/... copies. Obviously only when these are real files on disk rather than protobuf dependencies etc...
The build logs would thus look like:
Some Protobuf files had lint violations:
/Users/me/some/project/proto/company/service/v1/schema.proto:52:9:...
I'm wondering if some kind of transformation of the buf lint output could be applied as a worst case option, or if there's a way to handle this better somewhere else.
bufbuild/buf#125 suggests that buf lint should be capable of emitting absolute paths if it has been given an absolute path as an input.
Has this been considered at some point?
Thanks for this really useful plugin, and it's great to see it is now part of the bufbuild org!
I'd like to propose a tweak to linter output, though I'm not sure how it could be implemented. We're seeing linter output like the following:
(The
..-bit comes about because our proto schemas sit in a../protodirectory adjacent to the gradle submodule where this plugin is being run. I don't think this is relevant to this overall request, though)The overall path shown, though, is a bit unergonomic: IDEs do not show it as a clickable link, making it quite fiddly to find the erroneous file and line. For IDEs to render the link as clickable, I believe an absolute path is required.
I think it would be a better developer experience if:
build/bufbuild/...copies. Obviously only when these are real files on disk rather thanprotobufdependencies etc...The build logs would thus look like:
I'm wondering if some kind of transformation of the buf lint output could be applied as a worst case option, or if there's a way to handle this better somewhere else.
bufbuild/buf#125 suggests that
buf lintshould be capable of emitting absolute paths if it has been given an absolute path as an input.Has this been considered at some point?