/ / declarative_authorizationをインストールすると、レール3の依存関係がインストールされます - ruby​​、rubygems

declarative_authorizationをインストールすると、ruby、rubygemsの依存関係がインストールされます

バージョン0.4。declarative_authorization gemの1つには、依存関係として> 2.1.0があります。最初にrails 2.3.5をインストールし、0.4.1のdeclarative_authorizationをインストールすると、Rails 3の依存関係が得られます.replil_authorizationに> 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)

回答:

回答№1は0

バージョン番号を指定すると >= のために 宝石、Rubygemsは常に依存関係が既に満たされているかどうかにかかわらず、その宝石にとって最新で最大のものです。これはバグではなく、むしろ予想される動作です。これを修正するには、gemの作者は、gemがこれを実行することによってRails 2のどのバージョンにも依存することを指定する必要があります。

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

要約すると、これは宝石の作者の失敗であり、Rubygemsではありません。


回答№2の場合は0

これは困惑しています。

宣言的な権限付与の宝石誤ってレール3に依存している他の宝石に依存している3。私は、ActiveSupport 3の新機能をいくつか使用し始めた宝石の1つに気付きました。