summaryrefslogtreecommitdiff
path: root/lib/bundler/definition.rb
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2023-12-22 18:59:44 +0100
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2024-01-11 13:51:52 +0900
commitb8f859f0bf21d67d962d12a99e1f2d7d2f20e3e5 (patch)
treed4b536d0b64d02180f3f6334d8bcd506b9423ba3 /lib/bundler/definition.rb
parent580d4a4053067dde69be81133a55bd1bf8ef65c8 (diff)
Complete missing specs for platforms after resolution
If two platform specific variants have different dependencies, then resolution may fallback to the non platform specific variant. However, the platform specific variants that have the same dependencies as the non specific one can still be kept. Do a pass to complete those after resolution.
Diffstat (limited to 'lib/bundler/definition.rb')
-rw-r--r--lib/bundler/definition.rb2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/bundler/definition.rb b/lib/bundler/definition.rb
index a19eb13428..0b0e63f77e 100644
--- a/lib/bundler/definition.rb
+++ b/lib/bundler/definition.rb
@@ -602,6 +602,8 @@ module Bundler
@resolved_bundler_version = result.find {|spec| spec.name == "bundler" }&.version
@platforms = result.add_extra_platforms!(platforms) if should_add_extra_platforms?
+ result.complete_platforms!(platforms)
+
SpecSet.new(result.for(dependencies, false, @platforms))
end