今日は Psych::Parser#parse でのメモリリークの修正がありました。
kosaki:r31927 2011-06-05 23:35:09 +0900
rb_thread_stop_timer_thread() 等の関数プロトタイプ宣言を直接 eval.c や process.c に書くのをやめて vm_core.h を include することで取り込むようにしています。
tenderlove:r31930 2011-06-06 09:41:24 +0900
Psych::Parser#parse で yaml_parser_parse() で取得した event に対して yaml_event_delete() を呼ぶようにしています。メモリリークの解消。
svn:r31931 2011-06-06 09:41:27 +0900
version.h の日付更新。
naruse:r31933 2011-06-06 10:53:41 +0900
lib/net/http.rb で openssl と securerandom を遅延ロードするために Module#autoload を利用して OpenSSL や SecureRandom を利用しようとした時に自動で require するようにしていたのを、autoload を使うのをやめて、defined? で定数のが定義されてるかチェックして require するようにしています。最近 ruby-dev で話題になっていた autoload は使わないようにしていこうという方針による修正だと思います。
sorah:r31934 2011-06-06 12:47:04 +0900
Test::Unit::Runner#puke を定義して MiniTest::Unit#puke を上書きしています。先日マージされた minitest 2.2.2 で -v オプションをつけないと skip の結果のメッセージが表示されなくなる仕様変更を従来の動作に戻して --hide-skip オプションをつけた時だけ skip の結果を隠すようにしています。
usa:r31935 2011-06-06 14:09:58 +0900
include/ruby/defines.h にて rb_infinity と rb_nam に extern を直接書いていたところを RUBY_EXTERN を使うようにしています。"export for Windows " とあるのは INFINITY や NAN が未定義の環境ということでしょうか。
usa:r31936 2011-06-06 14:12:17 +0900
ext/date/date_core.c の valid_jd_sub() で double に変換して valid_sg() に渡さないといけないところを VALUE のままで渡していたところを修正。Date#valid_jd? の判定がうまくいっていなかった可能性があります。また警告除去のためのキャスト追加。
usa:r31937 2011-06-06 14:38:11 +0900
rdoc のテストで Windows での改行コードの自動変換の不具合(r31748 か r31872 あたりで修正済み)を回避するためのコードが入っていたのを削除しています。
usa:r31938 2011-06-06 15:11:37 +0900
INFINITY や NAN の定義のための rb_infinity や rb_nan の宣言を include/ruby/defines.h から include/ruby/missing.h へ移動しています。RUBY_EXTERN の定義が include/ruby/defines.h のこの宣言より後にあったのでこの位置ではだめだったようです。
tadf:r31939 2011-06-06 21:05:12 +0900
date で strftimev() で日付を文字列化する時のフォーマット指示子を %F -> %Y-%m-%d, %T -> %H:%M:%S のように1文字の指示子で表現していたものを分解しています。また Date#strftime が引数が taint されていたら返す文字列も taint するようにしています。
nagachika:r31940 2011-06-06 21:31:51 +0900
tadf:r31941 2011-06-06 21:38:15 +0900
Date/DateTime の rdoc に少し特記事項を追記しています。
nagachika:r31942 2011-06-06 21:41:06 +0900
tadf:r31943 2011-06-06 22:00:38 +0900
Date._strptime および Date#strftime が引数の文字列のエンコーディングと同じエンコーディングの文字列を返すことを確認するテストを追加しています。
nagachika:r31944 2011-06-06 23:06:59 +0900
cont.c で Fiber の実装に getcontext/setcontext を利用するバージョンを使うかどうかの判定を #ifdef ではなくて #if を使うようにして、FIBER_USE_NATIVE には 1/0 を指定するようにしています。これはコンパイルオプションに -DFIBER_USE_NATIVE=0 を指定すると getcontext/setcontext を利用しないバージョンに切り替えることができるようにするためです。 [ruby-dev:42170]