Issue #3514 has been updated by Marc-Andre Lafortune. Target version set to 1.9.x Thanks for the patches. They have been applied in r28619 . Note that as all these changes are independent, breaking them in different patches is not needed; a single one is easier to apply. To generate the warnings in an automatic fashion, one can issue the following command: make test-all TESTS="test_library_loading.rb" Where the file test/test_library_loading.rb is: require 'test/unit' require_relative 'ruby/envutil' class TestRequire < Test::Unit::TestCase exceptions = %w[rubygems/specification] exclude = Regexp.union(*exceptions.map{|p| Regexp.new "^#{p}"}) root = "lib" path = File.expand_path("../../#{root}/", __FILE__) seen = [] Dir.chdir path puts ENV['LOAD_ONLY'].inspect load = if ENV['LOAD_ONLY'] ENV['LOAD_ONLY'].split(/,/) else Dir.glob("**/*.rb") end load.each do |lib| lib.chomp!(".rb") next if exclude =~ lib define_method :"test_load_library (#{root}/#{lib})" do assert_in_out_err([], "$VERBOSE= true\nrequire '#{lib}'") do |stdout, stderr| all = stdout+stderr all -= seen seen += all fail "No output was expected but got:\n" + all.join("\n") unless all.empty? pass end end end end ---------------------------------------- http://redmine.ruby-lang.org/issues/show/3514 ---------------------------------------- http://redmine.ruby-lang.org