diff --git a/lib/require_all.rb b/lib/require_all.rb index 9c8f8c0..11fbfdb 100644 --- a/lib/require_all.rb +++ b/lib/require_all.rb @@ -68,7 +68,10 @@ def require_all(*args) end rescue SystemCallError # If the stat failed, maybe we have a glob! - files = Dir.glob arg + files = Dir.glob(arg).select { |fn| File.file?(fn) }.sort_by do |fn| + fn.count('/') + end + # Maybe it's an .rb file and the .rb was omitted if File.file?(arg + '.rb')