#ruby-on-rails #ruby-on-rails-4 #rubygems #bundler
#ruby-on-rails #ruby-on-rails-4 #rubygems #bundler
Вопрос:
Я пытаюсь обновить свой rails 4.2.11 gem до нового патча 4.2.11.1
Когда я запускаю bundle update rails
(я изменил версию rails на 4.2.11.1 в моем Gemfile), есть несколько других драгоценных камней, которые являются частью моего приложения, которые также обновляются. Ссылаясь на это, я вижу, что существует десять камней зависимостей, поэтому они обновляются, и это нормально.
Драгоценные камни, которые обновляются до более новой версии, являются :
- rake 12.3.2 (изначально был 12.3.1),
- параллельный-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
Ответ №1:
Согласно документации bundler,https://bundler.io/man/bundle-update.1.html#DESCRIPTION , bundle update
игнорирует ваш Gemfile.lock
и, следовательно, установит последнюю версию любых зависимостей обновляемого gem (придерживаясь обновляющегося gem .gemspec
).
Если вы не хотите, чтобы обновлялись какие-либо общие зависимости, используйте --conservative
опцию. https://bundler.io/man/bundle-update.1.html#OPTIONS
bundle update rails --conservative