lrama
lrama copied to clipboard
Set up rbs_collection.yaml and add a TypeProf-generated prototype rbs
Just curiosity, how did you generated these files?
Just curiosity, how did you generated these files?
I did:
$ typeprof lib/lrama/*
https://cookpad.connpass.com/event/282436/ で話していた内容です.(sorry I'll write Japanese...)
- PRマージ前にSteepfileの
check lib/lrama/bitmap.rbをcheck lib/lramaにしてほしいです.その上でsteep checkが通るようにしてください.- https://github.com/ruby/lrama/blob/718cbb35608e7f0d737c961ebba5fae2c7fd6ff8/Steepfile#L6
- 今回のgenerated-rbsを導入後,手作業で型を
sig/lrama/以下に追加していく場合はrbs subtract sig/lrama/typeprof-generated.rbs sig/lrama/#{added_rbs_file.rbs}などで除去をしてもらえると嬉しいです.- 要は
sig/lrama/*.rbsを追加された定義はgeneratedからどういう形にせよ消えてほしいです. - 参考:
rbs subtractのドキュメントはPR内にあるhackmdを読むと良いです.
- 要は
PR & コメントありがとうございます。その後のmameさんcommitを踏まえたうえでの感想ですが
raiseを書いてまわるのはちょっと入れるのに厳しいかなという気がします- 気合で全部レビューするのは不可能ではないけど厳しい
- できれば
raiseしなくていい方法がほしい
- 今後個別メソッドにrbsを付与するときにコード側の修正を同時にいれるのは大丈夫です、メソッド単位であればそこまでレビューも大変じゃないはず(もちろん変更量によりますが)
- rbs_collection.yaml を入れるのは必要なので別のPRをつくっていただいてやるのがいいとおもいます
sig/lrama/typeprof-generated.rbsについてはsteep checkの対象には含めないほうがいいと思います。ドキュメントとして、もしくは未定義の型の一覧としてtypeprof-generatedを置いておく のはよいと思います。そのうえで sig/lrama/ に今後ファイルrbs定義がふえたときに typeprof-generated.rbs から消し忘れないような仕組みをCIとしていれられるとbestだと思います