Are there any playbooks of tracking detekt metrics...
# detekt
h
Are there any playbooks of tracking detekt metrics over time? Are there existing integrations to do that?
b
No, as far as I know they are not. I think that really few people uses detekt for the metrics
👍 1
n
Sam are you guys planning on doing any tracking? We have some work ticketed in our backlog to parse our detekt baseline files and check for suppressions in the codebase and upload everything to grafana so we can track/visualize which teams are ignoring detekt rules but we unfortunately haven't gotten to this work kodee sad I'd be curious to see what you were thinking/planning of doing that inspired this question kodee excited
h
I'm working on a static analysis plugin/report and wanted to see what overlap there might be with detekt. I did make a really basic rule to collect some of this by module. Just trying to surface this "hidden" stuff. I'm presenting at #kotlinconf next week on the tool. The Suppress piece seemed like it could be valuable. Note, the result here is computed from open source https://github.com/duckduckgo/Android so I can share
❤️ 1
n
That's so exciting! I'll be sure to check out the KotlinConf talk.
😁 1
h
Will you be there?
b
As side note, on detekt 2.0 we plan to always report all the issues. Including the suppressed ones. We will mark them as suppressed and why they are suppressed so those type of reports will be way way easier to create.
❤️ 2
n
I will not but I'll be sure to check out the livestream or recording!
👍 1
h
b
Yes! There will be some caveats anyway. So if you two are interested in this topic I would like to know your opinion. If you exclude files from a rule (for example don't execute on tests) then those issues will not be reported because detekt will not even look at that file. The other case is if someone suppresses a rule from the file level we directly doesn't run that rule for that file. That's kind of a performance boost but it also means that those cases will not be displayed as suppressed issues. What do you think about that? Have it sense? Should we change it in the suppress case?
h
During normal checks, use the Suppress. During a baseline, then do both?