ruby-trunk-changes 2021-12-01

今日は rubygems と bundler の更新、Windows での標準入力が端末からの入力の時の external_encoding を locale によって決めるようにする変更などがありました。

[2b1f048714] David Rodríguez 2021-02-25 16:02:32 UTC

rubygems のテストで setup_base_installer という helper を使っていたところを util_spec+util_build_gem+util_installer という複数の helper の組合せに変更しています。今後の変更でゴミが残るようになっちゃう予定なのでそれを避けるためみたいです。

[d7f6cb0f78] David Rodríguez 2021-02-25 16:06:01 UTC

rubygems のテストでテスト中にインストールされてしまう gemspec ファイルの削除処理を追加していたのを削除しています。

[7fd88da935] David Rodríguez 2021-02-25 17:43:51 UTC

rubygems の Gem::Installer でファイルの書き込みを排他するのに Gem.write_binary で open してから File#flock を利用していたのを File.open の flags に File::LOCK_EX を渡すことで open 時に競合しないようにするようにしています。

[42efb8c185] Olle Jonsson 2021-11-24 16:05:33 UTC

bundler の bundle gem で作成するプロジェクトの GitHub Actions 用の設定ファイルで ruby のバージョンを RUBY_VERSION で埋め込んでたところを文字列として解釈させるため明示的にクオートするようにしています。

[a7fd639423] Olle Jonsson 2021-11-24 16:15:06 UTC

42efb8c1859c89490cad9bf9312dc3e743f730ee の続きで bundler の bundle gem で生成する GitHub Actions 用設定ファイルで ruby のバージョンを major.minor までのみ指定するようにしています。

[46a24f7e77] Olle Jonsson 2021-11-24 16:23:06 UTC

a7fd639423dba631900d1d4f395d805cf0d97d5e の bundle gem で生成する GitHub Actions の設定ファイルの変更を revert してまた RUBY_VERSION をまるごと埋め込むようにしています。

[b68217fff9] Olle Jonsson 2021-11-30 20:40:01 UTC

bundler の bundle gem で生成する GitHub Actions の設定ファイルテンプレートの余分な空白の除去。

[3eac05c75d] git 2021-11-30 22:15:35 UTC

version.h の日付更新

[9f4bdeb403] Hiroshi SHIBATA 2021-12-01 00:53:07 UTC

bundler のテストに余分なファイルが含まれてしまっていたのを削除しています。

[0b53a8895f] Hiroshi SHIBATA 2021-12-01 02:00:10 UTC

bundler を upstream からまとめて最新版をマージしています。

[37cd35aea8] Nobuyoshi Nakada 2021-12-01 06:05:16 UTC

標準入出力の IO の internal_encoding と external_encoding を決める rb_stdio_set_default_encoding() で Windows 環境では端末からの入力の時は標準入力の external_encoding は rb_locale_encoding() にするようにしています。 preprocessor の #endif を挟んで dangling else になっててちょっとすわりが悪いですね。 [ruby-core:106191] [Bug #18353]

[a84dc9d80d] Nobuyoshi Nakada 2021-12-01 07:30:06 UTC

37cd35aea8afa35476640e454eaf2c53150dc014 の変更に追随して rubyspec の STDIN の external_encoding のチェックを Windows を除外するようにしています。