ruby-trunk-changes 2023-08-31

今日は主に yarp の更新、Kernel#Integer() の第2引数 base の変換の細かな挙動の変更などがありました。

[74f4d2683e] Nobuyoshi Nakada 2023-08-26 14:51:34 UTC

tool/sync_default_gems.rb で yarp の同期時に yarp/template/java/ の配下のファイルは削除するようにしています。

[c74039eec7] Nobuyoshi Nakada 2023-08-30 15:38:27 UTC

yarp のテストで assert_raises のかわりに assert_raise を利用するよう変更。

[9d8d2b81d2] Nathan Froyd 2023-08-30 15:42:26 UTC

yarp のテストの変更ですが conflict が解消されていないようです。

[c5c0a3cf17] Kevin Newton 2023-08-30 16:08:00 UTC

同じく yarp のテストの変更ですがさらに conflict してしまってそのままコミットされたみたいです。

[06f54c9a8c] Kevin Newton 2023-08-30 16:43:56 UTC

yarp のテストの conflict 解消失敗を修正しています。

[1edb03788d] Takashi Kokubun 2023-08-30 17:18:09 UTC

GitHub Actions の RJIT を有効にしたビルドで make test-all 時にオプションに -q を渡すようにしています。

[7be08f3f58] Kevin Newton 2023-08-29 14:48:20 UTC

yarp の拡張ライブラリで文字列を char* でなく uint8_t* で扱うようにしているみたいです。

[49dff732e8] Kevin Newton 2023-08-30 18:32:52 UTC

7be08f3f58a818461b43c8f9a756d656e7e928c5 の続きで yarp 向けの C API でも char* と uint8_t* の変換を行うようにしています。

[082962e857] KJ Tsanaktsidis 2023-05-26 03:12:20 UTC

tool/runruby.rb で FreeBSD では環境変数 LD_BIND_NOW=yes を設定して起動するようにしています。 FreeBSD では multi thread からの fork でハングアップする不具合があるそうでその対策のためだそうです。

[ae609a995e] Jeremy Evans 2023-06-22 23:23:44 UTC

Kernel#p の rdoc 用コメントに出力が割り込み不可能な実装がありえるという注意書きを追加しています。 [ruby-core:108728] [Bug #18810]

[c0cb9efb16] Kevin Newton 2023-08-30 20:12:50 UTC

yarp の config.yml の修正。

[209eda599a] Kevin Newton 2023-08-30 20:44:21 UTC

yarp のビルドプロセスの古い BASERUBY 向けの修正。

[0aa404b957] Peter Zhu 2023-08-30 20:49:32 UTC

Object Space の heap の Variable Width Allocation による slot サイズ別の初期サイズを指定する環境変数RUBY_GC_HEAP_INIT_SIZE_#_SLOTS から RUBY_GC_HEAP_#_INIT_SLOTS に変更し、さらに数字部分を slot のバイトサイズ(40, 80, 160...) ではなくインデックス(0, 1, 2, 3, 4) を使うように変更しています。

[dc911a47ce] Nobuyoshi Nakada 2023-08-30 06:04:38 UTC

tool/sync_default_gems.rb の無視するファイルパターンのロジックが resolve_conflicts に漏れてたところを ignore_file_pattern_for 内に移動しています。

[97df09f276] Nobuyoshi Nakada 2023-08-30 06:05:50 UTC

tool/sync_default_gems.rb の主に conflict 解消や無視するファイルパターンの利用あたりのリファクタリング

[3d2a83b909] Nobuyoshi Nakada 2023-08-31 01:35:10 UTC

tool/sync_default_gems.rb の bundler(rubygems) の無視するファイルパターンの bundler/spec/support/artifice/vcr_cassettes を削除しています。

[cbe36ef6cc] Nobuyoshi Nakada 2023-08-31 02:24:08 UTC

tool/sync_default_gems.rb の無視するファイルパターンの yarp 向けの特別処理も不要になったみたいで削除しています。

[2ce1b77ce0] Nobuyoshi Nakada 2023-08-31 02:32:29 UTC

tool/sync_default_gems.rb の一部のコマンド起動時に出力を File::NULL にリダイレクトして捨てるようにしています。

[fa70e361e0] Nobuyoshi Nakada 2023-08-31 05:06:35 UTC

GitHub Actions の CodeQL によるチェックを実施する workflow で利用するリソースの RAM を増やすように設定しています。

[b7364069bf] Nobuyoshi Nakada 2023-08-31 02:48:52 UTC

yarp の Java 向けのテンプレートを削除しています。

[07ddb3589f] Hiroshi SHIBATA 2023-08-31 07:35:07 UTC

標準添付ライブラリ shellwords の空行削除。

[24b2bb465f] Nobuyoshi Nakada 2023-01-18 01:25:25 UTC

Kernel#Integer() のテストメソッドを分割しています。

[c45176dbca] Nobuyoshi Nakada 2023-01-18 01:30:44 UTC

Kernel#Integer() で第2引数に基数を渡す時にその第2引数を rb_check_to_int() で変換していたのを単に NUM2INT() で変換するようにしています。ついでに Kernel#Integer() を ruby 実装するようにしています(ほぼ C の関数を Primitiv 経由で呼ぶだけですが)。 rb_check_to_int() でも to_int で変換しますがその後でさらに NUM2INT() を呼ぶので to_int メソッドが Integer を返さずたとえば String だった時にそのまま再度整数に変換されて通ることがあるので、それは TypeError 例外にするというためみたいです。なるほど……。 [ruby-core:111857] [Bug #19349]