Ruby 4.0 に入った Socket などのメソッドに timeout を指定可能になったんだけど、そこの処理が場合によってはクラッシュする、ということで CVE-2026-46727 を取得して情報公開した。
https://www.ruby-lang.org/en/news/2026/05/20/getaddrinfo-cve-2026-46727/
今回久しぶりに MITRE 経由で CVE をアサインしたんだけど、一時期は 2週間くらい応答ないな、という時もあったものの今回は金曜に申請して日曜には CVE が発行される、という爆速っぷりで良かった。
CVE-2026-46727 に合わせて、これは Ruby 4.0 もリリースしないとダメだね、と k0kubun 君とやりとりしつつ CVE の公開とリリースをした。主に自分は情報を用意して k0kubun 君がアナウンスやパッケージを公開する、という感じで進めたので割とすぐだった。
https://www.ruby-lang.org/en/news/2026/05/20/ruby-4-0-5-released/
今回久しぶりに Ruby の同時リリースもハンドリングしたけど、3.3-4.0 全部に影響あります、という時だと作業手順や誰が、何をするというレベルで準備しないと時間のロスが多すぎるな、って感想だった。非同期に何かしていくというところだと高速にできるようにはなったので、こっちの方も頑張ろう。
Ruby 4.0.5 などのリリース日であると同時に、RubyGems/Bundler の定期リリース日だったのでエイっとリリースした。
https://blog.rubygems.org/2026/05/20/4.0.12-released.html
前回のリリースがちょと大変だったので、claude で直しまくった結果、コンフリクトは発生しないで全部バックポートして、よっしゃリリース、というところで master にだけ含まれている test helper を使っている箇所でテストが落ちたのでやり直しだった。
今回は RubyKaigi 2026 中に開催したコード懇親会で送ってもらった不具合修正や改善を中心にバックポートして入れている。ちょっと ruby/rubygems をみる時間が減っていたので次回のリリースに向けて細い不具合修正などをやっていかないとなあ。