do you happen to know why ruff is not extensible in Python?
The main reason given was that each plugin has to reimplement a bunch of the same stuff slightly differently (like finding public methods eg) and keeping it all internal avoids this and keeps things speedy
Then somebody did it in Rust, where it's faster.
There's still a tradeoff: not as dynamic.
/s