概要
自分のアプリを Sinatra v4 にアップデートしてみました
少し躓く点があったので紹介します
環境
- macOS 11.7.10
- Ruby 3.2.2
- Sinatra 3.2.0 -> 4.0.0
アップデート方法
thin -> puma に変更
thin だと rack のバージョンが3以下でなければなりません
しかし sinatra が rack のバージョン3以上を必要としているため thin では v4 にアップデートできません
なので
gem 'thin'
↓
gem 'puma'
rackup gem のインストール
rack v3 にすることで個別に rackup コマンドをインストールする必要があります
gem 'rackup'
アップデート
あとはアップデートするだけです
- bundle update
rackup が初回インストールの場合はインストールもしましょう
- bundle install
トラブルシュート
rackup コマンドがない場合に以下のエラーが発生します
config.ru
でアプリを参照できていないわけではないので注意しましょう
bundler: failed to load command: rackup (/Users/hawk/data/repo/ruby-homepage/vendor/ruby/3.2.0/bin/rackup)
/Users/hawk/data/repo/ruby-homepage/vendor/ruby/3.2.0/gems/bundler-2.3.7/lib/bundler/rubygems_integration.rb:319:in `block in replace_bin_path': can't find executable rackup for gem rack (Gem::Exception)
最後に
リリースノートはこちらです
0 件のコメント:
コメントを投稿