From: "nobu (Nobuyoshi Nakada)" Date: 2013-02-20T11:49:05+09:00 Subject: [ruby-core:52551] [ruby-trunk - Bug #7865][Closed] A required file is not added to $LOADED_FEATURES until after it has run Issue #7865 has been updated by nobu (Nobuyoshi Nakada). Status changed from Open to Closed Priority changed from High to Normal =begin It's an intended behavior, not a bug. When an exception raised while loading, the feature won't be added to (({$LOADED_FEATURES})). And, it hasn't been loaded yet, has it? If you want to know what features are now getting loaded, you should suppose new feature, e.g. (({$LOADING_FEATURES})). =end ---------------------------------------- Bug #7865: A required file is not added to $LOADED_FEATURES until after it has run https://bugs.ruby-lang.org/issues/7865#change-36638 Author: charliesome (Charlie Somerville) Status: Closed Priority: Normal Assignee: matz (Yukihiro Matsumoto) Category: core Target version: next minor ruby -v: ruby 2.0.0dev (2013-02-08 trunk 39161) [x86_64-darwin11.4.0] =begin Required files are not added to $LOADED_FEATURES until after they have been executed. This is easily demonstrated with two files, a.rb and b.rb: # a.rb require "./b" p $LOADED_FEATURES.grep(/b\.rb/).any? # b.rb p $LOADED_FEATURES.grep(/b\.rb/).any? Running (({a.rb})) should print: true true But it current prints: false true =end -- http://bugs.ruby-lang.org/