ubi 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 330dfff07aab154b3fc714a71b10cf0f148d541d
4
- data.tar.gz: 81ff08e9a049671a6f2c51c43641007466fa30c3
3
+ metadata.gz: 9a9073e8291c6e092b1f3585191aa4c2c91e524d
4
+ data.tar.gz: ceee4c37c817147c7f4a8f0d4627b3c5108ccbf5
5
5
  SHA512:
6
- metadata.gz: fae80b06b1e6f5bac23357f8b4c09ef45879ba62b4e1e6e90c9e42a16490f7496cc614b27538beaed7d6529d8784fce29a79722e4a351379079cc0e4be6bf1cb
7
- data.tar.gz: 4a4ec085b39e27a0e64addcf9c22fff3a969bdff21a72c8684bcb500451d3c4503eb1935383fd96715dd72257082f4851476b9b2c8d4a26244b6363b9264588b
6
+ metadata.gz: 796e569c777e65d7a8aca7ceb5cb9579fc5f52bfdef22a16cb8b54ec2b48854e0ee207c66d90e2c6bead5fa5622ae328760cf8bad111859059695002871ad6c3
7
+ data.tar.gz: 7791238d12cf001ed5e2d36d86645e42debe21f3a968ed9cc3c21e18636dcba4c1c44ce7714e526f78330827cb812826c3d261f4542a17729799452b75aa996e
data/.travis.yml ADDED
@@ -0,0 +1,13 @@
1
+ language: ruby
2
+ env: CI="travis"
3
+ rvm:
4
+ - 2.2
5
+ - rbx-2
6
+ - jruby-head
7
+ - ruby-head
8
+
9
+ matrix:
10
+ allow_failures:
11
+ - rvm: jruby-head
12
+
13
+ sudo: false
data/Gemfile CHANGED
@@ -9,3 +9,5 @@ gem 'rubocop'
9
9
  gem 'guard'
10
10
  gem 'guard-rspec'
11
11
  gem 'guard-rubocop'
12
+
13
+ gem 'coveralls', require: false
data/Guardfile CHANGED
@@ -11,6 +11,6 @@ guard :rspec, cmd: 'bundle exec rspec' do
11
11
  watch(/^lib\/(.+)\.rb$/) { |m| "spec/#{m[1]}_spec.rb" }
12
12
  watch(/^generators\/(.+)\.rb$/) { |_m| 'spec/schemaless/worker_spec' }
13
13
 
14
- watch('lib/ubi.rb') { 'spec' }
15
- watch('spec/spec_helper.rb') { 'spec' }
14
+ watch('lib/ubi.rb') { 'spec' }
15
+ watch('spec/spec_helper.rb') { 'spec' }
16
16
  end
data/README.md CHANGED
@@ -5,6 +5,14 @@
5
5
  \___/ |_.__/ |_|
6
6
 
7
7
 
