Rails2.0とruby-gettext

Using ruby-gettext with Edge Rails - zargony.com
Rails2.0でruby-gettextを使うと、
・500 Internal Server Errorが発生する。
・Rails2.0の新しいテンプレート *.html.erbのような*.xxx.erb を認識しない。
上記リンク先に解決方法が記載されている。
・500 Internal Server Errorは、rubyのバージョンを1.8.6-p26以降に上げると解決。
・*.xxx.erbについては、lib/tasks/gettext.rakeを以下のように修正する。
※Ruby-GetText-Package-1.90.0でRuby on Rails 2.0に対応して、デフォルトで.erbがERBファイルとして認識されるようになったため、下記対策は不要となった。
よたらぼ(2008-02-03)

require 'gettext/utils'
# Tell ruby-gettext's ErbParser to parse .erb files as well
# See also http://zargony.com/2007/07/29/using-ruby-gettext-with-edge-rails/
GetText::ErbParser.init(:extnames => ['.rhtml', '.erb'])
desc 'Update pot/po files'
task :updatepo do
  GetText.update_pofiles('messages', Dir.glob("{app,lib}/**/*.{rb,rhtml,erb,rjs}"), 'MyApp')
end
desc 'Create mo-files'
task :makemo do
  GetText.create_mofiles(true, 'po', 'locale')
end

ActiveSupportのオートロード機能

以下の条件を満たせば、外部ファイルに対する読み込み宣言なしで、クラスが参照された瞬間に自動的に読み込まれる。
・ロードパス上にファイルを配置する。
・クラス(モジュール)名をアンダースコア化したファイル名にクラスを定義する。(アンダースコア化はActiveSupportのString#underscore, String#classifyで確認できる)

propelの日付と時刻のデフォルト値が1.0.9ではロケールに従った出力に変更された。が1.0.10で元に戻った。

symfony propelでの日付のデフォルト値 : アシアルブログ
symfony 1.0.9 で、日付型(date)と時刻型(time)propel generator で生成されるコードが以下のように変わった。(datetimeとtimestampは変更なし)
が、1.0.10で元に戻った
Changeset 6337 - symfony - Trac
symfonyでのpropel generatorのデフォルトの設定は、
/lib/vendor/propel-generator/default.properties
だということが分かった。
1.0.8

public function getDate($format = 'Y-m-d')
{
  ...
}
public function getTime($format = 'H:i:s')
{
  ...
}

1.0.9

public function getDate($format = '%x')
{
  ...
}
public function getTime($format = '%X')
{
  ...
}

propel.ini に以下を追加してモデルをリビルドすると、1.0.9でも1.0.8までと同じコードが生成されるようになる。

propel.defaultDateFormat = Y-m-d
propel.defaultTimeFormat = H:i:s

が、1.0.10で元に戻ったので、1.0.10にアップグレードしてモデルをリビルドすれば上記対応は不要になる。