[前][次][番号順一覧][スレッド一覧]

ruby-changes:70611

From: David <ko1@a...>
Date: Mon, 27 Dec 2021 10:45:55 +0900 (JST)
Subject: [ruby-changes:70611] 03903f23c2 (master): [rubygems/rubygems] Remove the rest of the `RUBY_VERSION` monkeypatching

https://git.ruby-lang.org/ruby.git/commit/?id=03903f23c2

From 03903f23c277b4dae8174347f7a5081b3a776a08 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?David=20Rodr=C3=ADguez?= <deivid.rodriguez@r...>
Date: Sun, 26 Dec 2021 19:44:24 +0100
Subject: [rubygems/rubygems] Remove the rest of the `RUBY_VERSION`
 monkeypatching

Since we're at it. This generates a bunch of warnings and seems like a
brittle way to test things, so let's get rid of it.

https://github.com/rubygems/rubygems/commit/f5d45520e0
---
 lib/bundler/ruby_version.rb               |  2 +-
 spec/bundler/install/gemfile/ruby_spec.rb | 32 ++++++++++++++++++++++---------
 spec/bundler/support/helpers.rb           |  9 ---------
 3 files changed, 24 insertions(+), 19 deletions(-)

diff --git a/lib/bundler/ruby_version.rb b/lib/bundler/ruby_version.rb
index 491f8c55a4e..d3b7963920c 100644
--- a/lib/bundler/ruby_version.rb
+++ b/lib/bundler/ruby_version.rb
@@ -103,7 +103,7 @@ module Bundler https://github.com/ruby/ruby/blob/trunk/lib/bundler/ruby_version.rb#L103
 
     def self.system
       ruby_engine = RUBY_ENGINE.dup
-      ruby_version = ENV.fetch("BUNDLER_SPEC_RUBY_VERSION") { RUBY_VERSION }.dup
+      ruby_version = RUBY_VERSION.dup
       ruby_engine_version = RUBY_ENGINE_VERSION.dup
       patchlevel = RUBY_PATCHLEVEL.to_s
 
diff --git a/spec/bundler/install/gemfile/ruby_spec.rb b/spec/bundler/install/gemfile/ruby_spec.rb
index fd4300c0423..ba250acfddf 100644
--- a/spec/bundler/install/gemfile/ruby_spec.rb
+++ b/spec/bundler/install/gemfile/ruby_spec.rb
@@ -46,18 +46,16 @@ RSpec.describe "ruby requirement" do https://github.com/ruby/ruby/blob/trunk/spec/bundler/install/gemfile/ruby_spec.rb#L46
   it "allows changing the ruby version requirement to something compatible" do
     install_gemfile <<-G
       source "#{file_uri_for(gem_repo1)}"
-      ruby ">= 1.0.0"
+      ruby ">= #{RUBY_VERSION[0..2]}.0"
       gem "rack"
     G
 
     allow(Bundler::SharedHelpers).to receive(:find_gemfile).and_return(bundled_app_gemfile)
     expect(locked_ruby_version).to eq(Bundler::RubyVersion.system)
 
-    simulate_ruby_version "5100"
-
     install_gemfile <<-G
       source "#{file_uri_for(gem_repo1)}"
-      ruby ">= 1.0.1"
+      ruby ">= #{RUBY_VERSION}"
       gem "rack"
     G
 
@@ -72,19 +70,35 @@ RSpec.describe "ruby requirement" do https://github.com/ruby/ruby/blob/trunk/spec/bundler/install/gemfile/ruby_spec.rb#L70
       gem "rack"
     G
 
-    allow(Bundler::SharedHelpers).to receive(:find_gemfile).and_return(bundled_app_gemfile)
-    expect(locked_ruby_version).to eq(Bundler::RubyVersion.system)
+    lockfile <<~L
+      GEM
+        remote: #{file_uri_for(gem_repo1)}/
+        specs:
+          rack (1.0.0)
+
+      PLATFORMS
+        #{lockfile_platforms}
 
-    simulate_ruby_version "5100"
+      DEPENDENCIES
+        rack
+
+      RUBY VERSION
+         ruby 2.1.4p422
+
+      BUNDLED WITH
+         #{Bundler::VERSION}
+    L
+
+    allow(Bundler::SharedHelpers).to receive(:find_gemfile).and_return(bundled_app_gemfile)
 
     install_gemfile <<-G
       source "#{file_uri_for(gem_repo1)}"
-      ruby ">= 5000.0"
+      ruby ">= #{RUBY_VERSION[0..2]}.0"
       gem "rack"
     G
 
     expect(the_bundle).to include_gems "rack 1.0.0"
-    expect(locked_ruby_version.versions).to eq(["5100"])
+    expect(locked_ruby_version).to eq(Bundler::RubyVersion.system)
   end
 
   it "allows requirements with trailing whitespace" do
diff --git a/spec/bundler/support/helpers.rb b/spec/bundler/support/helpers.rb
index 99baec24d4e..ef53cc0274b 100644
--- a/spec/bundler/support/helpers.rb
+++ b/spec/bundler/support/helpers.rb
@@ -448,15 +448,6 @@ module Spec https://github.com/ruby/ruby/blob/trunk/spec/bundler/support/helpers.rb#L448
       ENV["BUNDLER_SPEC_PLATFORM"] = old if block_given?
     end
 
-    def simulate_ruby_version(version)
-      return if version == RUBY_VERSION
-      old = ENV["BUNDLER_SPEC_RUBY_VERSION"]
-      ENV["BUNDLER_SPEC_RUBY_VERSION"] = version
-      yield if block_given?
-    ensure
-      ENV["BUNDLER_SPEC_RUBY_VERSION"] = old if block_given?
-    end
-
     def simulate_windows(platform = mswin)
       simulate_platform platform do
         simulate_bundler_version_when_missing_prerelease_default_gem_activation do
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]