SPA開発 6. バージョンアップ情報 #02
2019年11月04日に公開

【ご報告】Railsを6.0.0にバージョンアップしました

【報告】Railsを6.0.0にバージョンアップしました

Rails6.0が正式にリリースされたので、6.0.0.rc2から6.0.0にバージョンアップしました。

Railsのバージョン履歴は下記URLからご覧になれます。

Railsの全バージョン履歴 - Rubygems

Rails 6.0へのバージョンアップ方法

  • 現行のRailsのバージョンを確認します。
$ rails -v

Rails 6.0.0.rc2
  • Gemfileを変更します。
Gemfile
# gem 'rails', '~> 6.0.0.rc1' # 削除
gem 'rails', '6.0'            # 追記
  • Railsを指定してアップデートコマンドを実行します。
$ bundle update rails

Bundler could not find compatible versions for gem "railties の対応

Railsアップデートコマンドを実行すると、下記のようなエラーがでました。

...
Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    dotenv-rails (~> 2.5.0) was resolved to 2.5.0, which depends on
      railties (>= 3.2, < 6.0)

    rails (= 6.0) was resolved to 6.0.0, which depends on
      railties (= 6.0.0)

これは依存関係にあるGemのバージョンが、Rails6.0に対応していないために起こるエラーです。

筆者の場合は、dotenv-railsのバージョンが対応していないよ!と怒られました。

簡単に翻訳すると、

「dotenv-rails v2.5が対応しているバージョンは、Railsの3.2以上(>= 3.2)、6.0未満(< 6.0)だよ。」

という意味です。

1. Gemの対応バージョンの確認

rubygemsで対応するバージョンを確認できます。

エラーが発生した依存関係のGem(筆者の場合はdotenv-rails)のページを開き、最新のバージョンをクリックします。

2019-11-04 13-06-03

右の依存性(下の画像、赤枠)dotenv-railsのv2.7.5は、Rails v6.1未満に対応していることがわかります。

2019-11-04 13-14-27

これでdotenv-railsは、v2.7.5をインストールすれば良いということがわかりました。

2. 依存関係のGemバージョン指定を書き換える

Gemfileに移動し、dotenv-railsのバージョン指定を書き換えます。

# gem 'dotenv-rails', '~> 2.5.0', require: 'dotenv/rails-now' # 削除
gem 'dotenv-rails', '~> 2.7.0', require: 'dotenv/rails-now'   # 追記

3. Railsと一緒にdotenv-railsもバージョンアップする

bundle updateコマンドにdotenv-railsを追加し実行します。

$ bundle update rails dotenv-rails

Rails v6.0.0へのバージョンアップが開始しました。

2019-11-04 13-22-16

バージョンアップできたか確認する

Rais v6.0へ、dotent-rails v2.7へバージョンアップできたか確認しましょう。

  • Railsのバージョン確認
$ rails -v
Rails 6.0.0
  • gem dotent-railsの確認
$ bundle list dotenv-rails
...
/appパス/myapp/vendor/bundle/gems/dotenv-rails-2.7.5

双方とも無事バージョンアップが完了しました。

まとめ

今回は報告も兼ねて、Railsを6.0.0へバージョンアップする手順をご紹介しました。

最後に、そもそも旧バージョンの「6.0.0.rc2」とはなんぞや?と疑問に思った方、↓したのコラムをお楽しみください。

おしまい。

【コラム】gemバージョンの「rc」とはなにか?

バージョンアップ前のRailsには「rc」とついていますが、これは「リリース候補のバージョン」を意味します。

リリースする準備はできているが、バグが潜んでいないか最終テストを行っている状態です。

直訳すると出荷候補(release candidate)という意味です。

参考

wikipedia

RC版とは何? Weblio辞書

現在、カテゴリー「Rails apiとNuxt.jsでSPA開発」のデモアプリを構築中です。記事になるまでもう少々のお時間が必要です。ブログの更新が止まって申し訳ありません。デモアプリの進捗状況は こちらの記事 で随時お伝えしてまいります。
スポンサー広告
次の記事はこちらです
SPA開発
今日のTweet
スポンサー広告