google_maps_geocoder 0.3.1 → 0.4.0.pre1

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,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- N2IzNjAyZDM5YWVlOWM3YjM0NTQ0Yjk4ZWU3NWNiYjk2NDBiOTliYw==
5
- data.tar.gz: !binary |-
6
- NDA3NGI5YmFkZmQ3ZmI1NjExOTU4N2UwOTMyZGU5M2Q0N2RhMTJmMw==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- ZGFiNmM3MDg0Y2FmZDMwMjBiOTFkOTA5MmQ5NTU1ZGQ1NWMxMjgxMDJmODVm
10
- Y2ExNTIwZGY4M2ZiZDIwYmRhYmZlY2M4NGNmNDY4OWJjYmZkODA2Y2NlY2M5
11
- ZDAzZmY2YThmYzhjZTM3MmZmOWEyY2M1ZWJlODQ4MGE0N2YyYjQ=
12
- data.tar.gz: !binary |-
13
- ZDNhMzgyOWQzODE5NDk1NDdlZGQ5MzZlZTRjNTYxNzMyMTIzNDcyMTg3Nzgw
14
- NjMyNjI2ZTFhOGY2YmVlYjA2N2Y3Y2NjNDhjMmFhZDhiZTgzOTZhN2RjMzE0
15
- NDhlMDdhYmRiNGNhMmE1YjJhMDU0NWU3ZDQyMWUxMWQzMjM2OTA=
2
+ SHA1:
3
+ metadata.gz: 843c384bc9a07abcd15c8d310bced7b1fc80c979
4
+ data.tar.gz: 3336c894ba548664bcfb7f5b2ef91aed785fff21
5
+ SHA512:
6
+ metadata.gz: fe1386c06d1bfedea6c5be18de70bd95455cda8778615f918d21bc7991ec197c5aee9bd8525bea23b520b8c00cd734c9a42aad68d5331277623eedb25569928f
7
+ data.tar.gz: 105330f683835366620945bc14dd2b2118f9f3bc07a1d97f8445f5660152a919ec565c23196c1bf842b1c89ceb6f53e65f55af8f207780c7bcf7b8cdd1963fbd
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-1.9.3-p385
1
+ 2.2.2
data/.travis.yml CHANGED
@@ -1,3 +1,6 @@
1
+ sudo: false
1
2
  rvm:
2
- - 1.9.3
3
- - 2.0.0
3
+ - 2.0.0
4
+ script:
5
+ - bundle exec rake
6
+ - bundle exec rubocop
data/Gemfile CHANGED
@@ -1,2 +1,2 @@
1
1
  source 'http://rubygems.org'
