Rails 5.1が出ていたので、このブログをアップグレードしてみました。
Rails 5.1: Loving JavaScript, System Tests, Encrypted Secrets, and more | Riding Rails
http://weblog.rubyonrails.org/2017/4/27/Rails-5-1-final/
(1) GemfileのRailsのバージョンを5.1.0にする
(2) 以下のコマンドを実施。
bundle update
rails app:update
Rails 4系からのアップグレードということもあって、sass-railsやcoffee-railsなどのgemのバージョンを変更しないと依存関係の問題でbundle updateが失敗しました。まぁ、こんなに長く放置しているアプリケーションも珍しいと思うので、細かくRailsのバージョンを上げていれば問題はないはず・・・です。
- config/boot.rbは上書き
- config/routes.rbはスキップ
- config/application.rbは上書き
- config/secrets.ymlは上書き
- config/environment.rbは上書き
- config/environments下のファイルは適宜マージ
development環境のconfig.file_watcherはActiveSupport::EventedFileUpdateCheckerは無効にして、ActiveSupport::FileUpdateCheckerを使うようにしました。
これは、Vagrant上で開発していると、共有フォルダのファイルの変更が検知できない事があるためです。
また、以下の問題を対応しました。
Rails 4.2を5.0に上げたら、production環境でautoload_pathsが効かなくなった
http://akasata.com/articles/318
ソースコードの書き換えとしては、redirect_to :backをredirect_backで書き換えたくらいです。
その他、特に問題ありませんでした。
以下、参考情報(と言うより一次情報)です。
A Guide for Upgrading Ruby on Rails - Ruby on Rails Guides
http://guides.rubyonrails.org/upgrading_ruby_on_rails.html