RuboCop has long faced issues with a lack of modularity and is now encountering new challenges due to changes in the parser engine.
There has been extensive development of custom cop extension gems, but these extension methods have relied on RuboCop's implementation for a long time. RuboCop is widely used behind the scenes in the Ruby ecosystem. For example, the backends of Ruby LSP and Standard Ruby utilize RuboCop's engine. However, the division of responsibilities with these tools has been insufficient. The introduction of the plugin system using lint_roller and the Ruby LSP add-on aim to resolve these issues. I will discuss the adoption and availability of integrating these into RuboCop.
Another major issue is the maintenance status of the Parser gem, which has long been RuboCop's backend parser. I will talk about RuboCop's future backend strategy based on Prism.
You will gain insights into new methods of extending RuboCop and the upcoming changes in the near future.