Search code examples
rubysinatrarackup

Rackup Fails. Require Sinatra Fails


I'm running rackup config.ru.

The config.ru file contains:

require 'sinatra'
require 'sinatra/base'

app = ->(env){

   status = 200
   headers = {"content-type" => "text/html"}
   body = ["<Html><Body><H1>Hello, World!</H1></Body></Html>"]

   [status, headers, body]

}

run app

Which returns:

Exception `LoadError' at /Users/konstantinosschoinas/.rvm/gems/ruby-2.6.3/gems/sinatra-base-1.0/lib/sinatra/showexceptions.rb:1 - cannot load such file -- rack/showexceptions
Exception `LoadError' at /Users/konstantinosschoinas/.rvm/gems/ruby-2.6.3/gems/sinatra-base-1.0/lib/sinatra/base.rb:6 - cannot load such file -- rack/showexceptions
Exception `LoadError' at /Users/konstantinosschoinas/.rvm/gems/ruby-2.6.3/gems/sinatra-base-1.0/lib/sinatra.rb:4 - cannot load such file -- rack/showexceptions
Exception `LoadError' at /Users/konstantinosschoinas/Desktop/projects/bookstore-api/config.ru:1 - cannot load such file -- rack/showexceptions
Exception `LoadError' at /Users/konstantinosschoinas/.rvm/gems/ruby-2.6.3/bin/rackup:23 - cannot load such file -- rack/showexceptions

Also my gem env output is:

RubyGems Environment:
  - RUBYGEMS VERSION: 2.6.3
  - RUBY VERSION: 2.6.3 (2019-04-16 patchlevel 62) [x86_64-darwin18]
  - INSTALLATION DIRECTORY: /Users/konstantinosschoinas/.rvm/gems/ruby-2.6.3

I installed Sinatra and Sinatra::Base with gem.

What am I doing wrong?


Solution

  • You need to update the Sinatra gem to sinatra-2.0.7.

    Run:

    $ gem install sinatra -v 2.0.7