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
98
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
rbs-srcを用いたgem_rbs_collectionへのcontribution.pdf
Ryosuke Hiroe
July 27, 2024
More Decks by Ryosuke Hiroe
See All by Ryosuke Hiroe
手書きRBSの運用事例
rhiroe
2
130
スクラム開発におけるベロシティの扱い
rhiroe
0
120
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
190
Joys of Absence: A Defence of Solitary Play
codingconduct
1
420
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
780
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
850
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
360
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
420
Thoughts on Productivity
jonyablonski
76
5.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
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ライフを