ruby-trunk-changes 2020-07-30

今日は Hash#to_proc で生成した Proc オブジェクトを lambda にする変更や defaut gems の gemspec でのバージョンを取り出す方法の一律変更などがありました。

[c904844578] Nobuyoshi Nakada 2020-07-28 15:31:28 UTC

common.mk の make extract-gems で既に対象の gem のバージョンのディレクトリが存在してたら Gem.unpack での展開は省略するようにしています。

[0d632a956c] Nobuyoshi Nakada 2020-07-29 12:08:48 UTC

dd6f5aba0e07c6e65cad026317d1a77dbb72f56e で導入した transient_heap.c のためのデバッグログで使うため追加した関数 transient_heap_status_cstr() の宣言を #if USE_RUBY_DEBUG_LOG でくくって未使用な時に定義しないようにしています。

[f0affcdbf6] Nobuyoshi Nakada 2020-07-29 13:47:00 UTC

tool/rbinstall.rb に --dry-run 指定された時にファイル操作を実施しないようにするため Gem::Installer の wrapper を使うようにしています。

[f79dc8741f] Nobuyoshi Nakada 2020-07-29 14:02:33 UTC

tool/rbinstall.rb でインストールした実行ファイルに chmod する時のファイル名を rubygems の formatted_program_filename というメソッドで整形したものを使うように修正しています。

[241244739f] Benoit Daloze 2020-07-28 18:39:27 UTC

Hash#to_proc で生成した Proc オブジェクトは is_lambda? が false なのに実際には引数の数が合わないと ArgumentError になるので、is_lambda? が true を返すように修正しています。 [ruby-core:76846] [Bug #12671]

[478dc67cf5] git 2020-07-29 16:10:26 UTC

version.h の日付更新

[28cd254b49] Nobuyoshi Nakada 2020-07-29 17:28:46 UTC

Module/Class の複製をする rb_mod_init_copy() で flags に RCLASS_CLONED フラグを立てる前に複製可能かのチェックを行うように修正しています。

[35e5b8fb82] Burdette Lamar 2020-07-29 22:25:24 UTC

Array の rdoc 用コメントの追記や文法修正。 https://github.com/ruby/ruby/pull/3372

[265968d675] Jun Aruga 2020-07-23 18:28:58 UTC

拡張ライブラリ fiddle のテストで Fiddle::Function#call で poll(2) を呼び出すのにかかった時間を測るテストで EnvUtil.apply_timeout_scale を使って時間の幅も環境変数によるスケーリングの対象にしています。

[cfbae7dae0] Espartaco Palma 2020-06-07 08:01:37 UTC

Object#dup の rdoc 用コメントのサンプルコードで、dup/clone しても Object#inspect で表示される VALUE の値が同じになってておかしかったので、評価値を書きなおしています。最初なにを変更したのかよくわからなかったけどたしかに元の # => の表示がおかしかったですね。たぶん実際に実行したんじゃなくてコピペしたんだろうな。

[b2d96abb42] Nobuyoshi Nakada 2020-07-28 15:31:52 UTC

default gems で gemspec ファイルでバージョンを表す定数を require で取り込んで参照する方法は一律でやめて、対象のファイルをテキストファイルとして読み込んで正規表現で切り出す方法に統一しています。名前空間を知る必要があるとかビルド時に余計な処理コストがかかるという他にクロスコンパイル時に動かないことがあるという問題があるため。クロスコンパイル時に動かないっていうのはどういうことだろ。