1.3" spec.add_development_depende-6ren">
gpt4 book ai didi

ruby - Travis 现在失败了 Rails 4 已经发布

转载 作者:太空宇宙 更新时间:2023-11-03 16:52:44 26 4
gpt4 key购买 nike

这是我的 gemspec 的相关部分:

spec.add_development_dependency "bundler", "~> 1.3"
spec.add_development_dependency "rake"
spec.add_development_dependency "rspec", "~> 2.13.0"
spec.add_dependency "addressable"
spec.add_dependency "activesupport", "> 3.0.11"

Travis 无法安装 ruby​​ 1.8.7,因为它试图安装 ActiveSupport 4.0,但 Rails 4 不支持 ruby​​ 1.8.7。恐怕当用户尝试使用 gem 时这可能是个问题,即使它可能与 1.8.7 兼容。

如何解决这个问题,同时保持对 Rails 4 的支持?我不想在我的 gemspec 上使用 "~> 3.0.11"

最佳答案

我建议将您的 gemspec 的内容更改为:

  if RUBY_VERSION < "1.9"
spec.add_dependency "activesupport", "~> 3.0.11"
else
spec.add_dependency "activesupport", "> 3.0.11"
end

从技术上讲,这确实使用了您不想要的语法,但它是以一种受限的方式使用的,并且不应对用户产生不利影响。事实上,它会影响 gem 的构建过程,并且会让 Travis 使用受限版本的依赖项(无论如何最终用户都必须这样做)而不放置任何 对 gem 的一般约束 - 前提是您在使用更新的 Ruby 时打包和发布 gem。

关于ruby - Travis 现在失败了 Rails 4 已经发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17347419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com