tDiary で動かしているこの日記を 4.0.0 にした。前日に shugo さんがサクッと対応していたので、簡単にいくかと思ったら思いのほか時間がかかってしまった。というのも自分が原因なのだけど、cgi を本体から外して gem にした対処にまずいところを見つけてはまったのが原因。
今まで cgi.rb を escape のためだけに require しているアプリケーションが壊れないようにと、stdlib のロードパスに cgi.rb をそのまま残したうえで cgi/util だけを require するように変えたのを残していたのだけど、これがあると cgi gem をインストールしていても単に require 'cgi' すると、常にこのファイルがロードされてしまい cgi gem を呼び出せなくなるという現象だった。
https://github.com/tdiary/tdiary-core/commit/4bb2afb5558c49486d324be64b944785cb950622
そんなわけで Ruby 4.0 以上の時は上のように gem 'cgi' を書いて RubyGems として提供される cgi gem を activate するか、bundler を使うかしないと cgi 本体にある機能が使えなくなってしまう。これは Ruby 4.0.1 で直したほうがいいとは思うので年明けになんか考えよう...。
Ruby 4.0.0 のリリースから一夜経って、毎年何かしら起きていたビルドできない、何かがまるで動かない、というのがないのを確認しつつ、all-ruby をビルドしたり、snapcraft に 4.0 チャンネル開通の申請をしたりとまったり過ごしながら仕事納め。
今年は特に後半が異様に大変だった。本当にお疲れさまでした。
Ruby 4.0 のリリースお疲れ様、と開発者会議常連メンバーで k0kubun 君を囲んで、上野でウサギの丸焼きを食べてきた。最近上野周辺にはガチ中国料理の店が増えていて、羊肉が大好きな自分には大歓迎なので、どこか良いところは~と探して出てきた店で羊、またはウサギというコース料理の店があったのでそこを選んだ。
今年あったことや最近ってどんな感じですかね、というのを参加した人でわいわいしゃべりつつ、ひたすらウサギ肉を食べていたらあっという間に時間が過ぎ去ってしまった。この店、日本語で話しているのが自分たちのテーブルしかないかもしれない、というくらい客も店員も中国語しか話してなかった気がする。