LoginSignup
3
2

More than 5 years have passed since last update.

もう迷わない。Rubyのバージョンを上げる手段メモ(brewでruby-buildがうまくupdateできない問題を添えて)

Last updated at Posted at 2018-11-01

はじめに :cat:

こんばんは。今日もぼちぼち元気にプログラミングを頑張っています。
昨日というか未明に1日いちQiitaをやろうと決めて早18時間ですか。時間というのは流れるのが本当に早いですね。

今回の記事で書くこと :pencil:

  • Rubyのバージョンを上げるたびに何をしたらいいのかをググっていた今日までの自分へ捧げるやることリストのようなもの。

バージョンをあげるということの大切さ :sparkles:

なぜバージョンがあがったのか?を考える :thinking:

ここは皆さん共通認識であるかと思うのですが、一番はセキュリティ(脆弱性)との戦いを私達はしているということです。
バージョンがあがった背景をコードを読んだり、変更箇所のlogをみたりすると学べることが沢山あります。

バージョンがあがるということはよりよいものになろうとしている変化の一つ。その恩恵にあやかりたい。 :pray_tone1:

さらに、新しい書き方をできるようになったり、自分たちが抱えているプロジェクトを常に綺麗な最善な形に保つための工夫を凝らすためにはバージョンをあげていくということは頑張ってついていきたいところだなぁと思っています。

Ruby2.5.1からRuby2.5.3へあげる道のり :low_brightness:

自分はrbenvによってrubyのバージョンを管理してもらっています。
なので、今回も以下のように進めようと思いました。

$ rbenv install --l# この流れを期待していた。
$ rbenv install <version>

ですが、探しても探してもRuby2.5.3が見つからない。
あれ?どうして?リリースされてるはず。。

rbenvが古いのかな?ruby-buildが古いのかな?
とHomebrewを使ってupdateするも、rbenvは最新ですと言われ、
依然として見つからないまま。

ruby-buildに何かあるはずだ。と公式にすがる。
https://github.com/rbenv/ruby-build#upgrading
そうすると ruby-build を直接pullしてくる方法が書いてあるのを発見。
homebrew経由でうまく行かなかっただけで、これならいけるかも、と実行してみる。

$ cd "$(rbenv root)"/plugins/ruby-build && git pull

そうすると、無事2.5.3が見つかり、無事にインストールできた。 :tada:

$ rbenv install --l
$ rbenv install <version>

プロジェクトのrubyバージョンを設定。

$ rbenv local 2.5.3

念の為、version確認。

$ ruby --version
ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-darwin17]

:tada: :tada:

その後やること

$ bundle install
rbenv: bundle: command not found

The `bundle' command exists in these Ruby versions:
  2.2.3
  2.3.7
  2.4.2
  2.4.4
  2.5.0
  2.5.1

ので、bundlerをいれる。

$ gem install bundler

railsもいません。 :door:

$ rails
rbenv: rails: command not found

The `rails' command exists in these Ruby versions:
  2.2.3
  2.3.7
  2.4.2
  2.4.4
  2.5.0
  2.5.1

ので、railsをいれる。

$ gem install rails

よし、ローカルサーバーを立ち上げてみる。

$ rails s
Could not find rake-12.3.1 in any of the sources
Run `bundle install` to install missing gems.

rakeもバージョンが上がったものはないです。
gemをinstallしてください。と言われる。

$ bundle install

これで、新しいRubyのバージョンで開発を進めることができます!
Happy coding! ˘ω˘)˘ω˘)˘ω˘) :musical_keyboard:

追記(11月5日更新)

自分がこの記事をかいたときには理解できていなかったのですが、
コメントいただいたみなさんとのやりとりで正しい原因を理解することができたので、
残しておきます。
homebrew-core での ruby-buildのupdateというのは10月20日に完了していました。 (コミットが完了している。)
なのに、今回自分がbrew経由でupdateすることができなかったのは、homebrew自体が最新のものでなかったことが原因ということです。自分がこの事象にあたった日時から見てこれが原因だと思います。
こまめにパッケージマネージャの管理はしていかないとなと強く思いました。
正しい理解になるようとコメントくださった皆さん、本当にありがとうございました。 :bow:

3
2
10

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2