summaryrefslogtreecommitdiff
path: root/lib/bundler/definition.rb
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2021-09-29 20:07:08 +0200
committergit <svn-admin@ruby-lang.org>2021-10-13 21:16:39 +0900
commitec5f732b7d48b557c9d8974709f7175bd9f99323 (patch)
treeb0ebe7ad692f0cc949a644a18b6ce075317e76c6 /lib/bundler/definition.rb
parent15f50d3bedbae76d7774601a4f7d93a330280098 (diff)
[rubygems/rubygems] Extract `locked_dependencies` helper
https://github.com/rubygems/rubygems/commit/7326d47530
Diffstat (limited to 'lib/bundler/definition.rb')
-rw-r--r--lib/bundler/definition.rb12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/bundler/definition.rb b/lib/bundler/definition.rb
index b4db2850fd..96c7c862d7 100644
--- a/lib/bundler/definition.rb
+++ b/lib/bundler/definition.rb
@@ -233,6 +233,10 @@ module Bundler
end
end
+ def locked_dependencies
+ @locked_deps.values
+ end
+
def specs_for(groups)
groups = requested_groups if groups.empty?
deps = dependencies_for(groups)
@@ -374,8 +378,8 @@ module Bundler
new_sources = gemfile_sources - @locked_sources
deleted_sources = @locked_sources - gemfile_sources
- new_deps = @dependencies - @locked_deps.values
- deleted_deps = @locked_deps.values - @dependencies
+ new_deps = @dependencies - locked_dependencies
+ deleted_deps = locked_dependencies - @dependencies
# Check if it is possible that the source is only changed thing
if (new_deps.empty? && deleted_deps.empty?) && (!new_sources.empty? && !deleted_sources.empty?)
@@ -567,7 +571,7 @@ module Bundler
def dependencies_for_source_changed?(source, locked_source = source)
deps_for_source = @dependencies.select {|s| s.source == source }
- locked_deps_for_source = @locked_deps.values.select {|dep| dep.source == locked_source }
+ locked_deps_for_source = locked_dependencies.select {|dep| dep.source == locked_source }
deps_for_source.uniq.sort != locked_deps_for_source.sort
end
@@ -651,7 +655,7 @@ module Bundler
def converge_dependencies
frozen = Bundler.frozen_bundle?
- (@dependencies + @locked_deps.values).each do |dep|
+ (@dependencies + locked_dependencies).each do |dep|
locked_source = @locked_deps[dep.name]
# This is to make sure that if bundler is installing in deployment mode and
# after locked_source and sources don't match, we still use locked_source.