-
Notifications
You must be signed in to change notification settings - Fork 2
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
linter reporting #109
linter reporting #109
Conversation
Rebased against master |
FYI I think it was a good mistake from my side to rebase this against master :) I'll review the Kondo+Reporters stuff at the same time, improving things directly where possible. We've kept this in the oven for far too long now - this weekend I think I can just be done w/ it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
f8557d8
to
65cd85c
Compare
The Kondo cache part looks correct - enabled now. QAd in JVM clj so far - lgtm: I can trigger a Kondo warning (e.g. This proves that a cached version of a given ns doesn't interfere with a fresh analysis of that same ns. |
A simple measure might be to rearrange columns:
|
Part of #91
(At least for the time being) `formatting-stack.linters.kondo` already has logic for separating clj from cljs options.
Part of #69
It's the first publicly-available release.
Already offered by Eastwood.
Said linter can very easily trigger a lot of false positives.
* Prefer truncation to padding * Use a hierarchical format * Prefer coloring to icons * Make coloring optional * (far simpler than detecting tty capabilities, from what I could research) * Within a given file report, group the reports by `:source` Accordingly, `reporters.printer` has been discarded.
This trades some eagerness, in exchange for a faster first run of kondo.
By making the emitted :column/:line info more variable, users can get an idea of how greatly was a given limit surpassed.
A callback passed to `process-in-parallel!` shouldn't return a lazy computation, since that would make the parallel machinery useless (a lazy computation is expressed in parallel, but it's only realised later, in a non-parallel context).
The idea is to place linters with a best usefuleness/speed ratio first.
This allows restoring `ensure-coll` its old semantics, preventing complexities.
Now it can handle files containing invalid syntax. There was a previous attempt of this, but too coarse-grained.
It would be anomalous that Eastwood hit a syntactically broken anyway - it could indicate room for improvement in strategies/etc.
Brief
In a quest to make f-s more adoptable / easier to understand:
Adds an intermediate format for linters to allow more control over reporting. If this is acceptable I'll progress with formatters and process!
related #64, #48
TODO
:type
is added we can handle exceptions and suggestions/warnings as well.:type
seems better due to different contents of the mapsQA plan
nothing yet
Author checklist
Reviewer checklist