10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/bundler/diff/cli.rb', line 10
def run(args=ARGV)
Bundler.ui = Bundler::UI::Shell.new
gem_name = args.first
error('gem name required') unless gem_name
installed_spec = installed_specs[gem_name]
error('gem spec not found') unless installed_spec
Dir.mktmpdir do |tmp_dir|
gem_spec = fetch(gem_name, tmp_dir)
unpack(gem_spec, tmp_dir)
tool = Bundler::Diff::Tool.new
tool.a_dir = Pathname(installed_spec.gem_dir)
tool.a_output_dir = Pathname(installed_spec.full_name)
tool.b_dir = Pathname(tmp_dir).join(gem_spec.full_name)
tool.b_output_dir = Pathname(gem_spec.full_name)
tool.diff_entries
end
end
|