Davide Barison
Davide Barison

Reputation: 158

Rails 2.3.10 errors

I'm upgrading my working rails 2.3.8 application but i got a strange error.

/Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/rails/vendor_gem_source_index.rb:76:in `block in refresh!': undefined method `[]' for nil:NilClass (NoMethodError)
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/rails/vendor_gem_source_index.rb:45:in `each'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/rails/vendor_gem_source_index.rb:45:in `refresh!'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/rails/vendor_gem_source_index.rb:29:in `initialize'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/rails/gem_dependency.rb:21:in `new'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/initializer.rb:298:in `add_gem_load_paths'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/initializer.rb:132:in `process'
        from /Users/davide/.rvm/gems/ruby-1.9.2-p0@rails2/gems/rails-2.3.10/lib/initializer.rb:113:in `run'
        from /Users/davide/Code/giardinilucrezia/config/environment.rb:12:in `<top (required)>'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/irb/init.rb:281:in `require'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/irb/init.rb:281:in `block in load_modules'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/irb/init.rb:279:in `each'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/irb/init.rb:279:in `load_modules'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/irb/init.rb:20:in `setup'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/irb.rb:53:in `start'
        from /Users/davide/.rvm/rubies/ruby-1.9.2-p0/bin/irb:17:in `<main>'

There isn't problem at all with rails 2.3.8. and the stack trace can't help me. Any idea?

I'm using ruby 1.9.2, rails 2.3.10 and bundler.

Thx

Upvotes: 3

Views: 783

Answers (3)

Alex Seidlitz
Alex Seidlitz

Reputation: 3736

Had a similar issue and it turned out to be the _svn folder in the vendor/gems directory.

If that's the case just rename it into .svn for now. If you need to update from SVN you will need to rename it back into _svn.

Upvotes: 0

Anna
Anna

Reputation: 1459

I looks like this rails bug is relevant. The short of it is that there's a problem with cvs and svn directories.
to monkey patch, add this to config/preinitializer.rb

gem 'rails'
require 'initializer'

module Rails
  class VendorGemSourceIndex

    def version_for_dir(d)
      version = d.split('-').find { |s| s.match(/^\d(\.\d|\.\w+)*$/) }
      Gem::Version.new(version) if version
    end

  end 
end

Upvotes: 1

noodl
noodl

Reputation: 17408

It might help to know what's on line 12 of config/environment.rb and also the command you were trying to run. Presumably script/console or similar.

Upvotes: 0

Related Questions