summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Giddins <segiddins@segiddins.me>2016-08-04 17:57:10 -0500
committerSamuel Giddins <segiddins@segiddins.me>2016-08-05 19:53:25 -0500
commitba12408dd1729a3364bace1e3ee517f01f28e9d8 (patch)
tree8f5fbd360d568dbde492a4c57d754693f7c9e611
parente23ea1519cfd9164053cb0eca84c3447ed6a2d57 (diff)
downloadbundler-ba12408dd1729a3364bace1e3ee517f01f28e9d8.tar.gz
Unlock sources when a local override leads to changes
-rw-r--r--lib/bundler/definition.rb5
-rw-r--r--lib/bundler/installer/parallel_installer.rb2
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/bundler/definition.rb b/lib/bundler/definition.rb
index 36bb9f2ef8..726e9d261b 100644
--- a/lib/bundler/definition.rb
+++ b/lib/bundler/definition.rb
@@ -555,9 +555,10 @@ module Bundler
end
end
- locals.any? do |source, changed|
+ sources_with_changes = locals.select do |source, changed|
changed || specs_changed?(source)
- end
+ end.map(&:first)
+ !sources_with_changes.each {|source| @unlock[:sources] << source.name }.empty?
end
def converge_paths
diff --git a/lib/bundler/installer/parallel_installer.rb b/lib/bundler/installer/parallel_installer.rb
index d3ae86d174..d6eb16c981 100644
--- a/lib/bundler/installer/parallel_installer.rb
+++ b/lib/bundler/installer/parallel_installer.rb
@@ -119,8 +119,8 @@ module Bundler
def enqueue_specs
@specs.select(&:ready_to_enqueue?).each do |spec|
if spec.dependencies_installed? @specs
- worker_pool.enq spec
spec.state = :enqueued
+ worker_pool.enq spec
end
end
end