mruby master changesを始めます
mrubyのmasterの変更履歴を毎日書きます。
書こうとしたきっかけは、まずmrubyが初めてプルリクして採用されたオープンソースです。rubyのコミッターになりたくて、Rubyソースコード完全解説読んだり、ソースを読んだりしたんですが、当時(1年前)rubyのビルドができなくて諦めました。(今はビルドできます)そこでmrubyを知って、mrubyのソース読んで、ビルドもできたんです。
どんどんmrubyの機能を実装してみたかったんですが、そこは技術が伴わなくて、なかなかできなかったんです。なんとかリファクタリングするってことで、プルリクが採用してもらえました。
あと、mrubyでMessagePackを動作するmruby-msgpackってのを作りました。
その後、mrubyは他の人のプルリクを見ることはあったんですが、自分ではプルリクしなくなりました。
rubyを直近2~3年でrubyに貢献があった人に贈られるRuby Prize 2013をnagachikaさんが受賞されました。ruby-runkの変更履歴を毎日解説したruby-trunck changesの活動が認められました。
ソースを書く以外にもこんな貢献の仕方があるのかと知りました。
mrubyの変更履歴を書くことによって、mrubyの勉強なるかと思って始めます。今は、Stringのutf8実装に興味があります。
2014-02-27 mruby master changes d1526b0 - d264e1a
mruby master changes d1526b0 - d264e1a
今日ははじめてのmruby master changesです。
2014-02-27 19:00 Matz commit d1526b0
gc.cのfor文で変数ciがNULLの時、continueではなく、breakに修正しています。continueだとfor文のループする条件(ci <= c->ci)の判定がおかしくなってしまいますね。
2014-02-26 22:26 cubicdaiya commit 677cd22
Kernel#instance_variable_defined?メソッドのテストコードを追加しています
2014-02-27 09:45 cubicdaiya commit 83e9c45
Tatsuhiko KuboさんがmrubyのAUTHORSに加わりました
2014-02-27 08:23 Matz commit 313f6b5
sprintf.cのswich文でbreakを忘れていたので、追加したとのこと。ないとどうなっちゃったんでしょうね
2014-02-27 08:21 Matz commit b31a906
class.cのboot_defclass()関数でsuperがインスタンスがある場合もNULLの場合もライトバリアしていましたが、superがNULLの場合はライトバリアしないように修正しました。ライトバリアとはGCに回収されないようにオブジェクトに印を付ける作業です
2014-02-26 14:49 Patrick Ellis commit a75758d
まだ正式にリリースではないから、URLなどはまだアクセスできないよっていう注意がきがあったが、mrubyはバージョン1.0.0がリリースされ、http://www.mruby.org/にもアクセスできるようになったので、README.mdから削除されました
2014-02-27 04:23 Matz commit 0c1c441
inspectメソッドでmethod_missingになったとき、再帰を避けます
2014-02-27 03:50 Matz commit 38e9ce2
Travis CIとPCでバックトレースを取得できるように、新しいmrb_get_backtrace_at()関数を追加
2014-02-27 03:45 Matz commit d264e1a
インデントの修正