ruby-trunk-changes 2020-03-16

今日は bundler のリポジトリrubygems への統合の対応や Hash#transform_values の高速化の時に入った不具合修正などがありました。

[a8ced388fd] Nobuyoshi Nakada 2020-03-15 13:09:22 UTC

拡張ライブラリ stringio のバージョンを指定するマクロを 0.1.1 に上げています。

[1ad9b231ca] Nobuyoshi Nakada 2020-03-15 13:15:39 UTC

stringio の e257c08f2ec27e2d66cdfa7e2415deb492522e22 の修正についてのテスト追加と StringIO::VERSION による rubyspec の分岐を追加しています。 [ruby-core:96758] [Bug #16497]

[f14409c9bb] Nobuyoshi Nakada 2020-03-15 13:20:16 UTC

1ad9b231ca6b86fe6a2f186022ad3854d2c31743 の再修正。 rubyspec で stringio のバージョンをトップレベルの定数に定義してしまわないように self::VERSION のように無名クラス内の定数に受けておくようにしています。

[713dc619f5] Alan Wu 2020-03-14 00:59:55 UTC

21994b7fd686f263544fcac1616ecf3189fb78b3 の Hash#transform_values の高速化のための変更が write barrier を削ってしまったため GC で SEGV する恐れがあったので再度 write barrier を追加しています。 また rb_hash_stlike_foreach_with_replace() のコールバックに渡す引数も transform_values_foreach_replace() に渡した時に write barrier を入れるために使われるのでコピー先の Hash オブジェクトを渡すように修正しています。これを 0 にしてたのはわざとだったのかな。 [ruby-core:97449] [Bug #16689]

[4ea8356946] git 2020-03-15 22:12:13 UTC

version.h の日付更新

[ad10760b05] Yusuke Endoh 2020-03-16 02:00:32 UTC

proc.c の rb_block_arity() の switch 文の /* fall through */ という break がない時の警告抑制に使われるコメントが return 文のあとにあって意味がないので削っています。

[0f2f07a9bb] Nobuyoshi Nakada 2020-03-16 01:45:22 UTC

st.c のインデント修正のみ。

[8a6ba10f9d] Nobuyoshi Nakada 2020-03-16 08:26:10 UTC

tool/rbinstall.rb の RbConfig::CONFIG の "sitelibdir" と "vendorlibdir" が存在する時だけこれらの設定を利用するようにしています。チケットをみると configure に --with-sitedir, --with-sitearchdir, --with-vendordir, --with-vendorarchdir などのオプションに no を渡した時に期待したように動かないという問題があったようです。 [ruby-dev:49628] [Bug #12392]

[4be2a891cc] Hiroshi SHIBATA 2020-03-16 10:28:52 UTC

bundler が rubygemsリポジトリに統合されたようで、tool/sync_default_gems.rb の同期元や同期するときのディレクトリ構成の対応の修正をしています。 また doc/maintainers.rdoc の bundler のリポジトリの URL も修正しています。