From: Paul Brannan Date: 2001-08-24T04:09:54+09:00 Subject: [ruby-talk:20198] Bug in require? If in foo1.rb I have: FOO1 = 1 And in foo2.rb I have: require 'foo1.rb' require './foo1.rb' Then I get: ./foo1.rb:1: warning: already initialized constant FOO1 Since foo1 is the same file in each case, this should not happen. require should probably call expand_path on the file before checking to see if it has already been required. On another note, is there any way to require a file out of the current directory? Currently, I am using: def requirelocal(file, *args) caller_file, *foo = caller[0].split(':') caller_dir = File.dirname(caller_file) require File.join(caller_dir, file) end But, imo, this is just plain ugly. If I accidentally use 'require' instead of 'requirelocal', then the file still gets required, but if there is another file in $RUBYLIB with the same name, then that file gets required, not the one in the current directory. Perhaps an RCR would be appropriate? Paul