RubyKaigi 2025の準備・予習
Ruby Taught Me About Encoding Under the Hood
Keeping Secrets: GitHub's ENV Security Learnings
How to make the Groovebox
RuboCop: Modularity and AST Insights
Ruby Taught Me About Encoding Under the Hood
Unicodeの話
Keeping Secrets: GitHub's ENV Security Learnings
GitHub で発生したissueの話
これっぽい
RuboCop: Modularity and AST Insights
RuboCopのa lack of modularity(モジュール性の欠如)とパーサーエンジンの変更に関する話
モジュール性の欠如とは
コードベースが適切に分割・整理されていない
密結合になっている
責務が不明確
Ruby エコシステムの裏側では RuboCop が広く利用されている
Ruby LSP や Standard Ruby のバックエンドは RuboCop のエンジンを利用している
Ruby LSP
Language Server Protcol
IDEやテキストエディタ向けの支援機能
Standard Ruby
コードスタイルガイドとリンターツール
RuboCopをベースに作られている
これらのツールの役割分担が不十分だった
RuboCopのバックエンドパーサーをParser gem→Prism
Prism
Ruby3.3.0からdefault gemとして追加されたパーサー
去年もLSPとPrismの話をしている