Установка Declarative_authorization устанавливает зависимости рельсы 3 - PullRequest
1 голос
/ 19 ноября 2010

версия 0.4.1 драгоценного камня декларативного_авторизации имеет rails> = 2.1.0 в качестве зависимости.Если вы сначала установите rails 2.3.5, а затем установите 0.4.1 декларативного_авторизации, вы получите зависимости Rails 3. Если для декларативного_авторизации нужны rails> = 2.1.0, если установлен 2.3.5, эта зависимость должна быть удовлетворена, верно?Что вызывает установку всех других драгоценных камней?Это ошибка rubygems?

$ ruby -v
ruby 1.8.7 (2010-04-19 patchlevel 253) [i686-darwin10.4.0], MBARI 0x6770, Ruby Enterprise Edition 2010.02

$ gem -v
1.3.7

$ gem install rails -v 2.3.5
Successfully installed rake-0.8.7
Successfully installed activesupport-2.3.5
Successfully installed activerecord-2.3.5
Successfully installed rack-1.0.1
Successfully installed actionpack-2.3.5
Successfully installed actionmailer-2.3.5
Successfully installed activeresource-2.3.5
Successfully installed rails-2.3.5
8 gems installed

$ gem install declarative_authorization -v 0.4.1
Successfully installed declarative_authorization-0.4.1
Successfully installed activesupport-3.0.3
Successfully installed builder-2.1.2
Successfully installed i18n-0.4.2
Successfully installed activemodel-3.0.3
Successfully installed rack-1.2.1
Successfully installed rack-test-0.5.6
Successfully installed rack-mount-0.6.13
Successfully installed tzinfo-0.3.23
Successfully installed abstract-1.0.0
Successfully installed erubis-2.6.6
Successfully installed actionpack-3.0.3
Successfully installed arel-2.0.4
Successfully installed activerecord-3.0.3
Successfully installed activeresource-3.0.3
Successfully installed mime-types-1.16
Successfully installed polyglot-0.3.1
Successfully installed treetop-1.4.9
Successfully installed mail-2.2.10
Successfully installed actionmailer-3.0.3
Successfully installed thor-0.14.4
Successfully installed railties-3.0.3
Successfully installed bundler-1.0.7
23 gems installed

$ gem dependency declarative_authorization
Gem declarative_authorization-0.4.1
  rails (>= 2.1.0, runtime)

Ответы [ 2 ]

0 голосов
/ 19 ноября 2010

Когда вы указываете номер версии с помощью >= для драгоценного камня, Rubygems всегда будет пытаться получить самый последний и самый лучший для этого драгоценного камня, независимо от того, удовлетворена ли уже зависимость.Это не ошибка, а скорее ожидаемое поведение.Чтобы это исправить, автор гема должен указать, что гем зависит от любой версии Rails 2, выполнив следующее:

s.add_dependency 'rails', '~> 2'

В итоге, это ошибка автора гема, а не Rubygems.

0 голосов
/ 19 ноября 2010

Это озадачивает.

Возможно, камень декларативного_авторизации зависит от какого-то другого драгоценного камня, который по ошибке зависит от рельсов3.Я заметил один драгоценный камень, который начал использовать какую-то новую функцию ActiveSupport 3 и сломал всю цепочку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...