birdようやっと tDiary 2.2.1 に移行できました, etch から lenny へ, きょうのつぶやき

ようやっと tDiary 2.2.1 に移行できました

結局、原因はこちらのバグでした。エラーログも何も出ていなくてトラブルシューティングにはかなり苦労したんですが、

  1. 問題の「ArgumentError」を rescue してエラーページを表示しているところ1で、あえて ArgumentError を rescue しないようにして画面にスタックトレースが表示されるようにしました。
  2. それによると plugin/05referer.rb の 44 行目の Time#local メソッドでエラーが起きていることが分かり、引数を標準エラーに出力させてみると2、“00000000”という年月日を示す文字列としては変なものが渡されていることが判明。
  3. とりあえず何かの折に“00000000”を直接代入しようとしている箇所があったので、試しに“20010101”と変更してみたらとりあえずエラーは出なくなった。
  4. その後、このあたりの処理が volatile.tdr というファイルの処理に関連していることが読み取れたので、そのファイル名でググってみたところ、上記パッチを発見。
  5. 本家でもすでに取り込まれているものと同じ修正なので、多分問題ないだろう、ということで採用。

というような流れで解決しました。まとめて書くと短いステップですが、実際にはそもそも 1. にたどり着くまでにいろいろなところに printf (ruby の場合は STDERR.print とかですけれど) を仕込んでみたり、eval の中身を出力させてみたりと、いろいろ回り道してしまいました。スタックトレースを出したかったらとりあえずエラーを rescue しないで上へ投げてしまえばよいのですね。

その他、2.0 系と 2.2 系ではスタイルシートの構成も多少変更になっていて、もともとのデザイン3を完全には再現できていませんが、まぁ良しとしました。

あ、一つ書き忘れ。これまで、僕は RSS にコメント (ツッコミ) が入らないような設定にしていましたが、2.2.1 ですと基本的に入ってしまうもののようです。コメントの入らない RSS の方が良い、という方は、「index.rdf」ではなく、「no_comments.rdf」という方を購読すればよいらしい。ご注意あれ。

さらなる追記。上記 RSS に関する件ですが、やっぱり標準の index.rdf の方をコメントなしにして、コメント入りの方は別に「with_comments.rdf」というファイルに出力されるようにしました4。失礼しました。

etch から lenny へ

今回、tDiary 2.2.1 へ再挑戦するに当たり、このページを動かしているサーバも Debian etch から lenny へバージョンアップしました。
前回同様、こちらに書かれている手順どおりで問題なく完了しました。
ただ今回もやっぱり、バージョンアップ前と後でかなりディスク消費量が多くなってしまったので(もう古くて使わないカーネルイメージなどがあるのが原因と思われる)、後でまたいらないパッケージを掃除しておかないと…。

きょうのつぶやき

やっと tDiary 2.2.1 への移行でけた…バグを踏んどった⇒http://www.cozmixng.org/retro/projects/tdiary/tickets/106 (16:46 [twitux](http://sourceforge.net/projects/twitux" rel=“nofollow)から)

コメント

Digitune (Thu, 16 Apr 2009 23:39:58)
あーテステス。
Digitune (Thu, 16 Apr 2009 23:40:25)
もいっちょテステス。
Digitune (Fri, 17 Apr 2009 11:11:26)
motto テスト。
Digitune (Fri, 17 Apr 2009 11:20:41)
zutto テスト。
じゃんぼうさ (Fri, 17 Apr 2009 22:07:13)
kitto テスト。

  1. Java で言うところの「catch」ですな。 ↩︎

  2. apache の場合、CGI からの標準エラー出力は error_log に出ます。 ↩︎

  3. オリジナルのテーマをカスタマイズして使っていました。 ↩︎

  4. よく読んだらちゃんとそういう設定が出来るようになってた(^^;。 ↩︎