Desenvolvimento

Atualizando rubygems e trabalhando com versões anteriores do rails

Muitos de vocês estão na vibe de rails 3.x e querem sempre usá-lo. Mas sabemos que o mundo é feio e ingrato então logo logo você terá que dar manutenção naquele sistema com rails 2.3.5 e dai vai.
O problema é que se você estiver usando RVM e quiser atualizar seu rubygems para 1.5 ou mais e usar rails 2.3.5 verá a seguinte mensagem:

requirement':NameError: undefined local variable or method 'version_requirements' for

Dai em diante é variável mas isso pode ocorrer. O que acontece é que o o rubygems em sua atualização mudou algumas coisas. Para funcionar abra seu environment e abaixo da linha

require File.join(File.dirname(__FILE__), 'boot')

Coloque

if Gem::VERSION >= "1.3.6" 
  module Rails
    class GemDependency
      def requirement
        r = super
        (r == Gem::Requirement.default) ? nil : r
      end
    end
  end
end

Pronto está funcionando =)