lapidarius 1.1.1 → 1.1.2

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
  SHA1:
3
- metadata.gz: 40800d3cd49f89661c23363ef7bcfdc3112ddf4b
4
- data.tar.gz: a5b9d8fd67272554ef60f723a91dbaaf7362d01e
3
+ metadata.gz: bc529e64e9c5693eca47ce81baee9aae6cee787f
4
+ data.tar.gz: e0a4085328266748fb2f53c164de05615ffebe84
5
5
  SHA512:
6
- metadata.gz: 38245912b46c93cd1a26598b53ba0e2cf45d2b2d9f65e0d2c20bbb6530cbb841e8bcf9548730f5e9a4a152e5a56b09420fcfed4ad510560172b9cb2804b928ac
7
- data.tar.gz: 52b8ae0e1254a42e230f85ae438999f134e25aecdebaeae0fe3a6248c775b802c0a84389a359e89d68fee109685180b7b0e1f5800972893cdf824b478343d6fc
6
+ metadata.gz: 127adee3a7d16c287907a4a8cce96e8866b79f2b3517f273dc775e5230de51449d633a03532165aff5ad39c66f51c99dbe19a53e0e8b3ffa16adf5d1b27c3801
7
+ data.tar.gz: 48fc3a000d4eb78628cd94a7305a1005e4d0b90ef8d52ff4ac8f1053b46e23695e3c02213889c7087b6f137208ac5165ec944763e97cae458025584a2e81bc8d
@@ -1,4 +1,5 @@
1
1
  require "optparse"
2
+ require "lapidarius/version"
2
3
  require "lapidarius/cutter"
3
4
  require "lapidarius/renderer"
4
5
 
@@ -15,9 +16,11 @@ module Lapidarius
15
16
 
16
17
  def call(cmd_klass = Command)
17
18
  parser.parse!(@args)
18
- fail NoGemError, "please specify the name of an installed gem!" unless @gem
19
+ fail NoGemError, "please specify the name of a gem: '-g gem_name'" unless @gem
19
20
  gem = cutter(cmd_klass).call
20
21
  renderer(gem).call(@io)
22
+ rescue Gem::NotInstalledError => e
23
+ @io.puts e.message.sub("specified", @gem)
21
24
  end
22
25
 
23
26
  private def parser
@@ -32,6 +35,11 @@ module Lapidarius
32
35
  @recursive = recursive
33
36
  end
34
37
 
38
+ opts.on("-v", "--version", "Print library version") do
39
+ @io.puts VERSION
40
+ exit
41
+ end
42
+
35
43
  opts.on("-h", "--help", "Prints this help") do
36
44
  @io.puts opts
37
45
  exit
@@ -1,14 +1,18 @@
1
1
  module Lapidarius
2
2
  class Gem
3
3
  class KindError < ArgumentError; end
4
+ class NotInstalledError < ArgumentError; end
4
5
 
5
6
  LEVEL_DEPTH = 5
6
7
 
7
- def self.factory(name)
8
- name.match(/Gem ([a-z0-9\-_]+)-(.+)/) do |m|
8
+ def self.factory(token)
9
+ token.match(/^No gems found matching/) do |m|
10
+ fail NotInstalledError, "no version of specified gem is installed!"
11
+ end
12
+ token.match(/Gem ([a-z0-9\-_]+)-(.+)/) do |m|
9
13
  return new(name: m[1], version: m[2])
10
14
  end
11
- name.match(/([a-z0-9\-_]+) \(([0-9~<>=, \.]+)\)/) do |m|
15
+ token.match(/([a-z0-9\-_]+) \(([0-9~<>=, \.]+)\)/) do |m|
12
16
  return new(name: m[1], version: m[2])
13
17
  end
14
18
  end
@@ -1,3 +1,3 @@
1
1
  module Lapidarius
2
- VERSION = "1.1.1"
2
+ VERSION = "1.1.2"
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: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - costajob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-23 00:00:00.000000000 Z
11
+ date: 2016-09-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler