Skip to content

Commit 72b8041

Browse files
committed
⚡️ require_relative > require for internal files
ref: panorama-ed/memo_wise#349 ref: rubocop/rubocop#8748
1 parent fc7c2f5 commit 72b8041

File tree

2 files changed

+14
-14
lines changed

2 files changed

+14
-14
lines changed

lib/gem_bench.rb

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
require "version_gem"
33
require "bundler" # This gem utilizes bundler as a tool.
44

5-
require "gem_bench/version"
6-
require "gem_bench/scout"
7-
require "gem_bench/player"
8-
require "gem_bench/team"
9-
require "gem_bench/gemfile_line_tokenizer"
10-
require "gem_bench/strict_version_gem"
11-
require "gem_bench/strict_version_requirement"
5+
# this library
6+
require_relative "gem_bench/version"
7+
require_relative "gem_bench/scout"
8+
require_relative "gem_bench/player"
9+
require_relative "gem_bench/team"
10+
require_relative "gem_bench/gemfile_line_tokenizer"
11+
require_relative "gem_bench/strict_version_gem"
12+
require_relative "gem_bench/strict_version_requirement"
1213

1314
module GemBench
1415
USAGE = "[GemBench] Usage: Require another gem in this session to evaluate it.\n\tExample:\n\t\trequire 'rails'\n\t\tGemBench.check({verbose: true})\n"

lib/gem_bench/jersey.rb

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -110,15 +110,14 @@ def as_klass
110110
private
111111

112112
def load_gem_copy(files)
113+
puts "Requiring copy of #{gem_name} with: #{files.inspect}" if verbose
114+
# These are absolute file paths, so they can use `require`
113115
files.each do |filepath|
114-
# begin
116+
# But files required here may not load their own internal files properly if they are still using `require`.
117+
# Since Ruby 2.2, best practice for ruby libraries is to use require_relative for internal files,
118+
# and require for external files and dependencies.
119+
# Ref: https://github.com/panorama-ed/memo_wise/issues/349
115120
require filepath
116-
# rescue LoadError => e
117-
# puts file.to_s
118-
# puts tempfile.path
119-
# puts e.class
120-
# puts e.message
121-
# end
122121
end
123122
end
124123

0 commit comments

Comments
 (0)