Требования к версии GEM устарели - PullRequest
3 голосов
/ 02 апреля 2010

При создании нового проекта Rails с помощью:

rails sample

Затем создаем модель, используя:

script/generate model person first_name:string last_name:string

Все хорошо. Однако, если я добавлю какие-либо драгоценные камни в мою среду. Rb:

config.gem "authlogic"

И запустить тот же генератор, я получаю следующее:

/ Library / рубин / Gems / 1.8 / драгоценные камни / Рельсы-2.3.5 / Библиотека / Рельсы / gem_dependency.rb: 119: Внимание: Gem :: Зависимость от # version_requirements устарела и будет удалена или после августа 2010 года.

Предупреждение только недавно появилось (я думаю), но я бы хотел исправить это, если это возможно. Есть намеки или похожий опыт?

Спасибо.

Ответы [ 4 ]

2 голосов
/ 20 января 2011

Это может быть неуместно, так как это рельсы 3.0, но ответ, который вы ищете, находится в этой статье: http://omgbloglol.com/post/353978923/the-path-to-rails-3-approaching-the-upgrade вниз к разделу под названием «config.gem мертв, долгоживущий бандлер», хотя статья объясняет некоторые новые вещи.

Вы можете рассмотреть возможность обновления до rails 3.0, и когда вы это сделаете, вы будете использовать Gemfile внутри своего приложения. здесь вы захотите включить строку:

самоцвет 'authlogic'

и затем в командной строке запустите

установка пакета sudo

После этого все должно быть установлено:)

2 голосов
/ 05 апреля 2010

вы пробовали:

rake gems: установить

Btw. Если вы используете rubygems 1.3.6, вы получите это предупреждение об устаревании. Предыдущие версии никогда не давали предупреждения. Также я предлагаю установить любой гем с помощью командной строки, а не добавлять его в файл environment.rb. Если добавленные в файл самоцветы не установлены / не установлены, генератор или любая задача rake просто не будут работать. Это небольшая ошибка.

Вот статья, которая описывает способ предотвращения предупреждения: http://www.mattvsworld.com/blog/2010/03/version_requirements-deprecated-warning-in-rails/

Ничего страшного, хотя. Просто установите gems обычным способом и не добавляйте ничего в ваш файл environment.rb. Вы никогда не получите предупреждение об устаревании.

1 голос
/ 07 февраля 2012

Помещение этих строк в ваш config / environment.rb между начальной загрузкой и инициализатором приведет к удалению предупреждения об устаревании:

if Gem::VERSION >= "1.3.6"
  module Rails
    class GemDependency
      def requirement
        super == Gem::Requirement.default ? nil : super
      end
    end
  end
end
1 голос
/ 16 февраля 2011

Проверка https://gist.github.com/807008 они предлагают понизить рейтинг и снова обновить рубины.

работал для меня ...

...