8000 Only `warn` about bundled gems when require succeeds · ruby/ruby@a70adce · GitHub
[go: up one dir, main page]

Skip to content

Commit a70adce

Browse files
deivid-rodriguezhsbt
authored andcommitted
Only warn about bundled gems when require succeeds
1 parent a896c4c commit a70adce

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

lib/bundled_gems.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,17 @@ def self.replace_require(specs)
6969
[::Kernel.singleton_class, ::Kernel].each do |kernel_class|
7070
kernel_class.send(:alias_method, :no_warning_require, :require)
7171
kernel_class.send(:define_method, :require) do |name|
72-
if message = ::Gem::BUNDLED_GEMS.warning?(name, specs: spec_names)
72+
result = kernel_class.send(:no_warning_require, name)
73+
74+
if result && message = ::Gem::BUNDLED_GEMS.warning?(name, specs: spec_names)
7375
if ::Gem::BUNDLED_GEMS.uplevel > 0
7476
Kernel.warn message, uplevel: ::Gem::BUNDLED_GEMS.uplevel
7577
else
7678
Kernel.warn message
7779
end
7880
end
79-
kernel_class.send(:no_warning_require, name)
81+
82+
result
8083
end
8184
if kernel_class == ::Kernel
8285
kernel_class.send(:private, :require)

0 commit comments

Comments
 (0)
0