11:25 - 11:50 (JST)
Rustでrbenvよりも7秒速いRubyのバージョンマネージャーを作りました。この「7秒速い」とは、特定のバージョンをインストールしてそのバージョン使用するという一連の流れ(rbenv init → rbenv install → rbenv local)が7秒速いということです。
Rubyにはランタイムのバージョンに依存したコードが多く存在します。そのため、ランタイムのバージョン管理が重要視されています。しかしながら、rbenv installの実行には環境にもよりますが、2分から3分ほどかかり、新しいバージョンをインストールするたびにこれを待つのは非効率です。主なボトルネックとなっているのは、ruby-buildと呼ばれる、シェルスクリプトで書かれた異なるバージョンのRubyを簡単にインストールするためのコマンドラインユーティリティであり、今回はこのruby-buildを含めてPure RustでRubyバージョンマネージャー「frum」を作りました。
このセッションでは、Rustでシンプルでかつ使いやすいRubyバージョンマネージャーを作るために行った工夫とfrumを作る過程で得た知見を共有します。具体的には、主に
について話します。
Copyright © Rust.Tokyo 2021 all rights reserved.
過去の開催