8
+
9
+ [![Gem Version](https://badge.fury.io/rb/ubi.svg)](http://badge.fury.io/rb/ubi)
10
+ [![Code Climate](https://codeclimate.com/github/nofxx/ubi.svg)](https://codeclimate.com/github/nofxx/ubi)
11
+ [![Coverage Status](https://coveralls.io/repos/nofxx/ubi/badge.svg?branch=master)](https://coveralls.io/r/nofxx/ubi?branch=master)
12
+ [![Dependency Status](https://gemnasium.com/nofxx/ubi.svg)](https://gemnasium.com/nofxx/ubi)
13
+ [![Build Status](https://travis-ci.org/nofxx/ubi.svg?branch=master)](https://travis-ci.org/nofxx/ubi)
14
+
15
+
8
16
  Ubi finds information in the subject's webpage(s).
9
17
  A forager.
10
18
 
@@ -24,7 +32,7 @@ A forager.
24
32
  - Social
25
33
  - Files
26
34
  - Documents
27
- - Address
35
+ - Addresses
28
36
  - Logo/Images
29
37
 
30
38
 
data/Rakefile CHANGED
@@ -6,4 +6,4 @@ require 'rubocop/rake_task'
6
6
  RSpec::Core::RakeTask.new
7
7
  RuboCop::RakeTask.new
8
8
 
9
- task default: [:spec, :rubocop]
9
+ task default: [:rubocop, :spec]
data/lib/ubi/consultor.rb CHANGED
@@ -38,8 +38,8 @@ module Ubi
38
38
 
39
39
  class << self
40
40
  def inherited(base)
41
- puts "Using aranea #{base}"
42
41
  Ubi.araneas << base
42
+ # puts "Using aranea #{base}"
43
43
  end
44
44
 
45
45
  #
data/lib/ubi/memoria.rb CHANGED
@@ -3,17 +3,21 @@ module Ubi
3
3
  # Memoria Base
4
4
  class Base
5
5
  include ActiveModel::Validations
6
- attr_accessor :value
6
+ attr_accessor :text, :hint, :opts
7
7
 
8
- def initialize(value, aranea = nil, thema = nil)
9
- @value = value
10
- @aranea = aranea
11
- @thema = thema
8
+ def initialize(text, hint = nil, opts = {})
9
+ @text = text
10
+ @hint = hint
11
+ @opts = opts
12
+ parser
13
+ end
14
+
15
+ def parser
16
+ # Implemented on subclasses
12
17
  end
13
18
 
14
- # Format for #to_s
15
19
  def format
16
- value.downcase
20
+ text
17
21
  end
18
22
 
19
23
  def to_s
@@ -26,7 +30,7 @@ module Ubi
26
30
  #
27
31
  def inherited(base)
28
32
  fail "Already defined #{base.key}" if Ubi.memorias.include?(base)
29
- puts "With memoria #{base}"
33
+ # puts "With memoria #{base}"
30
34
  Ubi.memorias << base
31
35
  end
32
36
 
@@ -34,17 +38,31 @@ module Ubi
34
38
  case datum
35
39
  when String then datum
36
40
  when Nokogiri::HTML then datum.data.text
41
+ # when PDF / DOC / IMG (tesseract it =) then datum.data.text
37
42
  else fail "Can't parse `#{datum.class}`"
38
43
  end
39
44
  end
40
45
 
41
- def parse(datum)
42
- fail "Not implemented by #{self}" unless regex
43
- extract_text(datum).scan(regex).map { |r| new(r.first) }
46
+ #
47
+ # Scan for memoria regex and map to new memoria if found
48
+ #
49
+ # @returns Array [Memoria, Memoria...]
50
+ def parse(datum, hint = :br)
51
+ fail "Not implemented by #{self}" unless defined?(:regex)
52
+ extract_text(datum).scan(regex(hint))
53
+ .map { |r| new(r.first, hint) }
54
+ end
55
+
56
+ # Scans and removes matches from original
57
+ #
58
+ def parse!(datum, hint = :br)
59
+ res = parse(datum, hint)
60
+ res.each { |m| datum.tap { |d| d.slice!(m.text) }.strip! }
61
+ res
44
62
  end
45
63
 
46
64
  #
47
- # Human-readable name of the aranea
65
+ # Machine-readable name of this class
48
66
  #
49
67
  def key
50
68
  @key ||= to_s.split('::').last.downcase.to_sym
@@ -52,7 +70,7 @@ module Ubi
52
70
  end
53
71
 
54
72
  #
55
- # Human-readable name of the aranea
73
+ # Human-readable name of this class
56
74
  #
57
75
  def name
58
76
  to_s.split('::').last
@@ -1,15 +1,24 @@
1
1
  module Ubi
2
2
  module Memoria
3
- # An adress in this world
3
+ # An address in this world
4
+ #
5
+ # Ignorace < Bliss
6
+ #
7
+ # Yeah, this needs lots of work.
8
+ # Geonames in memory country with zip/cities and regions,
9
+ # and some neural thing. And geocode to use openstreet or else.
10
+ #
11
+ # Don't hesitate to improve your AI skills here.
12
+ #
4
13
  class Address < Base
5
- DIVIDERS = /[,\-\|\/]/
14
+ DIVIDERS = %r{[,\-\|/]}
6
15
  SPLIT = /(?<=\D)#{DIVIDERS}|#{DIVIDERS}(?=\D)/
7
16
  REGEXES = {
8
17
  br: {
9
- prefix: %w( r rua av avenida pça praça pc pca praca tv travessa est estrada rod rodovia ),
18
+ prefix: %w( r rua av avenida pc pca praça pc pca praca tv travessa est estrada rod rodovia ),
10
19
  number: %w( n no nº num numero km ),
11
- ext: %w( comp obs ap apto apart apartamento andar ),
12
- zip: /\d{5}[-]\d{3}/
20
+ ext: %w( comp obs ap apto apart apartamento andar ),
21
+ zip: /\d{5}\s?[-]\s?\d{3}/
13
22
  },
14
23
  us: {
15
24
  prefix: %w( st street av avenue road ),
@@ -18,23 +27,33 @@ module Ubi
18
27
  }
19
28
 
20
29
  attr_accessor :name, :parts, :words, :zip, :place, :number,
21
- :city, :region, :nation, :extra
30
+ :city, :region, :nation, :extra, :clean
31
+
32
+ def parse_zip
33
+ @zip = text.scan(REGEXES[:br][:zip]).first
34
+ return unless zip
35
+ @zip = zip.gsub(/\D/, '').sub(*Address.zip_format[:br])
36
+ clean.slice!(zip)
37
+ end
38
+
39
+ def fetch_possible
40
+ parse_zip
41
+ @region = clean.scan(/\W([A-Z]{2})\W/).first.first
42
+ @number = clean.scan(/\d+/).join(' ')
43
+ end
22
44
  #
23
45
  #
24
46
  # Init, remove non word chars
25
47
  #
26
- def initialize(val, _location = :br)
27
- @value = Address.sanitize(val)
28
- # @zip = value.match(REGEXES[location][:zip])
29
- # @region = value.match(/\W([A-Z]{2})\W/)[1]
30
- # @number = value.match(/\w*\d+\w*/)
31
-
32
- @parts = value.split(SPLIT).map { |v| v.strip.chomp }
48
+ def parser
49
+ @clean = Address.sanitize(text)
50
+ @parts = clean.split(SPLIT).map { |v| v.strip.chomp }
33
51
  @words = parts.map { |pt| pt.split(/\s+/) }
52
+ fetch_possible
34
53
  end
35
54
 
36
55
  def format(location = :br)
37
- value.sub(*self.class.formats[location])
56
+ text.sub(*self.class.formats[location])
38
57
  end
39
58
 
40
59
  class << self
@@ -45,8 +64,9 @@ module Ubi
45
64
  # "\n" -> "-"
46
65
  # " -" -> "-"
47
66
  #
48
- def sanitize(value)
49
- value.gsub(/\s+/, ' ').gsub(/\\n/, '-')
67
+ def sanitize(txt)
68
+ v = ActiveSupport::Inflector.transliterate(txt)
69
+ v.gsub(/\s+/, ' ').gsub(/\\n/, '-')
50
70
  .gsub(/\s?(#{DIVIDERS})\s?/, '\1')
51
71
  end
52
72
 
@@ -58,8 +78,14 @@ module Ubi
58
78
  }
59
79
  end
60
80
 
61
- def regex
62
- /((?:#{REGEXES[:br][:prefix].join('|')}).*)/i
81
+ def zip_format
82
+ {
83
+ br: [/(\d{5})(\d{3})/, '\1-\2']
84
+ }
85
+ end
86
+
87
+ def regex(hint)
88
+ /((?:#{REGEXES[hint][:prefix].join('|')}).*)/i
63
89
  end
64
90
 
65
91
  def plural
@@ -9,16 +9,14 @@ module Ubi
9
9
  # cl: RUN/RUT
10
10
  #
11
11
  class Document < Base
12
- #
13
- #
14
- # Init, remove non word chars
15
- #
16
- def initialize(value)
17
- @value = value.gsub(/\W/, '')
12
+ attr_reader :number
13
+
14
+ def parser
15
+ @number = text.gsub(/\D/, '')
18
16
  end
19
17
 
20
18
  def format(location = :br)
21
- value.sub(*self.class.formats[location])
19
+ number.sub(*self.class.formats[location])
22
20
  end
23
21
 
24
22
  #
@@ -27,7 +25,7 @@ module Ubi
27
25
  class << self
28
26
  def regexes
29
27
  {
30
- br: /(\d{14}|\d{2}\.?\d{3}\.?\d{3}\/?\d{4}[-]?\d{2})/,
28
+ br: /(\d{14}|\d{2}\.?\d{3}\.?\d{3}\/?\d{4}\-?\d{2})/,
31
29
  cl: /\d{2}\.\d{3}\.\d{3}[-][0-9kK]/,
32
30
  us: /\d{3}[-]\d{2}[-]\d{4}/
33
31
  }
@@ -10,8 +10,13 @@ module Ubi
10
10
  #
11
11
  # Email regex
12
12
  #
13
- def regex
14
- %r{([a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)} # rubocop:disable Metrics/LineLength
13
+ def regex(_hint)
14
+ %r{
15
+ ([a-z0-9!#$%&'*+/=?^_`{|}~-]+
16
+ (?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@
17
+ (?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+
18
+ (?:[a-z0-9-]*[a-z0-9])?)
19
+ }x
15
20
  end
16
21
  end
17
22
  end
@@ -2,19 +2,13 @@ module Ubi
2
2
  module Memoria
3
3
  # A Phone! mobile? landline? who is calling???
4
4
  class Phone < Base
5
- attr_reader :number, :chunk
5
+ attr_reader :number
6
6
 
7
- def initialize(chunk, hint = nil)
8
- @hint = hint
9
- @chunk = chunk
10
- parse_number
7
+ def parser
8
+ @number = Phonelib.parse(text.gsub(/\D/, ''), hint)
11
9
  end
12
10
 
13
- def parse_number
14
- @number = Phonelib.parse(chunk.gsub(/\D/, ''), @hint)
15
- end
16
-
17
- def to_s
11
+ def format
18
12
  number && number.national
19
13
  end
20
14
 
@@ -24,10 +18,14 @@ module Ubi
24
18
 
25
19
  class << self
26
20
  # http://rubular.com/r/tEHB6KcZzk
27
- def regex
28
- /(?:^|\s)((?:\+\(?\d{1,3}\W)?[\._\-\/\s]*\(?\s*?\d{2,3}\s*?\)?[\._\-\/\s]*\d{3,5}[\._\-\/\s]*\d{4,5})(?:\s|$)/
21
+ def regex(hint = nil)
22
+ /
23
+ (?:^|\s)((?:\+\(?\d{1,3}\W)?[\._\-\/\s]*
24
+ \(?\s*?\d{2,3}\s*?\)?[\._\-\/\s]*\d{3,5}
25
+ [\._\-\/\s]*\d{4,5})(?:\s|$)
26
+ /x
29
27
  end
30
28
  end
31
- end
32
- end
33
- end
29
+ end # Phone
30
+ end # Memoria
31
+ end # Ubi
@@ -5,19 +5,31 @@ module Ubi
5
5
  #
6
6
  # Prefix http:// if there isn't one defined
7
7
  def format
8
- value =~ /http/ ? value : "http://#{value}"
8
+ text =~ /^http/ ? text : "http://#{text}"
9
9
  end
10
10
 
11
11
  class << self
12
12
  #
13
13
  # Regex only for *.tld
14
- def regex
15
- # %r{https?://((?:\w+[\./]?)+)(?:/|\.)}
16
- # (?:\??)[a-zA-Z0-9\-\._\?\,\'\/\\\+&%\$#\=~]+
17
- # %r{(?:https?\://)?(?:www\.)?[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}}
18
- # ((?:https\:\/\/)|(?:http\:\/\/)|(?:www\.))?([a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(?:\??)[a-zA-Z0-9\-\._\?\,\'\/\\\+&%\$#\=~]+)
19
- # http://www.regexr.com/3bkne
20
- /([(https?):\/\/(www\.)?a-zA-Z0-9@:%\._\+~#=]{2,256}\.[a-z]{2,6}\b(?:[-a-zA-Z0-9@:%_\+.~#?&\/\/?=]*))/
14
+ # %r{https?://((?:\w+[\./]?)+)(?:/|\.)}
15
+ # (?:\??)[a-zA-Z0-9\-\._\?\,\'\/\\\+&%\$#\=~]+
16
+ #
17
+ # %r{(?:https?\://)?(?:www\.)?[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}}
18
+ #
19
+ # ((?:https\:\/\/)|(?:http\:\/\/)|(?:www\.))?([a-zA-Z0-9\-\.]+\.
20
+ # [a-zA-Z]{2,3}(?:\??)[a-zA-Z0-9\-\._\?\,\'\/\\\+&%\$#\=~]+)
21
+ #
22
+ # http://www.regexr.com/3bkne
23
+ # /([(https?):\/\/(www\.)?a-zA-Z0-9:@%\._\+~#=]{2,256}\.[a-z]{2,6}\b
24
+ # (?:[-a-zA-Z0-9@:%_\+.~#?&\/\/?=]*))/
25
+ #
26
+ # without @
27
+ def regex(_hint)
28
+ %r{
29
+ ([(https?)://(www\.)?a-zA-Z0-9:%\._\+~#=]{2,256}
30
+ \.[a-z]{2,6}\b
31
+ (?:[-a-zA-Z0-9@:%_\+.~#?&//?=]*))
32
+ }x
21
33
  end
22
34
 
23
35
  def key
data/lib/ubi/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  # :nodoc:
2
2
  module Ubi
3
- VERSION = '0.0.3'
3
+ VERSION = '0.0.5'
4
4
  end
data/spec/spec_helper.rb CHANGED
@@ -3,6 +3,8 @@ require 'paint'
3
3
  require 'pry'
4
4
  require 'vcr'
5
5
  require 'webmock/rspec'
6
+ require 'coveralls'
7
+ Coveralls.wear!
6
8
 
7
9
  $LOAD_PATH.unshift(File.dirname(__FILE__))
8
10
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
@@ -2,13 +2,13 @@ require 'spec_helper'
2
2
 
3
3
  describe Memoria::Address do
4
4
  [
5
- 'R Bahia,55 - Una/BR - 12345-678',
6
- 'R Bahia,55 - Una/BR - 12345- 678',
7
- 'R Bahia, 55 - Una/BR - 12345-678',
8
- 'R Bahia, 55 - Una/BR - 12345-678',
9
- 'R Bahia, 55 / Una/BR - 12345-678',
10
- 'R Bahia, 55 \n Una/BR \n 12345-678',
11
- 'R Bahia, 55, Una/BR - 12345-678'
5
+ 'R Bahia,55 - Una/BA - 12345-678',
6
+ 'R Bahia,55 - Una/BA - 12345- 678',
7
+ 'R Bahia, 55 - Una/BA - 12345-678',
8
+ 'R Bahia, 55 - Una/BA - 12345-678',
9
+ 'R Bahia, 55 / Una/BA - 12345-678',
10
+ 'R Bahia, 55 \n Una/BA \n 12345-678',
11
+ 'R Bahia, 55, Una/BA - 12345-678'
12
12
  ].each do |chunk|
13
13
  describe "simple delimited `#{chunk}`" do
14
14
  subject { Memoria::Address.parse(chunk) }
@@ -22,14 +22,14 @@ describe Memoria::Address do
22
22
 
23
23
  it { expect(addr.zip.to_s).to eq('12345-678') }
24
24
  it { expect(addr.number.to_s).to eq('55') }
25
- it { expect(addr.region.to_s).to eq('BR') }
25
+ it { expect(addr.region.to_s).to eq('BA') }
26
26
 
27
27
  it 'should split into parts' do
28
- expect(addr.parts).to eq(['R Bahia', '55', 'Una', 'BR', '12345-678'])
28
+ expect(addr.parts).to eq(['R Bahia', '55', 'Una', 'BA', '12345-678'])
29
29
  end
30
30
 
31
31
  it 'should split into words' do
32
- expect(addr.words).to eq([%w(R Bahia), ['55'], ['Una'], ['BR'], ['12345-678']])
32
+ expect(addr.words).to eq([%w(R Bahia), ['55'], ['Una'], ['BA'], ['12345-678']])
33
33
  end
34
34
  end
35
35
  end
@@ -6,6 +6,10 @@ describe Memoria::Email do
6
6
 
7
7
  it { is_expected.to include(Memoria::Email) }
8
8
  it { is_expected.to be_an Array }
9
+
10
+ it 'should have text reader method' do
11
+ expect(subject[0].text).to eq('me@somesite.com')
12
+ end
9
13
  end
10
14
 
11
15
  describe 'valid' do
@@ -5,6 +5,28 @@ describe Memoria::Phone do
5
5
  subject { Memoria::Phone.new('+551112345678') }
6
6
 
7
7
  it { is_expected.to be_a Memoria::Phone }
8
+
9
+ it 'should have text reader method' do
10
+ expect(subject.text).to eq('+551112345678')
11
+ end
12
+
13
+ it 'should have text reader method' do
14
+ expect(subject.number).to be_a Phonelib::Phone
15
+ end
16
+ end
17
+
18
+ describe 'ill formated simple test' do
19
+ subject { Memoria::Phone.new('+55(11) 1234-5678') }
20
+
21
+ it { is_expected.to be_a Memoria::Phone }
22
+
23
+ it 'should have text reader method' do
24
+ expect(subject.text).to eq('+55(11) 1234-5678')
25
+ end
26
+
27
+ it 'should have text reader method' do
28
+ expect(subject.number).to be_a Phonelib::Phone
29
+ end
8
30
  end
9
31
 
10
32
  describe 'parsed landlines' do
@@ -26,7 +48,7 @@ describe Memoria::Phone do
26
48
  Memoria::Phone.parse(phone).first.rfc
27
49
  end
28
50
 
29
- let(:parsed) { '+11998145678' }
51
+ let(:parsed) { '+55 11 99814-5678' }
30
52
 
31
53
  load_fixture('mobile.txt').each_line do |l|
32
54
  it "Should parse phone #{l}" do
@@ -40,7 +62,7 @@ describe Memoria::Phone do
40
62
  Memoria::Phone.parse(phone).first.rfc
41
63
  end
42
64
 
43
- let(:parsed) { '+11982345678' }
65
+ let(:parsed) { '+55 11 98234-5678' }
44
66
 
45
67
  it { expect(parse('11982345678')).to eq(parsed) }
46
68
  it { expect(parse('11 982345678')).to eq(parsed) }
@@ -2,10 +2,14 @@ require 'spec_helper'
2
2
 
3
3
  describe Memoria::Site do
4
4
  describe 'simple test' do
5
- subject { Memoria::Site.parse('bla bla me@somesite.com') }
5
+ subject { Memoria::Site.parse('bla bla somesite.com') }
6
6
 
7
7
  it { is_expected.to include(Memoria::Site) }
8
8
  it { is_expected.to be_an Array }
9
+
10
+ it 'should have text reader method' do
11
+ expect(subject[0].text).to eq('somesite.com')
12
+ end
9
13
  end
10
14
 
11
15
  describe 'parsed' do
@@ -17,8 +21,8 @@ describe Memoria::Site do
17
21
  let(:parsed) { 'http://fubah.com' }
18
22
 
19
23
  it { expect(parse('fubah.com')).to eq(parsed) }
20
- it { expect(parse('@fubah.com')).to eq('http://@fubah.com') }
21
- it { expect(parse('fu@fubah.com')).to eq('http://fu@fubah.com') }
24
+ it { expect(parse('@fubah.com')).to eq(parsed) } # 'http://@fubah.com') }
25
+ it { expect(parse('fu@fubah.com')).to eq(parsed) } # 'http://fu@fubah.com') }
22
26
  it { expect(parse('http://fubah.com')).to eq(parsed) }
23
27
  it { expect(parse('http://fubah.com/56')).to eq(parsed + '/56') }
24
28
  end
data/ubi.gemspec CHANGED
@@ -22,13 +22,12 @@ Gem::Specification.new do |s|
22
22
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
23
23
  s.require_paths = ['lib']
24
24
 
25
- s.add_dependency 'thor' #, '~> 0.19.1'
26
- s.add_dependency 'paint' #, '~> 0.9.0'
25
+ s.add_dependency 'thor'
26
+ s.add_dependency 'paint'
27
27
  s.add_dependency 'phonelib'
28
- # s.add_dependency 'phonie', '~> 3.1.0'
29
- # s.add_dependency 'addressie', '~> 0.0.0'
30
- s.add_dependency 'polipus' #, '~> 0.4.0'
31
- s.add_dependency 'nokogiri' #, '~> 1.6.0'
28
+ # s.add_dependency 'addressie', '~> 0.0.0'
29
+ s.add_dependency 'polipus'
30
+ s.add_dependency 'nokogiri'
32
31
  s.add_dependency 'geopolitical'
33
32
 
34
33
  s.add_development_dependency 'vcr'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ubi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcos Piccinini
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-21 00:00:00.000000000 Z
11
+ date: 2015-08-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -145,6 +145,7 @@ extra_rdoc_files: []
145
145
  files:
146
146
  - ".gitignore"
147
147
  - ".rspec"
148
+ - ".travis.yml"
148
149
  - Gemfile
149
150
  - Guardfile
150
151
  - MIT-LICENSE