Forum: Ruby [ANN] unique_require 0.0.0a allow 1.8.x to never re-require

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Roger P. (Guest)
on 2009-02-21 07:21
This has probably been done "1,000,000" times, but here's another hack
at it.

The background:
If you've ever gotten a message like
../smart_require/test.rb:1: warning: already initialized constant A


you know that ruby 1.8.x "re-requires" a file if you pass in a different
paths to the same file.
ex:
require 'test.rb'
require '../current_dir/test.rb'

results in test.rb being loaded twice, despite the semantics of require
being that it loads only once.

Ruby 1.9 overcomes this.
This file overcomes this for 1.8.x
ex:

c:\dev>ruby example_bad.rb
../dev/test.rb:1: warning: already initialized constant A

C:\dev\>ruby -runique_require example_bad.rb
# no warning is displayed

To use:
download the unique_require.rb file from
http://github.com/rogerdpack/roger-useful/tree/master
unique_require folder
require it [preferably first].

Feedback welcome.
-=r
This topic is locked and can not be replied to.