【问题标题】:Why does updating rails gem also update few non runtime dependency gems?为什么更新 rails gem 也会更新一些非运行时依赖 gem?
【发布时间】:2019-03-16 18:57:24
【问题描述】:

我正在尝试将我的 rails 4.2.11 gem 更新到新补丁 4.2.11.1

当我运行bundle update rails(我在我的 Gemfile 中将 rails 版本更改为 4.2.11.1)时,我的应用程序中几乎没有其他 gem 也得到更新。 参考this 我可以看到有十个依赖项gem,所以它们会得到更新,这很好。

更新到较新版本的 gem 是:

  • rake 12.3.2(最初是 12.3.1),
  • concurrent-ruby 1.1.5(原为 1.1.3),
  • mini_portile2 2.4.0(原为 2.3.0),
  • nokogiri 1.10.1(原为 1.8.5)
  • globalid 0.4.2(原为 0.4.1) )

注意:其中很少有像railaities -> rake这样的递归依赖,但是railties-4.2.11.1中指定的版本比我最初拥有的要低

我想了解为什么以及如何更新这些内容。

当前版本:ruby - 2.5.3、rails- 4.2.11、bundler - 1.17.1

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 rubygems bundler


    【解决方案1】:

    根据捆绑程序的文档,https://bundler.io/man/bundle-update.1.html#DESCRIPTIONbundle update 会忽略您的 Gemfile.lock,因此将安装正在更新的 gem 的任何依赖项的最新版本(同时遵守更新 gem 的 .gemspec)。

    如果您不希望更新任何共享依赖项,请使用--conservative 选项。 https://bundler.io/man/bundle-update.1.html#OPTIONS

    bundle update rails --conservative
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多