Ruby on Rails - 3.1.3 から 3.2.1 へアップグレード!
Updated:
1ヶ月ほど前に、Ruby を 1.9.2 から 1.9.3 にアップデートしたのに合わせ、Rails も 3.0 系から 3.1.3 にアップグレードしました。 しかし、今では Rails も既に 3.2.1 までリリースされています。
そこで、当方の Rails も 3.2.1 にアップグレードしました。
単純に Gem でアップデートするだけでもよいのですが、既存のアプリディレクトリを退避しておいて新たに作成したアプリに移行させる、というような方法を採りました。
アップグレード自体は、単純な作業なのですが、当方の環境においてつまずいた箇所がありましたので記録しておきます。
記録
1.プラグイン
従来、vendor/plugins ディレクトリに配置していたプラグインは 3.2 系では非推奨になり、次の 4.0 系では廃止されるようです。 3.2 系では非推奨であるだけで別に動かなくなるというわけではありませんが、今回対応しておきました。 リリースノートによると、Gemパッケージに変更するか、lib ディレクトリは移動するか、だそうです。 当方に導入しているプラグインは Gem には存在しないものなので、lib ディレクトリへ移動する方法を採りました。 そして、プラグインを読み込むために config/initializers ディレクトリにプラグインを require するためだけのスクリプトを置いて対応するようですが、当方は元々 controller 内でプラグインを require していたので、パスを指定して require するように対応しました。
2.Gem パッケージ Action Mailer
Rails を 3.1.3 から 3.2.1 へアップグレードしたことに合わせ、ホームページのお問合せ画面からメール送信する Gem パッケージ Action Mailer も 3.1.3 から 3.2.1 はアップグレードしました。 元々の記述が悪かったのかメール送信が出来なくなりました。 改めて、ソースを見直し・修正して事なきを得ました。
参考サイト
3.0 系から 3.1 系へアップグレードする時は、Asset Pipeline で苦労しましたが、今回はそれほど大きな苦労はありませんでした。
それにしても、Ruby とか Rails ってアップグレード・アップデートする度にスクリプトの改修が必要になるのはどうかと・・・ 発展途上の言語だから仕方のないことでしょうか?
以上。
Comments