ruby-trunk-changes r49954 - r49963

きょう は close_read, close_write などのメソッドも close と同様重複しても例外を発生させないようにする変更や fiddle の同梱版 libffi のビルドエラーの修正などがありました。

normal: r49954 2015-03-13 07:03:53 +0900

拡張ライブラリ openssl の OpenSSL::SSL::SSLSocket の nonblock 版メソッドで返すための :wait_readable や :wait_writable の Symbol を毎回 rb_intern() しているのをあらかじめ作成しておいて static 変数に格納したものを返すようにしています。

normal: r49955 2015-03-13 07:04:24 +0900

r49948 で対応した accept_nonblock の exception キーワード引数対応で rb_hash_aref() を使っていたのを rb_hash_lookup2() を利用するように修正しています。 Hash のデフォルト値の影響を受けないようにするため。

nobu: r49956 2015-03-13 10:55:44 +0900

Makefile.in で probes.o の probes.stamp の依存関係は DTRACE_REBUILD が yes の時だけにしています。 これは configure で dtrace -G の挙動をチェックしてオブジェクトファイルが更新される時に yes になる変数です。

nobu: r49957 2015-03-13 11:37:49 +0900

拡張ライブラリ fiddle で libffi のビルド時のコンパイラオプション --enable-shared と --enable-static の利用条件が間違っていたのを修正しています。 [ruby-dev:48901] [Bug #10960]

akr: r49958 2015-03-13 12:29:43 +0900

readline のテストでも環境変数の復旧を行うようにしています。

nobu: r49959 2015-03-13 14:12:43 +0900

ObjectSpace.count_xxx のテストで assert_equal のかわりに assert_not_empty や assert_operator などの assertion を利用してエラー時によりわかりやすいメッセージになるようにしています。

nobu: r49960 2015-03-13 15:03:03 +0900

io.c で RFILE(io)->fptr の取り出しと rb_io_check_initialized() のチェック呼び出しをセットにした rb_io_get_fptr() というユーティリティ関数を導入してこれを利用するようにリファクタリングしています。

nobu: r49961 2015-03-13 15:03:25 +0900

IO#close_read と IO#close_write でも IO#close と同様に重複して呼ばれても例外を発生させないようにしています。 また close 後に close_read や close_write を呼んでも例外を発生させないようになっています。

nobu: r49962 2015-03-13 15:04:39 +0900

拡張ライブラリ stringio でも同様に StringIO#close_read や StringIO#close_write が重複しても例外を発生させないように変更しています。

nobu: r49963 2015-03-13 17:29:26 +0900

r49953 で defs/gmake.mk に追加された条件文の filter 関数の余分なカンマを削除しています。