Issue #4446 has been updated by Yusuke Endoh. Hello, This commit is suspected of big performance degradation of require. See [ruby-core:36593]. -- Yusuke Endoh <mame / tsg.ne.jp> ---------------------------------------- Backport #4446: autoload failure with relative paths http://redmine.ruby-lang.org/issues/4446 Author: James M. Lawrence Status: Open Priority: Normal Assignee: Category: core Target version: =begin % cat foo.rb module Foo end % cat run.rb dir = File.dirname(File.expand_path(__FILE__)) $LOAD_PATH.unshift(dir + '/../' + File.basename(dir)) autoload :Foo, 'foo' p Foo % ruby -v run.rb ruby 1.9.2p180 (2011-02-18 revision 30907) [i386-darwin9.8.0] /Users/jlawrence/tmp/foo.rb:1: warning: loading in progress, circular require considered harmful - /Users/jlawrence/tmp/foo.rb from run.rb:5:in `<main>' from /Users/jlawrence/tmp/foo.rb:1:in `<top (required)>' /Users/jlawrence/tmp/foo.rb:1:in `<top (required)>': uninitialized constant Foo (NameError) from run.rb:5:in `<main>' Commit r30789 on trunk fixes this problem (with no conflicts). =end -- http://redmine.ruby-lang.org