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 method
skip_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
精彩评论