Project

General

Profile

Bug #7865

A required file is not added to $LOADED_FEATURES until after it has run

Added by Charlie Somerville about 3 years ago. Updated about 3 years ago.

Status:
Closed
Priority:
Normal
ruby -v:
ruby 2.0.0dev (2013-02-08 trunk 39161) [x86_64-darwin11.4.0]
[ruby-core:52301]

Description

=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

History

#1 [ruby-core:52325] Updated by Koichi Sasada about 3 years ago

  • Category set to core
  • Assignee set to Yukihiro Matsumoto
  • Priority changed from Normal to 5
  • Target version set to next minor

Matz issue?
or other can judge it?

This behavior is same as 1.9.3 or before. So it is not a compatibility issue.

#2 [ruby-core:52551] Updated by Nobuyoshi Nakada about 3 years ago

  • Status changed from Open to Closed
  • Priority changed from 5 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

Also available in: Atom PDF