ruby-trunk-changes r54459 - r54470

今日は coverage 機能の不具合修正や拡張ライブラリ openssl での nonblock 書き込みでのバッファの扱いについての変更などがありました。

usa: r54459 2016-04-01 00:04:34 +0900

tool/merger.rb で version.h を更新するためにバージョン情報を読み取る時にバージョンの各数字が1桁であることに依存していたので修正しています。このたび 2.1.10 が出たからですが、まさか ruby 本体がまっさきに問題を踏むとは。

svn: r54460 2016-04-01 00:04:34 +0900

version.h の日付更新。

usa: r54461 2016-04-01 00:13:23 +0900

そしてリリースパッケージを配布用ディレクトリに配置するための tool/release.sh でもパッケージファイルのバージョン番号が1桁であることを前提にしていたので 2桁まで対応しています。

eregon: r54465 2016-04-01 01:14:52 +0900

coverage を取る update_coverage() で coverage 測定対象の範囲を超えた時の判定で RARRAY_AREF() で範囲外のアクセスをしてしまうのではなくて RARRAY_LEN() で配列サイズを取得してそれを行番号が超えているかどうかで判定するように修正しています。 [ruby-core:74741] [Bug #12237]

normal: r54466 2016-04-01 05:33:55 +0900

拡張ライブラリ openssl で SSL_CTX_set_mode() でセットするフラグに SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER というのを追加しています。 SSL_write() で書き込みが割り込まれてリトライする時に、前回渡したのと同じバッファのアドレスでないといけなかったのを、移動できるようにするフラグだそうです。 [ruby-core:74051] [Bug #12126]

usa: r54467 2016-04-01 12:27:17 +0900

r54461 で修正した tool/release.sh ですがやっぱりバージョン番号の桁数に制限はないようにしています。

nobu: r54468 2016-04-01 14:55:30 +0900

configure.in でリポジトリの種類を判定するのに .git がディレクトリでなかった時を考慮して git rev-parse を使ってリポジトリディレクトリを探すようにしています。 [ruby-core:74759] [Bug #12239]

duerst: r54469 2016-04-01 20:58:47 +0900

enc/unicode/case-folding.rb で swapcase のためのフラグも追加するようにしています。

kazu: r54470 2016-04-01 22:00:20 +0900

r54421, r54450, r54451, r54453 の ChangeLog エントリの typo 修正。