aboutsummaryrefslogtreecommitdiffstats
path: root/lib/bundler
diff options
context:
space:
mode:
authorHomu <homu@barosl.com>2016-02-27 07:48:21 +0900
committerHomu <homu@barosl.com>2016-02-27 07:48:21 +0900
commitf819834287274aa78d0fd03ac5685cf543cd68e4 (patch)
treefb8f1c68db281827f5d468aa3351f92995617c61 /lib/bundler
parent4786adb75e2e2fec2dde60618b53132ef7b03cdb (diff)
parent49744f57a175dc5d71b380c17d460cbb9a71b046 (diff)
downloadbundler-f819834287274aa78d0fd03ac5685cf543cd68e4.tar.gz
Auto merge of #4304 - mobilutz:master, r=indirect
Bundle Viz : Options without can have multiple values I wanted to only have one 'environment' when calling `bundle viz`. There is the options `--without`, but passing two arguments or some other form of array was not possible. Maybe this is not the best solution. But it works for me. The format for the option is `--without=development,test`.
Diffstat (limited to 'lib/bundler')
-rw-r--r--lib/bundler/cli.rb12
-rw-r--r--lib/bundler/cli/viz.rb3
2 files changed, 9 insertions, 6 deletions
diff --git a/lib/bundler/cli.rb b/lib/bundler/cli.rb
index 0bd82fd1..e652bfd6 100644
--- a/lib/bundler/cli.rb
+++ b/lib/bundler/cli.rb
@@ -359,14 +359,14 @@ module Bundler
Viz requires the ruby-graphviz gem (and its dependencies).
The associated gems must also be installed via 'bundle install'.
D
- method_option :file, :type => :string, :default => "gem_graph", :aliases => "-f", :banner => "The name to use for the generated file. see format option"
- method_option :format, :type => :string, :default => "png", :aliases => "-F", :banner => "This is output format option. Supported format is png, jpg, svg, dot ..."
- method_option :requirements, :type => :boolean, :default => false, :aliases => "-r", :banner => "Set to show the version of each required dependency."
- method_option :version, :type => :boolean, :default => false, :aliases => "-v", :banner => "Set to show each gem version."
- method_option :without, :type => :array, :default => [], :banner => "Exclude gems that are part of the specified named group."
+ method_option :file, :type => :string, :default => "gem_graph", :aliases => "-f", :desc => "The name to use for the generated file. see format option"
+ method_option :format, :type => :string, :default => "png", :aliases => "-F", :desc => "This is output format option. Supported format is png, jpg, svg, dot ..."
+ method_option :requirements, :type => :boolean, :default => false, :aliases => "-R", :desc => "Set to show the version of each required dependency."
+ method_option :version, :type => :boolean, :default => false, :aliases => "-v", :desc => "Set to show each gem version."
+ method_option :without, :type => :array, :default => [], :aliases => "-W", :banner => "GROUP[ GROUP...]", :desc => "Exclude gems that are part of the specified named group."
def viz
require "bundler/cli/viz"
- Viz.new(options).run
+ Viz.new(options.dup).run
end
desc "gem GEM [OPTIONS]", "Creates a skeleton for creating a rubygem"
diff --git a/lib/bundler/cli/viz.rb b/lib/bundler/cli/viz.rb
index 7ccd306d..75e6afff 100644
--- a/lib/bundler/cli/viz.rb
+++ b/lib/bundler/cli/viz.rb
@@ -8,7 +8,10 @@ module Bundler
def run
require "graphviz"
+
+ options[:without] = options[:without].join(":").tr(" ", ":").split(":")
output_file = File.expand_path(options[:file])
+
graph = Graph.new(Bundler.load, output_file, options[:version], options[:requirements], options[:format], options[:without])
graph.viz
rescue LoadError => e