Ruby1.9に対してできること

(この記事はRuby Advent Calendar jp: 2009 : ATNDの6日目です。前日はMr.GことJugyoさんでした)

2日目のyharaさんの記事にもあるように、Ruby1.9では、1.8よりも便利な機能が満載です。

最新の安定版の1.9は、1.9.1-p243ですが、現在1.9.2の開発が進められています。1.9.2のできはYARVの作者の笹田さんが素晴しいとおっしゃるぐらいのものですが、リリースまでには一つ壁があります。

その壁というのは、RubySpecという、いろんなRuby実装の仕様をまとめようというプロジェクトがあります。先日、リリースマネージャーのYuguiさんから、このRubySpecが通らない限り1.9.2をリリースしないとの宣言がありました。

つまり、すばらしいRuby1.9である1.9.2を安心して使うには、RubySpecを通るようにRubyを修正 or RubySpecを修正する必要があります。

パっと聞くと難しそうな感じで、普段ユーザーとして使っている私達には無理そうなことですが、私達にもできることがあります。

まずは、最新のRubyを用意して、こちらのページを参考にRubySpecを動かしてみましょう。たぶんいっぱいエラーがでると思います。

次に、そのエラー群から、てきとうにわかりやすそうなエラーを選んで、RubySpecのコードを見て考える。

あきらかにRubySpecが違う場合は、RubySpecのRedmineにコメントを、Rubyがおかしそうだったら、ruby-devもしくはRuby Issue Tracking Systemに登録してみましょう。RubySpecのRedmineは英語なので、英語がわかんなーいという方もいると思います。そういう方はRuby Issue Tracking Systemに登録しましょう。Ruby Issue Tracking Systemには、RubySpecというタグが存在しています。もちろん、そのときにパッチが書ければmore betterですが。

一人でやるのがつらいようでしたら、毎週火曜の夜に活動しているAsakusa.rbが、ちょうどやっているかもしれないので、ふらっと来てみるといいかもしれません。また、遠方でいけないという方は、ircにはいってつぶやいてもらえばいいと思います。

RubySpecを実施すると最新のRuby1.9や、安定しているRuby1.8との比較をだんだんとする必要がでてきます。そんなときは、rvmが、ちょうべんり(と個人的に)なので使ってみるといいかもしれません。

普段、お世話になっているRubyに貢献できるいい機会ですので、みなさんも是非やってみてください。