ruby-trunk-changes r59369 - r59376

今日は defined? に渡すメソッド呼び出しの式での ** の展開で SEGV することがある不具合の修正などがありました。

kazu: r59369 2017-07-19 22:59:58 +0900

r59328 で追加された Hash#transform_keys と Hash#transform_keys! について NEWS ファイルに追記しています。 [ruby-core:81290] [Feature #13583]

kazu: r59370 2017-07-20 00:01:01 +0900

NEWS ファイルの項目を辞書順に並び替えています。

svn: r59371 2017-07-20 00:01:01 +0900

version.h の日付更新。

shugo: r59372 2017-07-20 08:08:34 +0900

標準添付ライブラリ net/imap でコマンド(?)行末の余分な空白を読み飛ばすようにしています。 Microsoft Exchange Server の対応だそうです。 [ruby-core:81641] [Bug #13649]

shugo: r59373 2017-07-20 08:38:31 +0900

標準添付ライブラリ net/pop で TLS の handshake に @open_timeout のタイムアウト値が効くように修正されています。 [ruby-core:80490] [Feature #13389]

nobu: r59374 2017-07-20 11:43:45 +0900

再現スクリプトすごい妙な感じでどこがポイントかわかりませんが、とにかくある条件で toplevel での return で SEGV を起こすという不具合を修正しています。 VM stack の消費量予測を間違うみたいです。 [ruby-core:82108] [Bug #13755]

nobu: r59375 2017-07-20 14:48:26 +0900

メソッドの引数で ** でキーワード引数に Hash を展開して渡す記法で空Hashを渡すのを、defined? に渡すと異常終了するという不具合を修正しています。 [ruby-core:82113] [Bug #13756]

yugui: r59376 2017-07-20 20:00:39 +0900

eval.c の #if 0 でコメントアウトされていた関数 errinfo_setter() と、ずっと未使用だった関数 rb_rubylevel_errinfo() を削除しています。static じゃないけどシンボルは公開されていない関数だったそうです。