开发者

Ruby undefined method error using Deprecate.skip_during

I am trying to install Gitorious in my local computer. However I get this error when I execute the console application:

/usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:194:in block in stub_source_index170': undefined methodskip_during' for Bundler::RubygemsIntegration::Deprecate:Class (NoMethodError)

The ruby code that is executing in /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb is:

def stub_source_index170(specs)
      Gem::SourceIndex.send(:define_method, :initialize) do |*args|
        @gems = {}
        # You're looking at this thinking: Oh! This is how I make those
        # rubygems deprecations go away!
        #
        # You'd be correct BUT using of this method in production code
        # must be approved by the rubygems team itself!
        #
        # This is your warning. If you use this and don't have approval
        # we can't protect you.
        #
        Deprecate.skip_during do
          self.spec_dirs = *args
          add_specs(*specs)
        end
      end
    end

I guess the error occurs because the deprecate module is not loaded or something like that... I don't know ruby... but how can I try to correct it?

I have ruby 1.9.1p431 (2011-02-18 revision 30908) with gem 1.8.5

List of gems:

* LOCAL GEMS *

actionmailer (2.3.5) actionpack (2.3.5) activerecord (2.3.8, 2.3.5) activeresource (2.3.5) activesupport (2.3.8, 2.3.5) acts-as-taggable-on (2.0.6) builder (3.0.0) bundler (1.0.15) chronic (0.3.0) daemon_controller (0.2.6) daemons (1.1.0) diff-lcs (1.1.2) echoe (4.3.1) eventmachine (0.12.10) exception_notification (1.0.20090728) factory_girl (1.3.3) fastthread (1.0.7) gemcutter (0.6.1) geoip (0.8.9) hoe (2.8.0) json_pure (1.5.0) mime-types (1.16) mocha (0.9.10) mysql (2.8.1) oauth (0.4.4) paperclip (2.2.9.2) passenger (3.0.7) proxymachine (1.2.4) rack (1.0.1) rails (2.3.5) rake (0.8.7) rdiscount (开发者_JAVA百科1.3.1.1) revo-ssl_requirement (1.1.0) riddle (1.2.2) rmagick (2.13.1) ruby-hmac (0.4.0) ruby-openid (2.1.8) ruby-yadis (0.3.4) rubyforge (2.0.4) shoulda (2.9.2) state_machine (0.9.4) stomp (1.1) stompserver (0.9.9) tuxml (0.0.1) validates_url_format_of (0.1.1) will_paginate (2.3.15)

Many thanks in advance.

Carlos.


Newer versions of Rubygems are deprecating some old internal methods. You can downgrade Rubygems with gem update --system 1.x.y (e.g. 1.5.2) to see if that solves your problem.


Deprecate was namespaced to Gem::Deprecate. You can temporary patch it:

Gem::Deprecate.skip_during do
  self.spec_dirs = *args
  add_specs(*specs)
end
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