トップ «前の日記(2024/01/23 (火) ) 最新 次の日記(2024/01/25 (木) )» 編集 RSS feed

HsbtDiary


2024/01/24 (水) [長年日記]

Ruby の mswin 対応を再開

Windows の環境をセットアップしたついでに気になるところを直してしまう活動の続き。前回は test-spec で落ちないようにしたのでこの日は test-all を通すようにしていた。

まあ、どれも true がない、printf がない、という Windows にあるわけねー、という外部コマンドを実行するお行儀が悪いテストで置き換えられるものは適当に置き換えてしまった。なお、trueexit /b0 とかやるのが定石らしいです。

nkf に Java 実装をマージした

bundled gems になった nkf を JRuby でインストールする手段がなくて困っているという話が https://github.com/ruby/nkf/issues/13 で出てきた。ようは gem としてリリースされている nkf は C の実装しかないということが原因。

そんなわけで、実際に pull-request を作ったのは headius なんだけど、gem の build であるとかリリース周りを確認してマージして新しいバージョンとしてリリースしておいた。

https://github.com/ruby/nkf/pull/15

もともと、こうやって github に散らしているのは JRuby の実装を取り込むというのも目的だったので確実に進んでいる気はする。問題なのは gem をリリースしたつもりで JRuby 版をリリースし忘れた、とか、.jar をビルドし忘れて古いままになった、の2つなんだよなあ。この辺は Rake などのレベルでなんとかできると思うので頑張ろう...。

RubyGems 3.5.5以下は gemrc のコメントをコメントとして処理できない

タイトルのとおりです。

https://github.com/rubygems/rubygems/issues/7393 で mislav が .gemrc に書いてあるコメントがそのまま実行されているのだが、と報告してくれて、オリジナルの ruby-build の方も見てはいるので、そんなわけ...と思ったら RubyGems で pure ruby の YAML パーサーに置き換えたやつはたしかにコメントをまともに処理した記憶がなかったわ、と雑に直した。

https://github.com/rubygems/rubygems/pull/7413

本当に雑で真面目にやろうとすると double quote をどうするのかとか、考えまくることになるので単純にコメント以降を無視しつつ、現状の互換性は確保するようにした、つもり...。真面目にやるなら正規表現を考えないとダメそうだなあ。