2009-01-04(日) [長年日記]
■ tDiary: ruby 1.9.1RC1対応
やっと少し時間がとれたので、ruby 1.9.1対応をしている。
「shebangにエンコード指定を期待しない」という方針のため、あちこちに手を入れることになってしまったが、それでも地雷がなくならないので、RC1から入ったEncode::default_external=を使ってしまった(禁断の技?)。
もっともそれでもエンコード問題が消えず、泣きそうになりながら延々と悩んだのだが、なんてことはない、元になったパッチでNKF::nkfにあててあったワークアラウンドが悪さをしていたというオチだった。最新のrubyでは不要なパッチだったという。とほほ。ひょっとするとEncode::default_external=いらないかも。
これでcoreはそれっぽく動くようになったと思う。わかっている問題は:
- migration周りがまだ動いていないので2.2からの直接移行はできない
- ruby 1.8系での動作が未確認
- evalの仕様変更の余波でsecureモードがまったく動かなくなっている
特に最後のは頭を抱えている。eval内でローカル変数が定義できないのは相当痛い。
とりあえず次はpluginをいじろう。