というわけで、アップグレードしてもよさそうなプロジェクトをアップグレードしてみました。(リリースしてないし)
config以下の書き換えなどは自己責任で。
やったこと
bundler 1.3 が必要になるので、まだいれていない場合アップデートします。
$ gem install bundler
Gemfileを修正します。
gem 'rails', '4.0.0.beta1'
group :assets do
gem 'sass-rails', '~> 4.0.0.beta1'
gem 'coffee-rails', '~> 4.0.0.beta1'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :ruby
gem 'uglifier', '>= 1.0.3'
end
必要に応じてgemの設定
protected_attributes
strong_parameters に移行してない場合
gem 'protected_attributes'
devise
devise がまだ対応 gem がないので
gem 'devise', github: 'plataformatec/devise', branch: 'rails4'
githubから直接。
simple_form
gem 'simple_form', '3.0.0.beta1'
simple_form が rails4 に対応したものが beta なので
gem "simple_form", "3.0.0.beta1"
config をモダンに?
$ rake rails:update
地道に diff をみながら調整しました。自分で変更したところははっきりと分離しておいたほうがよさそうでした。
routes.rb
は確実に変更していると思います。
がっつり変更されるのでコミットをした上で試しましょう。
参考にしたりとか
upgrading rails 4
Topics Covered あたりをみながら、必要そうなものを追加したり、修正したりしました。rubygems.org
リリースされてるgemの確認とか
あとは各gem のリポジトリを見にいったりして確認しました。 gem関連はリリースされるころには rails のバージョンを指定をするだけで済むかもしれないペースで対応が進んでいそうですね。