ruby-trunk-changes r55369 - r55381

今日は標準添付ライブラリ forwardable の修正などがありました。

nobu: r55369 2016-06-11 01:01:25 +0900

標準添付ライブラリ forwardable の SingleForwardable を Object に extend するケースのテストを追加しています。

svn: r55370 2016-06-11 01:01:25 +0900

version.h の日付更新。

ngoto: r55371 2016-06-11 01:47:05 +0900

GCC_VERSION_SINCE の定義でかっこを追加しています。 Solaris 上の GCC 3.4.3 でのビルドエラーの修正とのことですが、この環境での問題というより GCC_VERSION_SINCE の条件が間違っているのをこの環境だと踏んでしまってたということみたいです。 [ruby-dev:49660] [Bug #12479]

nobu: r55372 2016-06-11 09:31:30 +0900

標準添付ライブラリ forwardable の _delegator_method で例外発生時の例外オブジェクトのバックトレースから forwardable のスタックを消す処理を削っています。 末尾呼び出し最適化でどのみち消えるからとのことですが、今ってデフォルトで有効になるんだっけ。

duerst: r55373 2016-06-11 09:46:21 +0900

enc/iso_8859_1.c に独自の case_map() 関数を追加して ASCII 文字のみのサポートだったのを 0xdf (Sharp S) の対応を追加しています。

duerst: r55374 2016-06-11 09:58:49 +0900

r55373 の iso-8859-1 用の case_map() 関数の ONIGENC_ISO_8859_1_TO_LOWER_CASE() を利用した部分を書き換えています。 OnigEncISO_8859_1_ToLowerCaseTable を参照するのではなく EncISO_8859_1_CtypeTable を参照するようにしています。

nobu: r55375 2016-06-11 11:24:38 +0900

r55373, r55374 の iso-8859-1 の casemap 対応で codepoint がマジックナンバー化されていたので enc/iso_8859.h を #include して SHARP_s という定数マクロを利用するようにしています。

nobu: r55376 2016-06-11 13:52:35 +0900

標準添付ライブラリ forwardable の Forwardable._delegator_method で Object#__send__ を使ってメソッド呼び出ししていたところを、RubyVM::InstructionSequence.compile を使って指定された名前がメソッド呼び出しになるかどうかをチェックして、ならない時だけ __send__ を使うようにしていいます。

nobu: r55377 2016-06-11 14:04:22 +0900

拡張ライブラリ objspace の ObjectSpace.dump_all で行指向の JSON ではなく全体として JSON として parse で出力するようにしています。

nobu: r55378 2016-06-11 15:02:46 +0900

String#oct の rdoc 用コメントの typo 修正。 https://github.com/ruby/ruby/pull/1379

nobu: r55379 2016-06-11 15:19:40 +0900

標準添付ライブラリ net/smtp の rdoc 用コメントから既にリンク切れになっている日本語版のドキュメントの URL を削除しています。 https://github.com/ruby/ruby/pull/1380

hsbt: r55380 2016-06-11 18:38:04 +0900

拡張ライブラリ json がいくつかの組み込みクラスや標準添付ライブラリのクラスを拡張しているところで不要なクラスのコメントを削除しています。なんらかの annotation っぽいですけど rdoc に処理されてしまうためということなので、このコメント自体は rdoc 用ではないみたいですね。 [ruby-core:74835] [Bug #12255]

usa: r55381 2016-06-11 23:08:50 +0900

r55376 の forwardable の変更でテストが失敗していたようで method 変数には引数とブロック引数をわたすかっこも含めて文字列として埋め込むようにしています。