ruby-trunk-changes 2024-02-12

今日は主に Windows 環境向けのビルドプロセス修正や ASAN を有効にしてビルドする時の対応、rubyspec の更新などがありました。

[aa36e44c05] Nobuyoshi Nakada 2024-02-11 10:34:13 UTC

Windows 環境で生成する config.h に HAVE_INTTYPES_H マクロの定義を追加してヘッダの取り込みを抑制することで再定義の警告を抑制しています。

[c77f736bc1] Nobuyoshi Nakada 2024-02-11 10:43:06 UTC

Windows 環境での word size の判定に関して参照するマクロと _WIN64 と _M_AMD64 との使い分けを修正しています。

[ea2ea74a26] Nobuyoshi Nakada 2024-02-11 11:03:18 UTC

42130a64f02294dc8025af3a51bda518c67ab33d の Fiber 用 coroutine の実装の copy というのを pthread 版に名前を変更したのに Windows 版の win32/Makefile.sub で追随していなかったのを修正しています。

[603392b8d4] Nobuyoshi Nakada 2024-02-11 11:55:26 UTC

Fiber 用の coroutine の実装の win64 版での関数定義の引数に明示的に void を書くようにしています。

[90fe1b4402] Nobuyoshi Nakada 2024-02-11 13:00:12 UTC

win32/Makefile.sub で生成する config.h の SIZEOF_XXX のマクロ定義で判定に使う変数を $(ARCH) から $(TARGET_OS) に変更しています。

[bbccabe6d6] Nobuyoshi Nakada 2024-02-11 16:07:05 UTC

標準添付ライブラリ optparse の rdoc 用コメントの追加や :nodoc: によるドキュメント化抑制の追加など。

[a63a0c247b] Nobuyoshi Nakada 2024-02-11 16:09:51 UTC

Windows 環境でコンパイラの不具合の検出のためにコンパイルするソースコードで printf(3) を使うための #include <stdio.h> を追加しています。

[c9006ddb88] Nobuyoshi Nakada 2024-02-11 16:30:58 UTC

標準添付ライブラリ optparse の OptionParser#define_by_keywords の rdoc 用コメントの追加と引数名の変更。

[1d467f2255] KJ Tsanaktsidis 2024-02-11 22:27:16 UTC

ASAN を有効にしてビルドした時に sigaltstack を利用しないようにする(CRuby 自体が利用しているため)のとメモリリークチェックを無効にするオプションを設定するように __asan_default_options() という関数を定義しています。こういう関数があったら呼ぶというインターフェースなんだな。 [ruby-core:116668] [Bug #20256]

[697ade7bda] KJ Tsanaktsidis 2024-02-11 22:57:00 UTC

doc/contributing/building_ruby.md に ASAN を有効にしてビルドする方法について追記/更新しています。 [ruby-core:116634] [Bug #20248]

[93accfdf48] yui-knk 2024-02-12 04:50:27 UTC

9b40f42c22232aaae1b2b17bd6118eacc4c0bee3予約語 __ENCODING__ に対応する AST の node の型に NODE_ENCODING を導入した時の対応の修正で --dump=parsetree で AST を dump する時の処理で rb_bug() で異常終了するようになっていたのを修正しています。

[c20e819e8b] Jeremy Evans 2024-01-31 01:15:44 UTC

非常に要素数の大きな Hash を **h のように keyword splat でメソッドの引数に渡すと異常終了することがあった不具合を修正しています。 C の配列で受け切れないサイズの時に内部的に Hash オブジェクトを生成してそちらで受けるように fallback するようにしているようです。おそらくキーワード引数の処理の最適化の時に入った問題かな。 [ruby-core:116523] [Bug #20230]

[4f7de1dcdd] Nobuyoshi Nakada 2024-02-12 07:50:30 UTC

1d467f2255112f9e712d5d9aa6f2cd0a102fb56e で導入された ASAN 有効化時のオプションを伝える関数 __asan_default_options() の定義の C のスタイルを修正しています。

[7fc89a9262] yui-knk 2024-02-12 05:30:48 UTC

parse.y で Hash リテラルに同じキーが重複していないかチェックするためのリテラルの NODE をチェックするための st_table の key に VALUE ではなく NODE のポインタをそのまま利用するようにしているようです。

[90a746d246] Benoit Daloze 2024-02-12 09:55:57 UTC

common.mk の test-spec-precheck ターゲットの依存関係に extract-gems を追加しています。 rubyspec の実行に bundled gems が必要になったからでしょうか。

[b19d2409be] Benoit Daloze 2024-02-12 09:56:33 UTC

spec/ruby に upstream から最新版をマージしています。

[d15301d482] Benoit Daloze 2024-02-12 10:05:51 UTC

spec/ruby の drb のテストに不具合? で動かないテストを一時的に除外するように guard を追加しています。

[ffe1a68bda] Benoit Daloze 2024-02-12 10:33:08 UTC

spec/rubybigdecimal のテストで i686 アーキテクチャでは失敗するテストを除外するようにしています。

[39788e5888] Benoit Daloze 2024-02-12 10:33:19 UTC

90a746d246d51d105d7f3e0d1c2ddf7994dd2d4b の再修正で common.mk の test-spec-precheck の依存関係に追加した extract-gems を prepare-gems に変更しています。

[06995eb45b] tomoya ishida 2024-02-12 11:28:50 UTC

429eeb09f25bd1bd3f64f70c6ef409bedd3c6c1f で導入された irb の組み込みコマンド exit! の実装で警告抑制のために main.exit! の上書き定義をしておく? ようにしています。 https://github.com/ruby/irb/pull/868