summaryrefslogtreecommitdiff
path: root/lib/bundler/lazy_specification.rb
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2022-10-11 01:36:04 +0200
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2022-10-18 16:33:15 +0900
commitcb63a3f4c1d4b3e6245674e8f759adeda7c7abe4 (patch)
tree64154b42ed9ab76786f2b27e2893f78d4053fe7a /lib/bundler/lazy_specification.rb
parent4d3dbbe77e273262757483d402ee1157a48453e9 (diff)
[rubygems/rubygems] Materialize platforms strictly on Windows too
https://github.com/rubygems/rubygems/commit/ab11545f80
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6578
Diffstat (limited to 'lib/bundler/lazy_specification.rb')
-rw-r--r--lib/bundler/lazy_specification.rb7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/bundler/lazy_specification.rb b/lib/bundler/lazy_specification.rb
index 3630de5672..7100d822b4 100644
--- a/lib/bundler/lazy_specification.rb
+++ b/lib/bundler/lazy_specification.rb
@@ -151,7 +151,8 @@ module Bundler
#
# For backwards compatibility with existing lockfiles, if the most specific
- # locked platform is RUBY, we keep the previous behaviour of resolving the
+ # locked platform is not a specific platform like x86_64-linux or
+ # universal-java-11, then we keep the previous behaviour of resolving the
# best platform variant at materiliazation time. For previous bundler
# versions (before 2.2.0) this was always the case (except when the lockfile
# only included non-ruby platforms), but we're also keeping this behaviour
@@ -159,7 +160,9 @@ module Bundler
# explicitly add a more specific platform.
#
def ruby_platform_materializes_to_ruby_platform?
- !Bundler.most_specific_locked_platform?(generic_local_platform) || force_ruby_platform || Bundler.settings[:force_ruby_platform]
+ generic_platform = generic_local_platform == Gem::Platform::JAVA ? Gem::Platform::JAVA : Gem::Platform::RUBY
+
+ !Bundler.most_specific_locked_platform?(generic_platform) || force_ruby_platform || Bundler.settings[:force_ruby_platform]
end
end
end