Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
rbs-srcを用いたgem_rbs_collectionへのcontribution.pdf
Search
Ryosuke Hiroe
July 27, 2024
0
85
rbs-srcを用いたgem_rbs_collectionへのcontribution.pdf
Ryosuke Hiroe
July 27, 2024
Tweet
Share
More Decks by Ryosuke Hiroe
See All by Ryosuke Hiroe
手書きRBSの運用事例
rhiroe
2
130
スクラム開発におけるベロシティの扱い
rhiroe
0
110
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
100
How to build a perfect <img>
jonoalderson
0
4.8k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
350
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
97
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.9k
Bash Introduction
62gerente
615
210k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
80
It's Worth the Effort
3n
187
29k
Tell your own story through comics
letsgokoyo
0
770
Deep Space Network (abreviated)
tonyrice
0
32
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.2k
Transcript
2024/07/27 廣江 亮佑 rbs-srcを用いた gem_rbs_collectionへの Contribution @rhiroe
2024/06/14 廣江 亮佑 自己紹介 名前: 廣江 亮佑 拠点: 岡山県 GitHub: @rhiroe
X: @buta_botti
型のある開発
None
例えば、Rails7.1で追加された async_* メソッドのRBSはまだない
手元のアプリケーションで 確認したい
None
Demo
rbs-src setup --output • rbs_collection.lock.yamlを解析 • tmp/rbs-srcにgemの数だけgem_rbs_collectionをclone ◦ sparse-checkoutでディレクトリを対象のgemのみに限定 •
sig/rbs-srcにtmp/rbs-srcのディレクトリそれぞれのsymlinkを作成 • gemの依存関係をrbs_src.depに出力 ◦ --output
Steepfile
Steepfile rbs_src.depが存在する = rbs-srcを使っている時
Steepfile rbs_src.depが存在する = rbs-srcを使っている時 .gem_rbs_collectionのRBSを使わない
Steepfile rbs_src.depが存在する = rbs-srcを使っている時 .gem_rbs_collectionのRBSを使わない rbs-srcがsymlinkを作成したrbsを使う
Steepfile rbs_src.depが存在する = rbs-srcを使っている時 .gem_rbs_collectionのRBSを使わない rbs-srcがsymlinkを作成したrbsを使う source type が stdlib
のものはruby/rbsのRBSファイルを使う
gem_rbs_collectionにgemのディレクトリがない • gemのディレクトリ自体がない • 今使っているバージョンのディレクトリがない
gem_rbs_collectionにgemのディレクトリがない • rbs-src の rbs-src link で tmp/rbs-src にディレクトリを作成し、 sig/rbs-src
にsymlinkを作る rbs-src link https://github.com/ruby/gem_rbs_collection.git devise 4.9 • 作成したディレクトリで gem_rbs_collection の bin/init_new_gem を実行 し雛形を生成する
よきRBSライフを