提供了这个简单的 Gemfile:
source 'http://rubygems.org'
gem 'rails', '~> 4.1.0'
gem 'comfortable_mexican_sofa', '~> 1.12.3'
它愚蠢地失败了:
Bundler could not find compatible versions for gem "i18n":
In Gemfile:
comfortable_mexican_sofa (~> 1.12.3) ruby depends on
jquery-rails (>= 3.0.0) ruby depends on
railties (< 5.0, >= 4.2.0.beta) ruby depends on
activesupport (= 4.2.0.beta1) ruby depends on
i18n (< 0.8, >= 0.7.0.beta1) ruby
comfortable_mexican_sofa (~> 1.12.3) ruby depends on
rails-i18n (>= 4.0.0) ruby depends on
i18n (0.6.0)
Bundler could not find compatible versions for gem "rails":
In Gemfile:
comfortable_mexican_sofa (~> 1.12.3) ruby depends on
rails-i18n (>= 4.0.0) ruby depends on
rails (~> 4.0.0) ruby
rails (4.1.0)
我看到了问题。CMS 依赖于jquery-rails (>= 3.0.0)
. 几天前,那个 gem 被撞到了4.0.0
,它将 Rails 依赖项设置为>= 4.2.0.beta
. 这显然把一切都搞砸了。
对我来说没有意义的是我专门将 Rails 定义为~> 4.1.0
. 为什么子依赖完全忽略这一点并尝试安装不适合的版本?
我可以通过限制来解决这个问题,jquery-rails (< 4.0.0)
但我不想这样做。