ruby-trunk-changes 2021-11-08

今日は GitHub Actions の MinGW や mswin 向け workflow の整理や Memory View 機能の finalizer から解放時の異常終了の修正などがありました。

[5eb54c495f] Nobuyoshi Nakada 2021-02-07 15:02:20 UTC

GitHub Actions の MinGW 環境向け workflow で環境変数の設定を各 step でしていたのを Write-Output と $env:GITHUB_ENV というのを使ってまとめてするようにリファクタリングしています。

[30583bc947] Nobuyoshi Nakada 2021-11-06 16:34:51 UTC

GitHub Actions の Windows 環境向け workflow で nmake の incs, extract-extlibs, all のターゲットの実行を 1つのステップでしていたのを別々のステップにして不要な echo コマンドを削ったり不要な name での名前付けを消したりしています。

[ba0e3ea130] Nobuyoshi Nakada 2021-11-07 04:35:40 UTC

GitHub Actions の Windows 版で test-all 時のオプションの -j の設定方法とプロセッサ数をそのまま渡さず少し多めにするように変更しています。

[ec032e86fa] Nobuyoshi Nakada 2021-11-07 06:31:34 UTC

GitHub Actions の MinGW 向け workflow で make install-nodoc 時に DESTDIR に ../install を指定するようにしています。かわりに configure 時の --prefix からは install を削除しています。

[8acb2a9b40] Nobuyoshi Nakada 2021-11-07 06:34:29 UTC

GitHub Actions の MinGW 向け workflow でまだ autoreconf を使ってたので autogen.sh を使うように変更しています。

[dc4dd96b02] Nobuyoshi Nakada 2021-11-07 06:43:11 UTC

GitHub Actions の MinGW 向け workflow でコンソールの encoding 設定をするためのコマンド? を削除しています。もう不要になってるとのこと。

[6295e348a9] Nobuyoshi Nakada 2021-11-07 06:46:16 UTC

GitHub Actions の MinGW 向け workflow の make test-all 実行時に環境変数 BUNDLER_VERSION をクリアするのを env コマンド? を利用して常に空にしておくようにしています。

[5ebda74ae1] Nobuyoshi Nakada 2021-11-07 06:50:25 UTC

GitHub Actions の MinGW 環境向け workflow で make の -j オプションの指定を環境変数 GNUMAKEFLAGS でまとめて設定して各コマンドのところでは指定しなくていいようにしています。

[acd82cc31a] Nobuyoshi Nakada 2021-11-07 06:55:06 UTC

GitHub Actions の MinGW 向け workflow の rubyspec 実行の step で自前で mspec/bin/mspec を実行していたのを make test-spec を使うように変更しています。

[7068255b0c] Nobuyoshi Nakada 2021-11-07 06:57:14 UTC

GitHub Actions の MinGW 向け workflow で環境変数設定のために Write-Output を使ってたのをデフォルトの run: の実行コマンドを sh にして echo コマンドなどを使うようにしています。元のは PowerShell だったのかな。

[8dc2fce2be] Nobuyoshi Nakada 2021-11-07 05:21:55 UTC

GitHub Actions の MinGW 環境の workflow でコンパイラなどのビルドに必要なツールチェインの存在チェックをするところで echo でエスケープシーケンスを使って色付けするようにしています。

[e0a5c3d2b7] Nobuyoshi Nakada 2021-11-07 08:03:40 UTC

GitHub Actions の MinGW 環境向け workflow 各ジョブ名を msystem を元につけるようにしています。

[3501e0cbb5] Kenta Murata 2021-11-08 03:52:09 UTC

Memory View 機能の構造体 rb_memory_view_t のメンバーに _memory_view_entry という rb_memory_view_entry_t のポインタを追加して rb_memory_view_release() で解放するべきエントリを取得するのに lookup_memory_view_entry() を呼んでたのをこのメンバーにキャッシュして直接参照するようにしています。 https://github.com/ruby/ruby/pull/5088 finalizer から呼ぶと異常終了する可能性があるのでクラス継承ツリーを辿るのはだめだったみたいです。 https://github.com/ruby/ruby/pull/5012

[f3bae1a206] git 2021-11-08 03:52:24 UTC

version.h の日付更新

[833c69ee82] Nobuyoshi Nakada 2021-11-07 16:43:06 UTC

ID2NUM() と NUM2ID() という ID 型と Integer のオブジェクト(VALUE 型)を相互に変換する関数を追加して、Proc オブジェクトから参照している外のスコープの変数名を得る時に Symbol ではなく整数で管理しておくようにしています。これで Ractor.make_shareable のエラー時のメッセージを rb_id2str() で内部的に確保されている ID からも文字列にできるように対応しています。

[b5ca8ebc0b] git 2021-11-08 07:07:54 UTC

gems/bundled_gems の test-unit のバージョンを 3.5.1 に更新しています。

[b47f7afbc3] Nobuyoshi Nakada 2021-11-08 07:54:54 UTC

cd4f5b13228879d954fa97b6aa479c4a5ef4fb0a で追加したテスト用拡張ライブラリのソースコードのファイル名の typo を修正しています。 [ruby-core:105099] [Bug #18140]

[2772f85648] Nobuyoshi Nakada 2021-11-08 07:56:28 UTC

b47f7afbc30169ffbaf6ba68db3c1d39e24793b5 で改名したテスト用拡張ライブラリの関数宣言のスタイルの修正。

[a64f7e9c00] Nobuyoshi Nakada 2021-11-07 23:58:09 UTC

GitHub Actions の Ubuntu 環境向け workflow で configure 時に --host=i686-$OSTYPE をつけて 32bit モードでビルドするジョブを追加しています。

[395738e8a5] Nobuyoshi Nakada 2021-11-08 09:05:15 UTC

GitHub Actions の Ubuntu 環境向け workflow で 32bit モードでビルド時に拡張ライブラリ readline のテストの test_interrupt_in_other_thread というのをスキップするようにしています。

[7cc4e147fc] Nobuyoshi Nakada 2021-11-08 07:05:04 UTC

numeric.c の ruby_float_step_size() という関数で浮動小数点数の計算結果の比較を一旦 double の変数に格納してから比較するようにしています。 long double に拡張されるのを防ぐためとのことです。