/ / Erro ao requerer gem de Sinatra - rubi, linux, rubygems, sinatra, ubuntu-9.10

Erro ao requerer Sinatra gem - ruby, linux, rubygems, sinatra, ubuntu-9.10

Eu estou tendo dificuldade em fazer o Sinatra rodar na minha configuração local, o Ubuntu Karmic 9.10. O erro que ocorre quando eu exijo "sinatra" é:

NoMethodError: undefined method `[]" for nil:NilClass
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:891:in `compile"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:883:in `gsub"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:883:in `compile"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:856:in `route"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:838:in `get"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:1077
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:929:in `configure"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:1076
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require"
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require"
from /usr/local/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra.rb:4
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require"
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require"
from (irb):2
from :0

Eu tentei:

  • Desinstalando / reinstalando Sinatra
  • Atualizando todas as gemas
  • Garantindo que todas as dependências existam (rack)

Alguma ideia? Seu tempo e ajuda são muito apreciados!

Respostas:

1 para resposta № 1

Este é um problema aparentemente apenas com o 1.8-head no Linux. Está relacionado à correspondência de expressões regulares. Se você der uma olhada no código: path corresponde /((:w+)|[*#{special_chars.join}])/, mas $2 é nil, mesmo que seja uma String.

Eu recomendo trocar sua versão ruby ​​por enquanto.