トップ «前の日記(2025/05/07 (水) ) 最新 次の日記(2025/05/09 (金) )» 編集 RSS feed

HsbtDiary


2025/05/08 (木) [長年日記]

Ruby CI に Fedora 42 を追加した

GW 前後からビルドできないのだが〜と報告が増えている gcc 15.1 をもう少し眺めないと、ということで Fedora 42 を Ruby CI に追加しておいた。

gcc 15.1 とか、4月末にリリースされたばかりなのに Fedora に同梱されていることってあるの?と思ったら確かに同梱されていた。リリースから 1ヶ月も経ってないコンパイラでビルドできません、という報告は「そうだね」って感じではあるので次のリリースで治しましょうかね、ってくらいかなあ。

update-deps の使い方がむずい

mswin の環境で test/-ext-/econv/test_append.rb が SEGV で落ち始めていて Windows で何かあったっけ?と思って開発者会議の準備とかしていたら macOS でも同じエラーで落ちてなんだこれ〜となって調べたら ext/-test-/econv/append.o. が依存ファイルが更新されたにも関わらず rebuild されてないのでバージョン不一致で落ちていた、ということだった。

で、ちゃんと rebuild させるには depend ファイルというものを作って .o ファイルの横に置く必要があるんだけど、これを自動生成するのが nodoc で難しすぎるので調べていた。

  • .o フォルダにある Makefile の中の依存関係を # AUTOGENERATED DEPENDENCIES START/END 付きでコピって depend を作る
  • Linux などで ruby tool/update-deps --fix を実行するといい感じに更新される
  • 更新されたものをコミット

結論としては上記の手順で .o ファイルが自動更新されたり、必要な依存が増えたら depend を更新したり、CI で検知できるようになる。

Ruby 開発者会議 5 月

愛媛の後の1回目の開発者会議ということで、今回は Namespace どうですか、という話題に始まってモリスさんをコミッターにしてあとは気持ちが高まったら Merge して!って感じになった。頑張って...!

https://bugs.ruby-lang.org/issues/21281

自分は、というと 2025 年だし CGI ライブラリはもうええでしょう、ということで Ruby から外しませんか?という話をしつつ、CGI.escape などはあちこちで使われているという事実に対してどう着陸させましょうかねえという議題を持って行った。結論としては cgi/escape を require したら必要なメソッドが全部使えるようになります、というところだけを維持しましょうということになったので、そんな方向性で。

大体の議題を話し終わった後に autoload の話題になって、こういう時にダメじゃない?とか話が広がりまくって面白かった。