ruby-trunk-changes 2021-08-28

今日は先日のメモリ管理の変更の不具合修正などがありました。

[ed31bdfeee] Peter Zhu 2021-08-27 13:37:51 UTC

62bc4a9420fa5786d49391a713bd38b09b8db0ff で導入したオブジェクトの slot のサイズの違う page を用意する機構で rb_gc_force_recycle() でオブジェクトを強制的に解放した時に次の sweep で freelist に繋げてた slot が戻されず再利用できなくなってメモリリークになる可能性がある不具合があったので rb_gc_ractor_newobj_cache_clear() で実装していた freelist を struct heap_page::freelist に追加して行方不明にならないようにする処理を heap_page_freelist_append() という関数に切り出して gc_sweep_start() でもこれを呼ぶようにして修正しています。

[76e8cfd158] Nobuyoshi Nakada 2021-08-25 16:01:53 UTC

GitHub Actions の Windows 版で各種環境変数をまとめて GITHUB_ENV に設定するアクションを追加しています。あと call %VCVARS% もそこにまとめてるんですが、これってアクション毎に別のシェル? になるから個別に呼ばないといけなかったりしないんですかね?

[47a2ea4df5] Nobuyoshi Nakada 2021-08-28 00:25:39 UTC

GitHub Actions の Windows 版で Windows Server 2022 と Visual Studio 2022 のバージョンでのエラーを無視する設定を削除しています。

[394498b878] Nobuyoshi Nakada 2021-08-28 09:20:35 UTC

と思ったら GitHub Actions の Windows 版で Windows Server 2022 と Visual Studio 2022 でのビルドをコメントアウトして無効にしています。

[f4b73f77ef] git 2021-08-28 09:22:29 UTC

version.h の日付更新

[7e36b91526] Lars Kanis 2021-08-26 11:38:01 UTC

Process.clock_gettime の rdoc 用コメントの定数 Process::CLOCK_REALTIME と Process::CLOCK_MONOTONIC のサポートされる OS リストに Windows のバージョンを追加しています。