捆绑更新 rails 解析为 6.0.1 候选发布版

bundle update rails resolving to 6.0.1 release candidate

我正在尝试将 rails 从 5.2 更新到 6.0。在我的 Gemfile 中,我声明:

rails (~> 6.0) 已解析为 6.0.1.rc1

我的期望是我最终会得到 6.0.4 ~> 意味着乐观地解决最新的 6.0.* 版本?)解决候选发布不是我想做的事情。

当然,我可以直接指定它,但我宁愿不将 Gemfile 绑定到特定版本,而是指望捆绑程序正确解析它。

一个快速解决方法是更改​​您的 Gemfile。如果你想保留乐观的 ~> 6.0 运算符,你可以为版本添加第二个匹配器,像这样(如果不能这样做则报告错误):

gem 'rails', '~> 6.0', '>= 6.0.4'

我经常使用这种模式来锁定安全补丁,而不会失去 ~> 运算符的灵活性。

我猜有些东西阻止了捆绑器使用更高版本的 Rails gem - 也就是说,你有一个依赖项将你的 gem 版本锁定到 6.0.1.如果以上没有解决问题,您可以 post 您的问题中 Gemfile 的相关部分吗?并在 Gemfile.lock 中搜索 rails 以查看是否有任何 gem 需要 rails 6.0.1 而不是更高版本。