2
- gemspec
2
+ gemspec
data/README.md CHANGED
@@ -1,25 +1,25 @@
1
- # GoogleMapsGeocoder [![Code Climate](https://codeclimate.com/github/ivanoblomov/google_maps_geocoder.png)](https://codeclimate.com/github/ivanoblomov/google_maps_geocoder) [![Build Status](https://secure.travis-ci.org/ivanoblomov/google_maps_geocoder.png)](http://travis-ci.org/ivanoblomov/google_maps_geocoder) [![Dependency Status](https://gemnasium.com/ivanoblomov/google_maps_geocoder.png)](https://gemnasium.com/ivanoblomov/google_maps_geocoder)
1
+ # GoogleMapsGeocoder
2
+
3
+ [![Gem Version](https://badge.fury.io/rb/google_maps_geocoder.svg)](http://badge.fury.io/rb/google_maps_geocoder)
4
+ [![Code Climate](https://codeclimate.com/github/ivanoblomov/google_maps_geocoder.png)](https://codeclimate.com/github/ivanoblomov/google_maps_geocoder)
5
+ [![Coverage Status](https://coveralls.io/repos/ivanoblomov/google_maps_geocoder/badge.svg?branch=master&service=github)](https://coveralls.io/github/ivanoblomov/google_maps_geocoder?branch=master)
6
+ [![Build Status](https://secure.travis-ci.org/ivanoblomov/google_maps_geocoder.png)](http://travis-ci.org/ivanoblomov/google_maps_geocoder)
7
+ [![Dependency Status](https://gemnasium.com/ivanoblomov/google_maps_geocoder.png)](https://gemnasium.com/ivanoblomov/google_maps_geocoder)
2
8
 
3
9
  A simple PORO wrapper for geocoding with Google Maps.
4
10
 
5
11
  ## Installation
6
12
 
7
- In <b>Rails 3</b>, add this to your Gemfile and run "bundle":
13
+ Add GoogleMapsGeocoder to your Gemfile and run `bundle`:
8
14
 
9
15
  ```ruby
10
16
  gem 'google_maps_geocoder'
11
17
  ```
12
18
 
13
- In <b>Rails 2</b>, add this to your environment.rb file:
14
-
15
- ```ruby
16
- config.gem 'google_maps_geocoder'
17
- ```
18
-
19
- Or try it out in <b>irb</b> with:
19
+ Or try it out in `irb` with:
20
20
 
21
21
  ```ruby
22
- require './lib/google_maps_geocoder'
22
+ require './lib/google_maps_geocoder/google_maps_geocoder'
23
23
  ```
24
24
 
25
25
  ## Ready to Go in One Step
@@ -76,6 +76,14 @@ The complete, hopefully self-explanatory, API is:
76
76
  * state_long_name
77
77
  * state_short_name
78
78
 
79
+ ## Google Maps API Key (Optional)
80
+
81
+ To have GoogleMapsGeocoder use your Google Maps API key, set it as an environment variable:
82
+
83
+ ```bash
84
+ export GOOGLE_MAPS_API_KEY=[your key]
85
+ ```
86
+
79
87
  ## Contributing to google_maps_geocoder
80
88
 
81
89
  * Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
data/Rakefile CHANGED
@@ -5,4 +5,4 @@ RSpec::Core::RakeTask.new(:test) do |t|
5
5
  t.pattern = 'spec/*/*_spec.rb'
6
6
  t.verbose = false
7
7
  end
8
- task :default => :test
8
+ task default: :test
@@ -1,21 +1,25 @@
1
- require File.expand_path '../lib/version', __FILE__
1
+ require File.expand_path '../lib/google_maps_geocoder/version', __FILE__
2
2
  Gem::Specification.new do |s|
3
- s.name = "google_maps_geocoder"
3
+ s.name = 'google_maps_geocoder'
4
4
  s.version = GoogleMapsGeocoder::VERSION.dup
5
- s.summary = "A simple PORO wrapper for geocoding with Google Maps."
6
- s.description = "Geocode a location without worrying about parsing Google Maps' response. GoogleMapsGeocoder wraps it in a plain-old Ruby object."
7
- s.homepage = "http://github.com/ivanoblomov/google_maps_geocoder"
8
- s.authors = ["Roderick Monje"]
5
+ s.summary = 'A simple PORO wrapper for geocoding with Google Maps.'
6
+ s.description = 'Geocode a location without worrying about parsing Google '\
7
+ "Maps' response. GoogleMapsGeocoder wraps it in a plain-old "\
8
+ 'Ruby object.'
9
+ s.homepage = 'http://github.com/ivanoblomov/google_maps_geocoder'
10
+ s.authors = ['Roderick Monje']
9
11
 
12
+ s.add_development_dependency 'coveralls', '>= 0'
10
13
  s.add_development_dependency 'rake', '>= 0'
11
14
  s.add_development_dependency 'rspec', '>= 0'
12
- s.add_development_dependency 'simplecov', '>= 0'
15
+ s.add_development_dependency 'rubocop', '>= 0'
13
16
 
14
17
  s.add_runtime_dependency 'activesupport', '>= 0'
15
18
  s.add_runtime_dependency 'rack', '>= 0'
16
19
 
17
- s.files = `git ls-files`.split "\n"
18
- s.test_files = `git ls-files -- {test,spec,features}/*`.split "\n"
19
- s.executables = `git ls-files -- bin/*`.split("\n").map{|f| File.basename f}
20
- s.require_paths = ["lib"]
21
- end
20
+ s.files = `git ls-files`.split "\n"
21
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split "\n"
22
+ s.executables = `git ls-files -- bin/*`.split("\n")
23
+ .map { |f| File.basename f }
24
+ s.require_paths = ['lib']
25
+ end
@@ -3,15 +3,28 @@ require 'logger'
3
3
  require 'net/http'
4
4
  require 'rack'
5
5
 
6
+ # A simple PORO wrapper for geocoding with Google Maps.
6
7
  class GoogleMapsGeocoder
8
+ GOOGLE_ADDRESS_SEGMENTS = %i(
9
+ city country_long_name country_short_name county lat lng postal_code
10
+ state_long_name state_short_name
11
+ ).freeze
12
+ GOOGLE_API_URI = 'https://maps.googleapis.com/maps/api/geocode/json'.freeze
13
+
14
+ ALL_ADDRESS_SEGMENTS = (
15
+ GOOGLE_ADDRESS_SEGMENTS + %i(
16
+ formatted_address formatted_street_address
17
+ )
18
+ ).freeze
19
+
7
20
  # Returns the complete formatted address with standardized abbreviations.
8
21
  attr_reader :formatted_address
9
22
  # Returns the formatted street address with standardized abbreviations.
10
23
  attr_reader :formatted_street_address
11
24
  # Self-explanatory
12
- attr_reader :city, :country_long_name, :country_short_name, :county, :lat, :lng, :postal_code, :state_long_name, :state_short_name
25
+ attr_reader(*GOOGLE_ADDRESS_SEGMENTS)
13
26
 
14
- # Instance Methods: Overrides ====================================================================
27
+ # Instance Methods: Overrides ================================================
15
28
 
16
29
  # Geocodes the specified address and wraps the results in a geocoder object.
17
30
  #
@@ -23,16 +36,19 @@ class GoogleMapsGeocoder
23
36
  #
24
37
  # white_house = GoogleMapsGeocoder.new('1600 Pennsylvania Washington')
25
38
  # white_house.formatted_address
26
- # => "1600 Pennsylvania Avenue Northwest, President's Park, Washington, DC 20500, USA"
27
- def initialize data
39
+ # => "1600 Pennsylvania Avenue Northwest, President's Park,
40
+ # Washington, DC 20500, USA"
41
+ def initialize(data)
28
42
  @json = data.is_a?(String) ? json_from_url(data) : data
29
- raise "Geocoding \"#{data}\" exceeded query limit! Google returned...\n#{@json.inspect}" if @json.blank? || @json['status'] != 'OK'
43
+ fail "Geocoding \"#{data}\" exceeded query limit! Google returned...\n"\
44
+ "#{@json.inspect}" if @json.blank? || @json['status'] != 'OK'
30
45
  set_attributes_from_json
31
- logger = Logger.new STDERR
32
- logger.info('GoogleMapsGeocoder') { "Geocoded \"#{data}\" => \"#{self.formatted_address}\"" }
46
+ logger.info('GoogleMapsGeocoder') do
47
+ "Geocoded \"#{data}\" => \"#{formatted_address}\""
48
+ end
33
49
  end
34
50
 
35
- # Instance Methods ===============================================================================
51
+ # Instance Methods ===========================================================
36
52
 
37
53
  # Returns true if the address Google returns is an exact match.
38
54
  #
@@ -42,7 +58,7 @@ class GoogleMapsGeocoder
42
58
  # white_house.exact_match?
43
59
  # => true
44
60
  def exact_match?
45
- ! self.partial_match?
61
+ !self.partial_match?
46
62
  end
47
63
 
48
64
  # Returns true if the address Google returns isn't an exact match.
@@ -58,18 +74,39 @@ class GoogleMapsGeocoder
58
74
 
59
75
  private
60
76
 
61
- def json_from_url url
62
- response = Net::HTTP.get_response(URI.parse "http://maps.googleapis.com/maps/api/geocode/json?address=#{Rack::Utils.escape(url)}&sensor=false")
77
+ def api_key
78
+ @api_key ||= "&key=#{ENV['GOOGLE_MAPS_API_KEY']}" if
79
+ ENV['GOOGLE_MAPS_API_KEY']
80
+ end
81
+
82
+ def http(uri)
83
+ http = Net::HTTP.new(uri.host, uri.port)
84
+ http.use_ssl = true
85
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
86
+ http
87
+ end
88
+
89
+ def json_from_url(url)
90
+ uri = URI.parse query_url(url)
91
+ logger.debug('GoogleMapsGeocoder') { uri }
92
+ response = http(uri).request(Net::HTTP::Get.new(uri.request_uri))
63
93
  ActiveSupport::JSON.decode response.body
64
94
  end
65
95
 
66
- def parse_address_component_type(type, name='long_name')
67
- _address_component = @json['results'][0]['address_components'].detect{ |ac| ac['types'] && ac['types'].include?(type) }
68
- _address_component && _address_component[name]
96
+ def logger
97
+ @logger ||= Logger.new STDERR
98
+ end
99
+
100
+ def parse_address_component_type(type, name = 'long_name')
101
+ address_component = @json['results'][0]['address_components'].detect do |ac|
102
+ ac['types'] && ac['types'].include?(type)
103
+ end
104
+ address_component && address_component[name]
69
105
  end
70
106
 
71
107
  def parse_city
72
- parse_address_component_type('sublocality') || parse_address_component_type('locality')
108
+ parse_address_component_type('sublocality') ||
109
+ parse_address_component_type('locality')
73
110
  end
74
111
 
75
112
  def parse_country_long_name
@@ -89,7 +126,8 @@ class GoogleMapsGeocoder
89
126
  end
90
127
 
91
128
  def parse_formatted_street_address
92
- "#{parse_address_component_type('street_number')} #{parse_address_component_type('route')}"
129
+ "#{parse_address_component_type('street_number')} "\
130
+ "#{parse_address_component_type('route')}"
93
131
  end
94
132
 
95
133
  def parse_lat
@@ -98,7 +136,7 @@ class GoogleMapsGeocoder
98
136
 
99
137
  def parse_lng
100
138
  @json['results'][0]['geometry']['location']['lng']
101
- end
139
+ end
102
140
 
103
141
  def parse_postal_code
104
142
  parse_address_component_type('postal_code')
@@ -112,7 +150,14 @@ class GoogleMapsGeocoder
112
150
  parse_address_component_type('administrative_area_level_1', 'short_name')
113
151
  end
114
152
 
153
+ def query_url(query)
154
+ "#{GOOGLE_API_URI}?address=#{Rack::Utils.escape query}&sensor=false"\
155
+ "#{api_key}"
156
+ end
157
+
115
158
  def set_attributes_from_json
116
- @city, @country_short_name, @country_long_name, @county, @formatted_address, @formatted_street_address, @lat, @lng, @postal_code, @state_long_name, @state_short_name = parse_city, parse_country_short_name, parse_country_long_name, parse_county, parse_formatted_address, parse_formatted_street_address, parse_lat, parse_lng, parse_postal_code, parse_state_long_name, parse_state_short_name
159
+ ALL_ADDRESS_SEGMENTS.each do |segment|
160
+ instance_variable_set :"@#{segment}", send("parse_#{segment}")
161
+ end
117
162
  end
118
- end
163
+ end
@@ -0,0 +1,4 @@
1
+ # A simple PORO wrapper for geocoding with Google Maps.
2
+ class GoogleMapsGeocoder
3
+ VERSION = '0.4.0.pre1'.freeze unless defined?(GoogleMapsGeocoder::VERSION)
4
+ end
@@ -13,8 +13,8 @@ describe GoogleMapsGeocoder do
13
13
  end
14
14
 
15
15
  before(:each) do
16
- pending 'waiting for a network connection', :if => @no_network
17
- pending 'waiting for query limit to pass', :if => @query_limit
16
+ pending 'waiting for a network connection' if @no_network
17
+ pending 'waiting for query limit to pass' if @query_limit
18
18
  end
19
19
 
20
20
  context 'with "837 Union Street Brooklyn NY"' do
@@ -24,13 +24,16 @@ describe GoogleMapsGeocoder do
24
24
  context 'address' do
25
25
  it { expect(subject.formatted_street_address).to eq '837 Union Street' }
26
26
  it { expect(subject.city).to eq 'Brooklyn' }
27
- it { expect(subject.county).to match /Kings/ }
27
+ it { expect(subject.county).to match(/Kings/) }
28
28
  it { expect(subject.state_long_name).to eq 'New York' }
29
29
  it { expect(subject.state_short_name).to eq 'NY' }
30
- it { expect(subject.postal_code).to match /112[0-9]{2}/ }
30
+ it { expect(subject.postal_code).to match(/112[0-9]{2}/) }
31
31
  it { expect(subject.country_short_name).to eq 'US' }
32
32
  it { expect(subject.country_long_name).to eq 'United States' }
33
- it { expect(subject.formatted_address).to match /837 Union Street, Brooklyn, NY 112[0-9]{2}, USA/ }
33
+ it do
34
+ expect(subject.formatted_address)
35
+ .to match(/837 Union St, Brooklyn, NY 112[0-9]{2}, USA/)
36
+ end
34
37
  end
35
38
 
36
39
  context 'coordinates' do
@@ -44,19 +47,38 @@ describe GoogleMapsGeocoder do
44
47
  it { should be_partial_match }
45
48
 
46
49
  context 'address' do
47
- it { expect(subject.formatted_street_address).to eq '1600 Pennsylvania Avenue Northwest' }
50
+ it do
51
+ expect(subject.formatted_street_address)
52
+ .to eq '1600 Pennsylvania Avenue Southeast'
53
+ end
48
54
  it { expect(subject.city).to eq 'Washington' }
49
55
  it { expect(subject.state_long_name).to eq 'District of Columbia' }
50
56
  it { expect(subject.state_short_name).to eq 'DC' }
51
- it { expect(subject.postal_code).to match /2050[0-9]/ }
57
+ it { expect(subject.postal_code).to match(/2000[0-9]/) }
52
58
  it { expect(subject.country_short_name).to eq 'US' }
53
59
  it { expect(subject.country_long_name).to eq 'United States' }
54
- it { expect(subject.formatted_address).to match(/1600 Pennsylvania Avenue Northwest, President's Park, Washington, DC 2050[0-9], USA/) }
55
- end
60
+ it do
61
+ expect(subject.formatted_address)
62
+ .to match(/1600 Pennsylvania Ave SE, Washington, DC 20003, USA/)
63
+ end
64
+ end
65
+
66
+ context 'coordinates' do
67
+ it { expect(subject.lat).to be_within(0.005).of(38.8791981) }
68
+ it { expect(subject.lng).to be_within(0.005).of(-76.9818437) }
69
+ end
70
+ end
56
71
 
57
- context 'coordinates' do
58
- it { expect(subject.lat).to be_within(0.005).of(38.8976964) }
59
- it { expect(subject.lng).to be_within(0.005).of(-77.0365191) }
60
- end
72
+ context "when ENV['GOOGLE_MAPS_API_KEY'] = 'INVALID_KEY'" do
73
+ before { ENV['GOOGLE_MAPS_API_KEY'] = 'INVALID_KEY' }
74
+
75
+ subject { @exact_match }
76
+
77
+ it do
78
+ expect(subject.send :query_url, nil).to eq(
79
+ 'https://maps.googleapis.com/maps/api/geocode/json?address='\
80
+ '&sensor=false&key=INVALID_KEY'
81
+ )
82
+ end
61
83
  end
62
- end
84
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,14 +1,14 @@
1
- require 'simplecov'
2
- SimpleCov.start
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
3
  require 'rubygems'
4
4
  require 'bundler'
5
5
  begin
6
6
  Bundler.setup(:default, :development)
7
7
  rescue Bundler::BundlerError => e
8
8
  $stderr.puts e.message
9
- $stderr.puts "Run `bundle install` to install missing gems"
9
+ $stderr.puts 'Run `bundle install` to install missing gems'
10
10
  exit e.status_code
11
11
  end
12
12
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
13
13
  $LOAD_PATH.unshift(File.dirname(__FILE__))
14
- require 'google_maps_geocoder'
14
+ require 'google_maps_geocoder/google_maps_geocoder'
metadata CHANGED
@@ -1,83 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_maps_geocoder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roderick Monje
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-19 00:00:00.000000000 Z
11
+ date: 2015-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: coveralls
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rake
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
- - - ! '>='
31
+ - - ">="
18
32
  - !ruby/object:Gem::Version
19
33
  version: '0'
20
34
  type: :development
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
- - - ! '>='
38
+ - - ">="
25
39
  - !ruby/object:Gem::Version
26
40
  version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rspec
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - ! '>='
45
+ - - ">="
32
46
  - !ruby/object:Gem::Version
33
47
  version: '0'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - ! '>='
52
+ - - ">="
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
- name: simplecov
56
+ name: rubocop
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - ! '>='
59
+ - - ">="
46
60
  - !ruby/object:Gem::Version
47
61
  version: '0'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
- - - ! '>='
66
+ - - ">="
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: activesupport
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
- - - ! '>='
73
+ - - ">="
60
74
  - !ruby/object:Gem::Version
61
75
  version: '0'
62
76
  type: :runtime
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - ! '>='
80
+ - - ">="
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rack
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - ! '>='
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
89
  version: '0'
76
90
  type: :runtime
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - ! '>='
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
83
97
  description: Geocode a location without worrying about parsing Google Maps' response.
@@ -87,17 +101,17 @@ executables: []
87
101
  extensions: []
88
102
  extra_rdoc_files: []
89
103
  files:
90
- - .document
91
- - .gitignore
92
- - .ruby-version
93
- - .travis.yml
104
+ - ".document"
105
+ - ".gitignore"
106
+ - ".ruby-version"
107
+ - ".travis.yml"
94
108
  - Gemfile
95
109
  - LICENSE.txt
96
110
  - README.md
97
111
  - Rakefile
98
112
  - google_maps_geocoder.gemspec
99
- - lib/google_maps_geocoder.rb
100
- - lib/version.rb
113
+ - lib/google_maps_geocoder/google_maps_geocoder.rb
114
+ - lib/google_maps_geocoder/version.rb
101
115
  - spec/lib/google_maps_geocoder_spec.rb
102
116
  - spec/spec_helper.rb
103
117
  homepage: http://github.com/ivanoblomov/google_maps_geocoder
@@ -109,17 +123,17 @@ require_paths:
109
123
  - lib
110
124
  required_ruby_version: !ruby/object:Gem::Requirement
111
125
  requirements:
112
- - - ! '>='
126
+ - - ">="
113
127
  - !ruby/object:Gem::Version
114
128
  version: '0'
115
129
  required_rubygems_version: !ruby/object:Gem::Requirement
116
130
  requirements:
117
- - - ! '>='
131
+ - - ">"
118
132
  - !ruby/object:Gem::Version
119
- version: '0'
133
+ version: 1.3.1
120
134
  requirements: []
121
135
  rubyforge_project:
122
- rubygems_version: 2.0.6
136
+ rubygems_version: 2.4.6
123
137
  signing_key:
124
138
  specification_version: 4
125
139
  summary: A simple PORO wrapper for geocoding with Google Maps.
data/lib/version.rb DELETED
@@ -1,3 +0,0 @@
1
- class GoogleMapsGeocoder
2
- VERSION = '0.3.1'.freeze unless defined?(GoogleMapsGeocoder::VERSION)
3
- end