ruby-trunk-changes r61212 - r61237

今日は標準添付ライブラリ uri の不具合修正や、String#undump メソッドの追加、bigdecimal や openssl の更新などがありました。

kazu: r61212 2017-12-13 23:08:20 +0900

Regexp#fixed_encoding? の rdoc 用コメントで String#force_encoding? の発生する例外を ArgumentError と書かれてたので Encoding::CompatibilityError に修正しています。

mrkn: r61213 2017-12-14 00:28:30 +0900

拡張ライブラリ bigdecimal の upstream から 1.3.3 をマージしています。 差分はこちら https://github.com/ruby/bigdecimal/compare/v1.3.2...v1.3.3
BigDecimal.new や BigDecimal#dupBigDecimal#clone で警告を出すようにしているみたいですね。

svn: r61214 2017-12-14 00:28:31 +0900

version.h の日付更新。

mrkn: r61215 2017-12-14 00:36:25 +0900

NEWS ファイルに r61213 の bigdecimal 1.3.3 への更新を追記しています。

eregon: r61216 2017-12-14 00:59:26 +0900

Thread.report_on_exception の rdoc 用コメントにデフォルト値の変更について追随と、メッセージが出るようになってしまって困った時には、例外を Thread 内で rescue するようにするか、Thread#report_on_exception= で Thread 毎に無効にすることができるというヒントを追記しています。

k0kubun: r61217 2017-12-14 01:07:52 +0900

VM 命令の branchiftype のオペランドのオブジェクトのタイプを数値のままでなくマクロ名に変換して出力するようにしています。

knu: r61218 2017-12-14 10:11:28 +0900

標準添付ライブラリ uriURI::Generic#split_path で path を "/" で分割する時に、複数の "/" が連続しているのを1つに正規化してしまっていたのを修正しています。 [ruby-core:54729] [Bug #8352]
"According to the relevant RFCs and WHATWG URL Standard, empty path components are simply valid" だそうで、へーそうだったのか……。

hsbt: r61219 2017-12-14 11:21:41 +0900

make help で表示されるヘルプメッセージに make test-bundler と test-bundled-gem について追加しています。

yuki: r61220 2017-12-14 11:29:01 +0900

gems/bundled_gems の did_you_mean のバージョンを 1.2.0 に更新しています。

nobu: r61221 2017-12-14 13:40:15 +0900

拡張ライブラリ bigdecimal の extconf.rb で生成する Makefile に extconf.h の依存関係として gemspec ファイルを追加するようにしています。 [ruby-core:84247] [Bug #14180]

nobu: r61222 2017-12-14 14:13:23 +0900

prelude.rb に rdoc 用の :stopdoc: というタグをつけてドキュメント化を抑制するようにしています。

mame: r61223 2017-12-14 14:54:10 +0900

parse.y の未使用変数の警告抑制のため ripper 版で使わない変数の宣言はコメントで区切られた本体用の部分のほうにだけ書くように修正しています。

mame: r61224 2017-12-14 15:02:26 +0900

AST の NODE の位置情報を設定する関数群の改名。 nd_set_column() -> nd_first_set_column(), nd_lineno() -> nd_first_lineno(), nd_set_lineno() -> nd_first_set_lineno() に改名しています。つまり lineno, column は範囲(開始位置、終了位置)セットのものだよーというのを強調しているわけですね。

naruse: r61225 2017-12-14 15:30:22 +0900

r61218 で標準添付ライブラリ uri で path を分割する時の正規表現を修正してましたが、ただの文字列で充分になったので正規表現やめて文字列を渡すようにしています。

usa: r61226 2017-12-14 15:38:47 +0900

拡張ライブラリ win32ole のテストで Thread.report_on_exception = true のデフォルト化でメッセージが出るようになってたテストで Thread#report_on_exception=false で無効化しておくようにしています。

mame: r61227 2017-12-14 17:22:22 +0900

nd_last_loc() と nd_set_last_loc() という NODE の範囲情報の終端側の lineno と column を参照/セットするマクロを定義して parse.y で利用するようにリファクタリングしています。

tadd: r61228 2017-12-14 17:47:13 +0900

String#undump というメソッドを追加しています。これは String#dump で変換された文字列を元の文字列に戻すことを目的としたものみたいです。 うまく戻せないような文字列の可能性もありますが、それはチェックして RuntimeError を発生させているようです。 https://github.com/ruby/ruby/pull/1765 [ruby-core:74903] [Feature #12275]

stomar: r61229 2017-12-14 19:21:56 +0900

Enumerable#all?, #any?, #none?, #one? の rdoc 用コメントのマークアップの修正。

stomar: r61230 2017-12-14 19:23:10 +0900

NEWS ファイルの英文法の修正。

stomar: r61231 2017-12-14 19:24:38 +0900

Process.last_status の rdoc 用コメントの英文法の修正。

stomar: r61232 2017-12-14 19:25:17 +0900

Struct.new の rdoc 用コメントの :keyword_init オプションの記述を修正しています。

stomar: r61233 2017-12-14 19:25:57 +0900

Integer#allbits?, #anybits?, #nobits? の rdoc 用コメントの文法の修正。

naruse: r61234 2017-12-14 19:38:36 +0900

r60374 で NaCl のサポートは終了しましたが ext/Setup.nacl というファイルが残っていたので削除しています。

rhe: r61235 2017-12-14 20:19:16 +0900

拡張ライブラリ openssl に upstream から 2.1.0 をマージしています。 差分はこちら https://github.com/ruby/openssl/compare/v2.1.0.beta2...v2.1.0
テストの修正と OpenSSL::PKey::EC::Point#to_bn, #to_octet_string の追加くらいですかね。

rhe: r61236 2017-12-14 20:19:17 +0900

NEWS ファイルに openssl のバージョン更新について追記しています。

eregon: r61237 2017-12-14 22:08:02 +0900

Thread.report_on_exception がデフォルトで true になったのにあわせて、メインスレッドの Thread 毎の report_on_exception フラグも true にしておくようにしています。 [ruby-core:84227] [Feature #14143]