summaryrefslogtreecommitdiff
path: root/lib/bundled_gems.rb
diff options
context:
space:
mode:
authorDavid Rodríguez <[email protected]>2024-09-04 22:01:03 +0200
committerHiroshi SHIBATA <[email protected]>2024-09-27 17:03:45 +0900
commita70adce1ce5fae8eaae385214ac0d2e7d17c1103 ()
treeaff78a82ae6f1a3ff1a898dc4f20f7867f9ded84 /lib/bundled_gems.rb
parenta896c4cc532b9192732af02ac5cb84d3b5e7f82d (diff)
Only `warn` about bundled gems when require succeeds
Notes: Merged: https://.com/ruby/ruby/pull/11550
-rw-r--r--lib/bundled_gems.rb7
1 files changed, 5 insertions, 2 deletions
@@ -69,14 +69,17 @@ module Gem::BUNDLED_GEMS
[::Kernel.singleton_class, ::Kernel].each do |kernel_class|
kernel_class.send(:alias_method, :no_warning_require, :require)
kernel_class.send(:define_method, :require) do |name|
- if message = ::Gem::BUNDLED_GEMS.warning?(name, specs: spec_names)
if ::Gem::BUNDLED_GEMS.uplevel > 0
Kernel.warn message, uplevel: ::Gem::BUNDLED_GEMS.uplevel
else
Kernel.warn message
end
end
- kernel_class.send(:no_warning_require, name)
end
if kernel_class == ::Kernel
kernel_class.send(:private, :require)