-
Notifications
You must be signed in to change notification settings - Fork 911
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Break out lints into a separate binary #1027
Comments
What is the advantage of a separate binary over configuration options for these things? |
I think that's not really the right question. The only pro of a single binary I see is that it's the way it's done now. Given a tool that is called
This fits expectations across language ecosystems: I can't think of a language where a formating tool produces warnings about style issues. Ones I've looked at: clang-format, gofmt, autopep8. |
The pro is that from a user's point of view, they only need one tool instead of several. That convenience is important. I would argue that any IDE is a formatting tool that produces warnings about all sorts of errors, so there is (sort of) precedent. Anyway, I'm open to the idea of multiple tools, just want to properly evaluate the pros and cons. |
👍 this makes sense! |
I just skimmed the open 1.0 blockers to get an idea of what's out there. #209 (Check for license) jumped out as one that is more like linting than formatting. This goes along with TODO / FIXME checking in my opinion.
From my perspective as a user, this functionality should be in a separate tool, let's say
rustlint
for lack of a better name.In #798 (comment), @nrc said
I understand an overarching motivation from @nrc's point of view is to replace
make tidy
in the rust repo (#20). We can still get there by breaking out those lints into a separate binary that lives under therustfmt
repo—most easily in the same crate. I haven't looked at control flow to see how mixed in these features are, but it seems like it should be possible given the code is already there.The text was updated successfully, but these errors were encountered: