今月はリリース前というのにたくさんあった。流石にこれは 4.0 じゃないでしょ、入れるの???というのがあちこちでありつつ、自分は、というと持って行った議題はないので bundler の gemspec がなんかおかしいというのを調べながら野次馬っぽくコメントをしていた。
https://bugs.ruby-lang.org/issues/21689
議題以外のおかわりも何だかんだと話していて終わったのは20時、本当にお疲れ様でした。
yhonda さんが、bundler の動きがおかしいというのを引き続き報告してくれていて、手順を試したらあっさり再現したのでなんで?ってのをずっと調べていた。
https://github.com/ruby/rubygems/issues/9181
この手のやつ、ローカルだとなかなか発生させにくいので、docker image を起動して大丈夫なパターンとの差分を調べていたら、rbinstall.rb に入れた以下の変更が原因で壊れるようになったようだった。
https://github.com/ruby/ruby/commit/7ce339244953a6c3add543854292c61e9f5bc14b
それでもなんで docker image でだけ起きるの?と https://github.com/ruby/docker-images/ のビルドプロセスを睨めっこしていたら、src と build のディレクトリを分ける out-of-place build をやっており、再現しない手元では src と build が同じという in-place build だっての、手元でも out-of-place build をしてみたらあっさり再現したのだった。
docker とか関係なく、macOS でも再現するならあとはなんとかするだけ、とrbinstall.rbの動きを in-place/out-of-place の両方で問題が起きないようにあれこれ試していたらなんとか着地できそうなコードになったので一旦それでコミットしておいた。この辺、本当に地獄すぎて大変。
ホームディレクトリになんでもおくソフトウェアが本当に嫌いで限界まで XDG に揃えて暮らそうとしているんだけど、vscode が ~/.vscode/cli というディレクトリをとにかく作成して見つけるたびに消していた。
流石に真面目に調べるかと gemini に聞いたら VSCODE_CLI_DATA_DIR を設定すれば良いということがわかったので launchctl で起動時に環境変数として ~/.cache/vscode-cli を強制するようにしたら作成されなくなった、気がする。しばらくはこれで様子見する。
前にセールになっていた時に書い損ねた〜となった地球の歩き方の北ドイツが Kindle Unlimited で配信されているのを見かけたので読んでしまった。
ミュンヘンは行ったものの、ベルリンまでは足を伸ばしておらず、ペルガモンなどは行っておきたいなあという気持ちはあるのでその辺をざっくり把握するのに良かった。他にもハンブルグやフランクフルトなどは乗っていたものの、フランクフルトがすごくさらっとしていて「そういう扱いなんだ〜」とはなった。
ベルリン、単に乗り継ぎで行きます、ではなくて目的を持っていくということが必要で難易度が高いかもなあ。
ちょっと遅れて入ったら、誰も何も話してないとなっていたのでいる人4-5人でダラダラと雑談をスタート。
https://github.com/ruby/rubygems/issues/9170
上のような issue があって、RubyGems で -j#{Etc.nprocessors} を自動指定するようにしたら、コンテナの環境で(リソースが足りなくて)ハングするようになったという話の深追いをずっとしていた。
いかにもありそうって感じではあるんだけど、手元で実行してみたら Etc.nprocessors の数字別におかしくないよね?とか、それはそれとして bundle install をパラレルに実行して CPU を使い切ってる時に、それぞれの C 拡張ビルドが CPU をマシマシで使ったらそりゃ止まるのでは、とかなんかむずいな!ってなった。
週刊 RubyGems みたいなノリだが、4.0.0 をリリースしていくつか根本的に動かないというバグがあったので直した上で 4.0.1 をリリースした。
https://blog.rubygems.org/2025/12/09/4.0.1-released.html
4.0.0 から 4.0.1 というリリースは想定通りで、ガリガリいじっていたリリーススクリプトも問題なく動いたのでよかったけど、4.0.1 から 4.0.2 が現状間違いなく動かない気がするので引き続きリリーススクリプトを直して Ruby 4.0 の前に一度はしらせておきたい。4.0.2 が行けたらあとは 3, 4 などは楽なんだろうけどなあ。
なんと12月のあと二週間でリリース、という時でも開発者会議をやるので、アジェンダや前回からの差分など色々を確認する会に参加していた。
https://bugs.ruby-lang.org/issues/21689
なぜか年末だというのに議論の内容は結構な量が用意されていて、尚且つ差分の issue も結構な量が積まれていて終わったのは19:00だった。ばたり。