summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/bundled_gems.rb4
-rw-r--r--prelude.rb5
2 files changed, 9 insertions, 0 deletions
diff --git a/lib/bundled_gems.rb b/lib/bundled_gems.rb
index f6fdad21a1..85f23b2596 100644
--- a/lib/bundled_gems.rb
+++ b/lib/bundled_gems.rb
@@ -122,6 +122,10 @@ module Gem::BUNDLED_GEMS # :nodoc:
false
end
+ if suppress_list = Thread.current[:__bundled_gems_warning_suppression]
+ return if suppress_list.include?(name) || suppress_list.include?(feature)
+ end
+
return if specs.include?(name)
# Don't warn if a hyphenated gem provides this feature
diff --git a/prelude.rb b/prelude.rb
index 36da381804..249d0ecf7b 100644
--- a/prelude.rb
+++ b/prelude.rb
@@ -1,6 +1,9 @@
class Binding
# :nodoc:
def irb(...)
+ suppress = Thread.current[:__bundled_gems_warning_suppression]
+ Thread.current[:__bundled_gems_warning_suppression] = ['irb', 'reline', 'rdoc']
+
begin
require 'irb'
rescue LoadError, Gem::LoadError
@@ -8,6 +11,8 @@ class Binding
require 'irb'
end
irb(...)
+ ensure
+ Thread.current[:__bundled_gems_warning_suppression] = suppress
end
# suppress redefinition warning