lapidarius 4.2.1 → 4.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff76db56666ffeb393cb550d2330e6474c35888cea31272dbf308dd2927d49d8
4
- data.tar.gz: a4d77dac2d72edcd10c1fc65a11865f802c4eb02344612540b0bd0b4e988821a
3
+ metadata.gz: 2488e55a89cec70b1f5e64767a9dad5a916ccdcebdb05fc80e93b21a415ded7d
4
+ data.tar.gz: 56097db72f946f360837592aeab076c69e2a69f7e3c7de125d421552712385ee
5
5
  SHA512:
6
- metadata.gz: d4130674543f11ba5410bd4837f26bc52d0a938066170c7c268870b753b77ef63b865da0038f75ae655267882ba4ed451d8fa0d679823d94bd3cd24953f59cd2
7
- data.tar.gz: c04afafc8ba7dfae4dd7066287d4638c2e942f280851347463630d9f8f29a898bac68ce6b47c2d9b738e9891e3e92ff42b7519efc5742fd9e3e017f7519a1c4f
6
+ metadata.gz: 32a038d2f5da55f6497116641c905ba55b95573a9f10298436235669ff3834f1cd6b071c71ea0e698e63430a8c001b9b1ed2186222d7a15615f46a17367cf981
7
+ data.tar.gz: 0d136c0938988ea1b800ec7e476b0291e8b83cadcfc4f40539167404d2018f6395795bc4d4eb4a798b434e5484dd3b7e13dc418bedbea675c82845d939c1c95d
data/README.md CHANGED
@@ -8,6 +8,7 @@
8
8
  * [Usage](#usage)
9
9
  * [Version](#version)
10
10
  * [Remote](#remote)
11
+ * [Quiet](#quiet)
11
12
 
12
13
  ## Scope
13
14
  This gem is aimed to recursively collect the `runtime dependencies` footprint of the specified gem.
@@ -74,3 +75,11 @@ roda (3.3.0)
74
75
 
75
76
  1 runtime, 10 development
76
77
  ```
78
+
79
+ ### Quiet
80
+ Some gems has several interdependencies that results in a multitude of tree branches.
81
+ In case you just dare to count dependencies without the visual noise, you can pass the `-q` option:
82
+ ```shell
83
+ lapidarius rails -v 5.1.4 -r -q
84
+ 37 runtime, 49 development
85
+ ```
@@ -33,14 +33,14 @@ module Lapidarius
33
33
  private def cut
34
34
  return unless @name
35
35
  gem = cutter.call
36
- @tree::new(gem).to_s
36
+ @tree::new(gem, @quiet).out
37
37
  rescue Gem::NotInstalledError => e
38
38
  e.message
39
39
  end
40
40
 
41
41
  private def parser
42
42
  OptionParser.new do |opts|
43
- opts.banner = %q{Usage: lapidarius sinatra --version=1.4.7 --remote}
43
+ opts.banner = %q{Usage: lapidarius sinatra --version=1.4.7 --remote --quiet}
44
44
 
45
45
  opts.on("-vVERSION", "--version=VERSION", "Specify the gem version to cut") do |version|
46
46
  @version = version
@@ -50,6 +50,10 @@ module Lapidarius
50
50
  @remote = true
51
51
  end
52
52
 
53
+ opts.on("-q", "--quiet", "Hide dependencies tree") do |quiet|
54
+ @quiet = true
55
+ end
56
+
53
57
  opts.on(*HELP_FLAGS, "Prints this help") do
54
58
  @io.puts opts
55
59
  exit
@@ -5,21 +5,27 @@ module Lapidarius
5
5
  NESTED = "├── "
6
6
  STRAIGHT = "│ "
7
7
 
8
- def initialize(gem)
8
+ def initialize(gem, quiet = false)
9
9
  @gem = gem
10
+ @quiet = quiet
10
11
  @out = []
11
12
  end
12
13
 
13
- def to_s
14
+ def out
14
15
  return @out unless @out.empty?
16
+ return count if @quiet
15
17
  @out.tap do |out|
16
18
  out << @gem
17
19
  recurse
18
20
  out << ""
19
- out << "#{@gem.count} runtime, #{@gem.dev_count} development"
21
+ out << count
20
22
  end
21
23
  end
22
24
 
25
+ def count
26
+ "#{@gem.count} runtime, #{@gem.dev_count} development"
27
+ end
28
+
23
29
  private def recurse(gem = @gem, prefix = "")
24
30
  last_index = gem.size - 1
25
31
  gem.each_with_index do |dep, i|
@@ -1,3 +1,3 @@
1
1
  module Lapidarius
2
- VERSION = "4.2.1"
2
+ VERSION = "4.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lapidarius
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.1
4
+ version: 4.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - costajob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-13 00:00:00.000000000 Z
11
+ date: 2018-02-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler