summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrismo <chrismo@clabs.org>2016-06-22 00:27:18 -0500
committerchrismo <chrismo@clabs.org>2016-07-08 19:35:57 -0500
commitd025055f8b6f7368213559c81f500e404b676d84 (patch)
tree1b1c3d3c935f9352b8e6c6e63d72da16f52cf669
parent00b8064c4f69a2ff50875dc2268d79714bc4a113 (diff)
downloadbundler-d025055f8b6f7368213559c81f500e404b676d84.tar.gz
No need to dupe cached GVP output
...now that its output is inside the Resolver's cache.
-rw-r--r--lib/bundler/gem_version_promoter.rb4
-rw-r--r--spec/bundler/gem_version_promoter_spec.rb14
2 files changed, 1 insertions, 17 deletions
diff --git a/lib/bundler/gem_version_promoter.rb b/lib/bundler/gem_version_promoter.rb
index 57fc9f4c12..84c971f329 100644
--- a/lib/bundler/gem_version_promoter.rb
+++ b/lib/bundler/gem_version_promoter.rb
@@ -29,7 +29,7 @@ module Bundler
def sort_versions(dep, dep_specs)
before_result = "before sort_versions: #{debug_format_result(dep, dep_specs).inspect}" if ENV["DEBUG_RESOLVER"]
- result = @sort_versions[dep] ||= begin
+ @sort_versions[dep] ||= begin
gem_name = dep.name
# An Array per version returned, different entries for different platforms.
@@ -47,8 +47,6 @@ module Bundler
end
end
end
- # MODO: flush out this problem by freezing it?
- result.dup # not ideal, but elsewhere in bundler the resulting array is occasionally emptied, corrupting the cache.
end
def major?
diff --git a/spec/bundler/gem_version_promoter_spec.rb b/spec/bundler/gem_version_promoter_spec.rb
index 10e1b3cb40..4687ce20bc 100644
--- a/spec/bundler/gem_version_promoter_spec.rb
+++ b/spec/bundler/gem_version_promoter_spec.rb
@@ -114,20 +114,6 @@ describe Bundler::GemVersionPromoter do
end
end
- context "caching search results" do
- it "should dup the output to protect the cache" do
- # Bundler will (somewhere) do this on occasion during a large resolution.
- # Let's protect against it.
- gvp = Bundler::GemVersionPromoter.new
-
- dep = Bundler::DepProxy.new(Gem::Dependency.new("foo", ">= 0"), "ruby")
- sg = build_spec_group("foo", %w(2.4.0))
- res = gvp.sort_versions(dep, sg)
- res.clear
- expect(gvp.sort_versions(dep, sg)).to_not eq []
- end
- end
-
context "level error handling" do
subject { Bundler::GemVersionPromoter.new }