It allows you to incrementally clean up a code base, most important stuff first.
It can autocorrect small silly stuff (combine with a good test suite, warnings on and a version control system, a Major win). Commit, autocorrect a single cop, run all tests, Commit, Fixup or Rollback).
It explains the why of each cop. And if I don’t agree with the why, I don’t have to run it… but I have on the quiet learnt a lot of ruby (despite decades of experience) from reading the “whys”.
It has benchmarks for performance cops. Again, I have learnt a lot of ruby from these.
It is a major help in dragging an older code base forward to new language features (and removing deservedly deprecated features!)
Some of the style cops that conflicted with my own style that I rejected….. Well, here’s a secret. I’d do the commit, autocorrect a single cop and then look at the diffs…. And sometimes I rollback, but sometimes I go grrumble grrumble, actually that is better and commit and change my style.
Thanks to you and the team for making Rubocop so flexible. I’m glad that I have the choice to enforce the rules that I think matter, instead of debating whether to use the tool or not.
It’s that making (carefully considered, openly discussed with relevant peers and evidence weighed) choices and staying with those choices is what matters, while the exact choice doesn’t matter.
I just had a child. I believe I would have an equally happy, perhaps happier, life without a child. But we chose to have this child and will nourish and love it forever. There was no Correct choice, but there was a choice.
A resounding achievement. Congrats to the whole team and to you specifically, Bozhidar! You’re a credit to every language community you’re in.
Thanks for the kind words!
Thanks!
Let me list the ways in which I love RuboCop…
Congrats! and thanks for not changing the name!
Thanks to you and the team for making Rubocop so flexible. I’m glad that I have the choice to enforce the rules that I think matter, instead of debating whether to use the tool or not.
Everybody agrees coding style is Very Very Important….
Nobody agrees which style is Correct.
Sigh.
There is a life lesson in that somewhere.
It’s that making (carefully considered, openly discussed with relevant peers and evidence weighed) choices and staying with those choices is what matters, while the exact choice doesn’t matter.
I just had a child. I believe I would have an equally happy, perhaps happier, life without a child. But we chose to have this child and will nourish and love it forever. There was no Correct choice, but there was a choice.