diff options
author | David RodrÃguez <deivid.rodriguez@riseup.net> | 2022-08-03 19:03:50 +0200 |
---|---|---|
committer | git <svn-admin@ruby-lang.org> | 2022-08-06 15:41:46 +0900 |
commit | 466a760e1807e629d0ec9f9ebf160d3c3f649d04 (patch) | |
tree | daffaf58f632ccbc5e25dd178c841a3da2d0e975 /lib/bundler/resolver.rb | |
parent | 8dd63b89d97a0ab149288f2e46d814fb60cb3ba5 (diff) |
[rubygems/rubygems] Fix yanked gems being unintentionally update when other gems are unlocked
This is a regression from a change intended to raise errors when user
puts a gem under an incorrect source in the Gemfile by mistake. To fix
the issue, we revert the change that caused it and implement it in a
different way that restores the resolver independency from real
specifications. Now it deals only with names and versions and does not
try to materialize anything into real specifications before resolving.
https://github.com/rubygems/rubygems/commit/d2bf1b86eb
Diffstat (limited to 'lib/bundler/resolver.rb')
-rw-r--r-- | lib/bundler/resolver.rb | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/bundler/resolver.rb b/lib/bundler/resolver.rb index 40bc247b32..ca1bdbda7b 100644 --- a/lib/bundler/resolver.rb +++ b/lib/bundler/resolver.rb @@ -28,10 +28,11 @@ module Bundler def initialize(source_requirements, base, gem_version_promoter, additional_base_requirements, platforms, metadata_requirements) @source_requirements = source_requirements @metadata_requirements = metadata_requirements + @base = base @resolver = Molinillo::Resolver.new(self, self) @search_for = {} @base_dg = Molinillo::DependencyGraph.new - @base = base.materialized_for_resolution do |ls| + base.each do |ls| dep = Dependency.new(ls.name, ls.version) @base_dg.add_vertex(ls.name, DepProxy.get_proxy(dep, ls.platform), true) end |