diff --git a/lib/bundler/installer/standalone.rb b/lib/bundler/installer/standalone.rb index 2a8c9a432d..a019fbd3b8 100644 --- a/lib/bundler/installer/standalone.rb +++ b/lib/bundler/installer/standalone.rb @@ -87,8 +87,7 @@ module Bundler if Gem.respond_to?(:discover_gems_on_require=) Gem.discover_gems_on_require = false else - kernel = (class << ::Kernel; self; end) - [kernel, ::Kernel].each do |k| + [::Kernel.singleton_class, ::Kernel].each do |k| if k.private_method_defined?(:gem_original_require) private_require = k.private_method_defined?(:require) k.send(:remove_method, :require) diff --git a/lib/bundler/rubygems_integration.rb b/lib/bundler/rubygems_integration.rb index bb7392bad4..e7d3d3ea21 100644 --- a/lib/bundler/rubygems_integration.rb +++ b/lib/bundler/rubygems_integration.rb @@ -230,8 +230,7 @@ module Bundler if Gem.respond_to?(:discover_gems_on_require=) Gem.discover_gems_on_require = false else - kernel = (class << ::Kernel; self; end) - [kernel, ::Kernel].each do |k| + [::Kernel.singleton_class, ::Kernel].each do |k| if k.private_method_defined?(:gem_original_require) redefine_method(k, :require, k.instance_method(:gem_original_require)) end @@ -271,8 +270,7 @@ module Bundler def replace_gem(specs, specs_by_name) executables = nil - kernel = (class << ::Kernel; self; end) - [kernel, ::Kernel].each do |kernel_class| + [::Kernel.singleton_class, ::Kernel].each do |kernel_class| redefine_method(kernel_class, :gem) do |dep, *reqs| if executables&.include?(File.basename(caller.first.split(":").first)) break