2024-01-01から1年間の記事一覧
1月 aws-sdkのrbsサポートがリリースされた。 ksss9.hatenablog.com あれからちょこっとPR送ったりレビューを頼まれたりしている。 2月 raapを作り始めた。今もrbsリポジトリのテストに一部組み込まれている。つまりruby/rubyのbundled_gemのテストで毎回走…
rbsリポジトリでrubocop-on-rbsが導入された。 Introduce rubocop-on-rbs by ksss · Pull Request #1899 · ruby/rbs · GitHub RuboCopはすでにrbsリポジトリで使われていて、rubyファイルに対しての指摘はすでに行われていた。この変更によってRBSファイルに…
rubocopをRBSファイルにも効かせたい - スペクトラム で作ってたものが大体できてきて、rbs v3.5もリリースされたので公開できるようになりました。 これでRuboCopをRBSファイルにも使用できるようになりました。 github.com 例えば class Foo def foo: () -…
RBSをテストコードにするツールraapがrbsリポジトリで使われ始めた。 Introduce RaaP for testing of signature by ksss · Pull Request #1810 · ruby/rbs · GitHub rbsのCIでraapを走らせている。 現状はSet classでしか使っていないが、これから範囲を広げ…
背景 RBSも利用が増えてくると、細かい"こうしたほうがいい"が出てくることがあると予想される。 例えば、 インデント initializeの返り値はvoidを使う untyped?ではなくuntypedを使う メソッド引数にvoidを使わない などなど。 こうしたことを指摘するツー…
RaaPを開発していて、ブロック引数の扱いについて解像度が上がったのでメモとして書いておく。 これまでの考え方 Array#mapを例に見てみる。 [1, 2, 3].map do |i| i.to_s end これまではこう考えていた。 メソッドの最終的な返り値のためには、iはぶっちゃ…
speakerdeck.com RBSをテストコードにする - スペクトラム で紹介したRaaPがいい感じに育ってきた。 RubyKaigiごっことして紹介スライドを作った。とくにしゃべる予定はない。 Coverage 大きなアップデートとしては、Coverage機能を追加し、デフォルトで有効…
自分向けのまとめです。 Intersection(&) RBSにはIntersection型があります。Object & _Each[Integer]のように&で繋げている型のことです。 その前にUnion(|)とは String | Symbolのように、|で繋いだ型をUnion型と言います。こちらは理解は簡単です。 「Str…
前回までのあらすじ RBSがテストになるとおもしろいんじゃないか日記1 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記2 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記3 - スペクトラム RBSがテストになるとおもしろいんじ…
前回までのあらすじ RBSがテストになるとおもしろいんじゃないか日記1 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記2 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記3 - スペクトラム RBSがテストになるとおもしろいんじ…
DALL-Eより: Imagine a scene where the abstract concepts of Ruby programming and property-based testing blend harmoniously. Picture a large, glowing ruby crystal まいどお馴染み、作ってみたシリーズです。 今回は、RaaP(ラープ)というツールを作…
前回までのあらすじ RBSがテストになるとおもしろいんじゃないか日記1 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記2 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記3 - スペクトラム 間が開いた 結構間が開いてしまった…
前回までのあらすじ RBSがテストになるとおもしろいんじゃないか日記1 - スペクトラム RBSがテストになるとおもしろいんじゃないか日記2 - スペクトラム メソッド型 前回までで、1つの型について生成できる道筋をつけた。 今回の目標は(Integer) -> Integer…
前回 RBSがテストになるとおもしろいんじゃないか日記1 - スペクトラム 前回で型からランダムな値を作ってテストに使うと言うアイデアについて考えた。 では型からランダムな値を作るというパーツについて考えていこう。 型からインスタンスを作る作戦 例え…
class Foo def bar: (Integer) -> String end みたいなRBSがあったとして、このRBSを使って勝手にテストしてくれるツールがあるとおもしろいんじゃない? というアイデアでプロダクトを作ってみている。 プロジェクト名は適当にRaaP(RBS as a Property)とし…
みなさまに、RBSに関する重要なニュースを発表できることを嬉しく思います。 私の目標の一つにはRBSを当たり前の世界にするというものがあります。 この目標に対して大きなインパクトを残せたことに大変興奮しています。*1 aws-sdk-ruby配下すべてのgemにRBS…