geocoder 1.4.7 → 1.5.2
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 +5 -5
- data/CHANGELOG.md +31 -0
- data/README.md +352 -935
- data/examples/autoexpire_cache_redis.rb +3 -3
- data/lib/generators/geocoder/config/templates/initializer.rb +2 -2
- data/lib/geocoder/cache.rb +1 -1
- data/lib/geocoder/calculations.rb +1 -1
- data/lib/geocoder/cli.rb +2 -2
- data/lib/geocoder/configuration.rb +2 -2
- data/lib/geocoder/exceptions.rb +1 -1
- data/lib/geocoder/ip_address.rb +14 -1
- data/lib/geocoder/lookup.rb +6 -4
- data/lib/geocoder/lookups/amap.rb +7 -3
- data/lib/geocoder/lookups/baidu.rb +14 -10
- data/lib/geocoder/lookups/baidu_ip.rb +7 -36
- data/lib/geocoder/lookups/ban_data_gouv_fr.rb +4 -4
- data/lib/geocoder/lookups/base.rb +27 -4
- data/lib/geocoder/lookups/bing.rb +10 -13
- data/lib/geocoder/lookups/db_ip_com.rb +9 -6
- data/lib/geocoder/lookups/dstk.rb +4 -2
- data/lib/geocoder/lookups/esri.rb +39 -29
- data/lib/geocoder/lookups/freegeoip.rb +11 -7
- data/lib/geocoder/lookups/geocoder_ca.rb +4 -4
- data/lib/geocoder/lookups/geocoder_us.rb +17 -9
- data/lib/geocoder/lookups/geocodio.rb +5 -5
- data/lib/geocoder/lookups/geoportail_lu.rb +7 -7
- data/lib/geocoder/lookups/google.rb +8 -8
- data/lib/geocoder/lookups/google_places_details.rb +4 -4
- data/lib/geocoder/lookups/google_places_search.rb +4 -4
- data/lib/geocoder/lookups/google_premier.rb +10 -0
- data/lib/geocoder/lookups/here.rb +30 -15
- data/lib/geocoder/lookups/ip2location.rb +75 -0
- data/lib/geocoder/lookups/ipapi_com.rb +9 -13
- data/lib/geocoder/lookups/ipdata_co.rb +9 -4
- data/lib/geocoder/lookups/ipinfo_io.rb +11 -29
- data/lib/geocoder/lookups/ipregistry.rb +68 -0
- data/lib/geocoder/lookups/ipstack.rb +63 -0
- data/lib/geocoder/lookups/latlon.rb +4 -4
- data/lib/geocoder/lookups/location_iq.rb +10 -4
- data/lib/geocoder/lookups/mapbox.rb +7 -6
- data/lib/geocoder/lookups/mapquest.rb +4 -5
- data/lib/geocoder/lookups/maxmind.rb +6 -6
- data/lib/geocoder/lookups/maxmind_geoip2.rb +8 -7
- data/lib/geocoder/lookups/nominatim.rb +4 -4
- data/lib/geocoder/lookups/opencagedata.rb +6 -5
- data/lib/geocoder/lookups/pelias.rb +8 -9
- data/lib/geocoder/lookups/pickpoint.rb +9 -3
- data/lib/geocoder/lookups/pointpin.rb +10 -9
- data/lib/geocoder/lookups/postcode_anywhere_uk.rb +4 -5
- data/lib/geocoder/lookups/postcodes_io.rb +31 -0
- data/lib/geocoder/lookups/smarty_streets.rb +20 -10
- data/lib/geocoder/lookups/telize.rb +26 -6
- data/lib/geocoder/lookups/tencent.rb +59 -0
- data/lib/geocoder/lookups/yandex.rb +6 -6
- data/lib/geocoder/query.rb +14 -0
- data/lib/geocoder/railtie.rb +1 -1
- data/lib/geocoder/results/baidu.rb +10 -10
- data/lib/geocoder/results/base.rb +13 -1
- data/lib/geocoder/results/bing.rb +1 -1
- data/lib/geocoder/results/db_ip_com.rb +0 -5
- data/lib/geocoder/results/freegeoip.rb +0 -5
- data/lib/geocoder/results/geocoder_ca.rb +3 -3
- data/lib/geocoder/results/geoip2.rb +2 -6
- data/lib/geocoder/results/geoportail_lu.rb +5 -3
- data/lib/geocoder/results/here.rb +4 -1
- data/lib/geocoder/results/ip2location.rb +22 -0
- data/lib/geocoder/results/ipdata_co.rb +0 -5
- data/lib/geocoder/results/ipregistry.rb +308 -0
- data/lib/geocoder/results/ipstack.rb +60 -0
- data/lib/geocoder/results/maxmind.rb +0 -5
- data/lib/geocoder/results/maxmind_local.rb +0 -5
- data/lib/geocoder/results/postcodes_io.rb +40 -0
- data/lib/geocoder/results/smarty_streets.rb +48 -18
- data/lib/geocoder/results/telize.rb +0 -5
- data/lib/geocoder/results/tencent.rb +72 -0
- data/lib/geocoder/results/test.rb +1 -1
- data/lib/geocoder/stores/active_record.rb +1 -3
- data/lib/geocoder/stores/base.rb +1 -1
- data/lib/geocoder/version.rb +1 -1
- metadata +14 -10
- data/lib/geocoder/lookups/mapzen.rb +0 -15
- data/lib/geocoder/lookups/okf.rb +0 -44
- data/lib/geocoder/lookups/ovi.rb +0 -62
- data/lib/geocoder/results/mapzen.rb +0 -5
- data/lib/geocoder/results/okf.rb +0 -106
- data/lib/geocoder/results/ovi.rb +0 -71
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
require 'geocoder/results/base'
|
|
2
|
+
|
|
3
|
+
module Geocoder::Result
|
|
4
|
+
class Ipstack < Base
|
|
5
|
+
|
|
6
|
+
def address(format = :full)
|
|
7
|
+
s = region_code.empty? ? "" : ", #{region_code}"
|
|
8
|
+
"#{city}#{s} #{zip}, #{country_name}".sub(/^[ ,]*/, "")
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def state
|
|
12
|
+
@data['region_name']
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def state_code
|
|
16
|
+
@data['region_code']
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def country
|
|
20
|
+
@data['country_name']
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def postal_code
|
|
24
|
+
@data['zip'] || @data['zipcode'] || @data['zip_code']
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def self.response_attributes
|
|
28
|
+
[
|
|
29
|
+
['ip', ''],
|
|
30
|
+
['hostname', ''],
|
|
31
|
+
['continent_code', ''],
|
|
32
|
+
['continent_name', ''],
|
|
33
|
+
['country_code', ''],
|
|
34
|
+
['country_name', ''],
|
|
35
|
+
['region_code', ''],
|
|
36
|
+
['region_name', ''],
|
|
37
|
+
['city', ''],
|
|
38
|
+
['zip', ''],
|
|
39
|
+
['latitude', 0],
|
|
40
|
+
['longitude', 0],
|
|
41
|
+
['location', {}],
|
|
42
|
+
['time_zone', {}],
|
|
43
|
+
['currency', {}],
|
|
44
|
+
['connection', {}],
|
|
45
|
+
['security', {}],
|
|
46
|
+
]
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
response_attributes.each do |attr, default|
|
|
50
|
+
define_method attr do
|
|
51
|
+
@data[attr] || default
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def metro_code
|
|
56
|
+
Geocoder.log(:warn, "Ipstack does not implement `metro_code` in api results. Please discontinue use.")
|
|
57
|
+
0 # no longer implemented by ipstack
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -87,11 +87,6 @@ module Geocoder::Result
|
|
|
87
87
|
[data_hash[:latitude].to_f, data_hash[:longitude].to_f]
|
|
88
88
|
end
|
|
89
89
|
|
|
90
|
-
def address(format = :full)
|
|
91
|
-
s = state_code.to_s == "" ? "" : ", #{state_code}"
|
|
92
|
-
"#{city}#{s} #{postal_code}, #{country_code}".sub(/^[ ,]*/, "")
|
|
93
|
-
end
|
|
94
|
-
|
|
95
90
|
def city
|
|
96
91
|
data_hash[:city_name]
|
|
97
92
|
end
|
|
@@ -3,11 +3,6 @@ require 'geocoder/results/base'
|
|
|
3
3
|
module Geocoder::Result
|
|
4
4
|
class MaxmindLocal < Base
|
|
5
5
|
|
|
6
|
-
def address(format = :full)
|
|
7
|
-
s = state.to_s == "" ? "" : ", #{state}"
|
|
8
|
-
"#{city}#{s} #{postal_code}, #{country}".sub(/^[ ,]*/, "")
|
|
9
|
-
end
|
|
10
|
-
|
|
11
6
|
def coordinates
|
|
12
7
|
[@data[:latitude], @data[:longitude]]
|
|
13
8
|
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
require 'geocoder/results/base'
|
|
2
|
+
|
|
3
|
+
module Geocoder::Result
|
|
4
|
+
class PostcodesIo < Base
|
|
5
|
+
|
|
6
|
+
def coordinates
|
|
7
|
+
[@data['latitude'].to_f, @data['longitude'].to_f]
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def quality
|
|
11
|
+
@data['quality']
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def postal_code
|
|
15
|
+
@data['postcode']
|
|
16
|
+
end
|
|
17
|
+
alias address postal_code
|
|
18
|
+
|
|
19
|
+
def city
|
|
20
|
+
@data['admin_ward']
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def county
|
|
24
|
+
@data['admin_county']
|
|
25
|
+
end
|
|
26
|
+
alias state county
|
|
27
|
+
|
|
28
|
+
def state_code
|
|
29
|
+
@data['codes']['admin_county']
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def country
|
|
33
|
+
'United Kingdom'
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def country_code
|
|
37
|
+
'UK'
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -15,51 +15,77 @@ module Geocoder::Result
|
|
|
15
15
|
end
|
|
16
16
|
|
|
17
17
|
def address
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
parts =
|
|
19
|
+
if international_endpoint?
|
|
20
|
+
(1..12).map { |i| @data["address#{i}"] }
|
|
21
|
+
else
|
|
22
|
+
[
|
|
23
|
+
delivery_line_1,
|
|
24
|
+
delivery_line_2,
|
|
25
|
+
last_line
|
|
26
|
+
]
|
|
27
|
+
end
|
|
28
|
+
parts.select{ |i| i.to_s != "" }.join(" ")
|
|
23
29
|
end
|
|
24
30
|
|
|
25
31
|
def state
|
|
26
|
-
|
|
27
|
-
|
|
32
|
+
if international_endpoint?
|
|
33
|
+
components['administrative_area']
|
|
34
|
+
elsif zipcode_endpoint?
|
|
35
|
+
city_states.first['state']
|
|
36
|
+
else
|
|
28
37
|
components['state_abbreviation']
|
|
38
|
+
end
|
|
29
39
|
end
|
|
30
40
|
|
|
31
41
|
def state_code
|
|
32
|
-
|
|
33
|
-
|
|
42
|
+
if international_endpoint?
|
|
43
|
+
components['administrative_area']
|
|
44
|
+
elsif zipcode_endpoint?
|
|
45
|
+
city_states.first['state_abbreviation']
|
|
46
|
+
else
|
|
34
47
|
components['state_abbreviation']
|
|
48
|
+
end
|
|
35
49
|
end
|
|
36
50
|
|
|
37
51
|
def country
|
|
38
|
-
|
|
39
|
-
|
|
52
|
+
international_endpoint? ?
|
|
53
|
+
components['country_iso_3'] :
|
|
54
|
+
"United States"
|
|
40
55
|
end
|
|
41
56
|
|
|
42
57
|
def country_code
|
|
43
|
-
|
|
44
|
-
|
|
58
|
+
international_endpoint? ?
|
|
59
|
+
components['country_iso_3'] :
|
|
60
|
+
"US"
|
|
45
61
|
end
|
|
46
62
|
|
|
47
63
|
## Extra methods not in base.rb ------------------------
|
|
48
64
|
|
|
49
65
|
def street
|
|
50
|
-
|
|
66
|
+
international_endpoint? ?
|
|
67
|
+
components['thoroughfare_name'] :
|
|
68
|
+
components['street_name']
|
|
51
69
|
end
|
|
52
70
|
|
|
53
71
|
def city
|
|
54
|
-
|
|
55
|
-
|
|
72
|
+
if international_endpoint?
|
|
73
|
+
components['locality']
|
|
74
|
+
elsif zipcode_endpoint?
|
|
75
|
+
city_states.first['city']
|
|
76
|
+
else
|
|
56
77
|
components['city_name']
|
|
78
|
+
end
|
|
57
79
|
end
|
|
58
80
|
|
|
59
81
|
def zipcode
|
|
60
|
-
|
|
61
|
-
|
|
82
|
+
if international_endpoint?
|
|
83
|
+
components['postal_code']
|
|
84
|
+
elsif zipcode_endpoint?
|
|
85
|
+
zipcodes.first['zipcode']
|
|
86
|
+
else
|
|
62
87
|
components['zipcode']
|
|
88
|
+
end
|
|
63
89
|
end
|
|
64
90
|
alias_method :postal_code, :zipcode
|
|
65
91
|
|
|
@@ -78,6 +104,10 @@ module Geocoder::Result
|
|
|
78
104
|
zipcodes.any?
|
|
79
105
|
end
|
|
80
106
|
|
|
107
|
+
def international_endpoint?
|
|
108
|
+
!@data['address1'].nil?
|
|
109
|
+
end
|
|
110
|
+
|
|
81
111
|
[
|
|
82
112
|
:delivery_line_1,
|
|
83
113
|
:delivery_line_2,
|
|
@@ -3,11 +3,6 @@ require 'geocoder/results/base'
|
|
|
3
3
|
module Geocoder::Result
|
|
4
4
|
class Telize < Base
|
|
5
5
|
|
|
6
|
-
def address(format = :full)
|
|
7
|
-
s = state_code.to_s == "" ? "" : ", #{state_code}"
|
|
8
|
-
"#{city}#{s} #{postal_code}, #{country}".sub(/^[ ,]*/, "")
|
|
9
|
-
end
|
|
10
|
-
|
|
11
6
|
def city
|
|
12
7
|
@data['city']
|
|
13
8
|
end
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
require 'geocoder/results/base'
|
|
2
|
+
|
|
3
|
+
module Geocoder::Result
|
|
4
|
+
class Tencent < Base
|
|
5
|
+
|
|
6
|
+
def coordinates
|
|
7
|
+
['lat', 'lng'].map{ |i| @data['location'][i] }
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def address
|
|
11
|
+
"#{province}#{city}#{district}#{street}#{street_number}"
|
|
12
|
+
|
|
13
|
+
#@data['title'] or @data['address']
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# NOTE: The Tencent reverse geocoding API has the field named
|
|
17
|
+
# 'address_component' compared to 'address_components' in the
|
|
18
|
+
# regular geocoding API.
|
|
19
|
+
def province
|
|
20
|
+
@data['address_components'] and (@data['address_components']['province']) or
|
|
21
|
+
(@data['address_component'] and @data['address_component']['province']) or
|
|
22
|
+
""
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
alias_method :state, :province
|
|
26
|
+
|
|
27
|
+
def city
|
|
28
|
+
@data['address_components'] and (@data['address_components']['city']) or
|
|
29
|
+
(@data['address_component'] and @data['address_component']['city']) or
|
|
30
|
+
""
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def district
|
|
34
|
+
@data['address_components'] and (@data['address_components']['district']) or
|
|
35
|
+
(@data['address_component'] and @data['address_component']['district']) or
|
|
36
|
+
""
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def street
|
|
40
|
+
@data['address_components'] and (@data['address_components']['street']) or
|
|
41
|
+
(@data['address_component'] and @data['address_component']['street']) or
|
|
42
|
+
""
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def street_number
|
|
46
|
+
@data['address_components'] and (@data['address_components']['street_number']) or
|
|
47
|
+
(@data['address_component'] and @data['address_component']['street_number']) or
|
|
48
|
+
""
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def address_components
|
|
52
|
+
@data['address_components'] or @data['address_component']
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def state_code
|
|
56
|
+
""
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def postal_code
|
|
60
|
+
""
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def country
|
|
64
|
+
"China"
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
def country_code
|
|
68
|
+
"CN"
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
end
|
|
72
|
+
end
|
|
@@ -15,7 +15,7 @@ module Geocoder
|
|
|
15
15
|
end
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
%w[
|
|
18
|
+
%w[coordinates neighborhood city state state_code sub_state
|
|
19
19
|
sub_state_code province province_code postal_code country
|
|
20
20
|
country_code address street_address street_number route geometry].each do |attr|
|
|
21
21
|
add_result_attribute(attr)
|
|
@@ -60,7 +60,7 @@ module Geocoder::Store
|
|
|
60
60
|
# corner followed by the northeast corner of the box
|
|
61
61
|
# (<tt>[[sw_lat, sw_lon], [ne_lat, ne_lon]]</tt>).
|
|
62
62
|
#
|
|
63
|
-
scope :within_bounding_box, lambda{
|
|
63
|
+
scope :within_bounding_box, lambda{ |*bounds|
|
|
64
64
|
sw_lat, sw_lng, ne_lat, ne_lng = bounds.flatten if bounds
|
|
65
65
|
if sw_lat && sw_lng && ne_lat && ne_lng
|
|
66
66
|
where(Geocoder::Sql.within_bounding_box(
|
|
@@ -166,8 +166,6 @@ module Geocoder::Store
|
|
|
166
166
|
}
|
|
167
167
|
end
|
|
168
168
|
|
|
169
|
-
private # ----------------------------------------------------------------
|
|
170
|
-
|
|
171
169
|
##
|
|
172
170
|
# SQL for calculating distance based on the current database's
|
|
173
171
|
# capabilities (trig functions?).
|
data/lib/geocoder/stores/base.rb
CHANGED
|
@@ -90,7 +90,7 @@ module Geocoder
|
|
|
90
90
|
return
|
|
91
91
|
end
|
|
92
92
|
|
|
93
|
-
query_options = [:lookup, :ip_lookup, :language].inject({}) do |hash, key|
|
|
93
|
+
query_options = [:lookup, :ip_lookup, :language, :params].inject({}) do |hash, key|
|
|
94
94
|
if options.has_key?(key)
|
|
95
95
|
val = options[key]
|
|
96
96
|
hash[key] = val.respond_to?(:call) ? val.call(self) : val
|
data/lib/geocoder/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: geocoder
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.5.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Alex Reisner
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2019-10-03 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description: Provides object geocoding (by street or IP address), reverse geocoding
|
|
14
14
|
(coordinates to street address), distance queries for ActiveRecord and Mongoid,
|
|
@@ -68,27 +68,29 @@ files:
|
|
|
68
68
|
- lib/geocoder/lookups/google_places_search.rb
|
|
69
69
|
- lib/geocoder/lookups/google_premier.rb
|
|
70
70
|
- lib/geocoder/lookups/here.rb
|
|
71
|
+
- lib/geocoder/lookups/ip2location.rb
|
|
71
72
|
- lib/geocoder/lookups/ipapi_com.rb
|
|
72
73
|
- lib/geocoder/lookups/ipdata_co.rb
|
|
73
74
|
- lib/geocoder/lookups/ipinfo_io.rb
|
|
75
|
+
- lib/geocoder/lookups/ipregistry.rb
|
|
76
|
+
- lib/geocoder/lookups/ipstack.rb
|
|
74
77
|
- lib/geocoder/lookups/latlon.rb
|
|
75
78
|
- lib/geocoder/lookups/location_iq.rb
|
|
76
79
|
- lib/geocoder/lookups/mapbox.rb
|
|
77
80
|
- lib/geocoder/lookups/mapquest.rb
|
|
78
|
-
- lib/geocoder/lookups/mapzen.rb
|
|
79
81
|
- lib/geocoder/lookups/maxmind.rb
|
|
80
82
|
- lib/geocoder/lookups/maxmind_geoip2.rb
|
|
81
83
|
- lib/geocoder/lookups/maxmind_local.rb
|
|
82
84
|
- lib/geocoder/lookups/nominatim.rb
|
|
83
|
-
- lib/geocoder/lookups/okf.rb
|
|
84
85
|
- lib/geocoder/lookups/opencagedata.rb
|
|
85
|
-
- lib/geocoder/lookups/ovi.rb
|
|
86
86
|
- lib/geocoder/lookups/pelias.rb
|
|
87
87
|
- lib/geocoder/lookups/pickpoint.rb
|
|
88
88
|
- lib/geocoder/lookups/pointpin.rb
|
|
89
89
|
- lib/geocoder/lookups/postcode_anywhere_uk.rb
|
|
90
|
+
- lib/geocoder/lookups/postcodes_io.rb
|
|
90
91
|
- lib/geocoder/lookups/smarty_streets.rb
|
|
91
92
|
- lib/geocoder/lookups/telize.rb
|
|
93
|
+
- lib/geocoder/lookups/tencent.rb
|
|
92
94
|
- lib/geocoder/lookups/test.rb
|
|
93
95
|
- lib/geocoder/lookups/yandex.rb
|
|
94
96
|
- lib/geocoder/models/active_record.rb
|
|
@@ -119,27 +121,29 @@ files:
|
|
|
119
121
|
- lib/geocoder/results/google_places_search.rb
|
|
120
122
|
- lib/geocoder/results/google_premier.rb
|
|
121
123
|
- lib/geocoder/results/here.rb
|
|
124
|
+
- lib/geocoder/results/ip2location.rb
|
|
122
125
|
- lib/geocoder/results/ipapi_com.rb
|
|
123
126
|
- lib/geocoder/results/ipdata_co.rb
|
|
124
127
|
- lib/geocoder/results/ipinfo_io.rb
|
|
128
|
+
- lib/geocoder/results/ipregistry.rb
|
|
129
|
+
- lib/geocoder/results/ipstack.rb
|
|
125
130
|
- lib/geocoder/results/latlon.rb
|
|
126
131
|
- lib/geocoder/results/location_iq.rb
|
|
127
132
|
- lib/geocoder/results/mapbox.rb
|
|
128
133
|
- lib/geocoder/results/mapquest.rb
|
|
129
|
-
- lib/geocoder/results/mapzen.rb
|
|
130
134
|
- lib/geocoder/results/maxmind.rb
|
|
131
135
|
- lib/geocoder/results/maxmind_geoip2.rb
|
|
132
136
|
- lib/geocoder/results/maxmind_local.rb
|
|
133
137
|
- lib/geocoder/results/nominatim.rb
|
|
134
|
-
- lib/geocoder/results/okf.rb
|
|
135
138
|
- lib/geocoder/results/opencagedata.rb
|
|
136
|
-
- lib/geocoder/results/ovi.rb
|
|
137
139
|
- lib/geocoder/results/pelias.rb
|
|
138
140
|
- lib/geocoder/results/pickpoint.rb
|
|
139
141
|
- lib/geocoder/results/pointpin.rb
|
|
140
142
|
- lib/geocoder/results/postcode_anywhere_uk.rb
|
|
143
|
+
- lib/geocoder/results/postcodes_io.rb
|
|
141
144
|
- lib/geocoder/results/smarty_streets.rb
|
|
142
145
|
- lib/geocoder/results/telize.rb
|
|
146
|
+
- lib/geocoder/results/tencent.rb
|
|
143
147
|
- lib/geocoder/results/test.rb
|
|
144
148
|
- lib/geocoder/results/yandex.rb
|
|
145
149
|
- lib/geocoder/sql.rb
|
|
@@ -167,7 +171,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
167
171
|
requirements:
|
|
168
172
|
- - ">="
|
|
169
173
|
- !ruby/object:Gem::Version
|
|
170
|
-
version:
|
|
174
|
+
version: 2.0.0
|
|
171
175
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
172
176
|
requirements:
|
|
173
177
|
- - ">="
|
|
@@ -175,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
175
179
|
version: '0'
|
|
176
180
|
requirements: []
|
|
177
181
|
rubyforge_project:
|
|
178
|
-
rubygems_version: 2.
|
|
182
|
+
rubygems_version: 2.7.6
|
|
179
183
|
signing_key:
|
|
180
184
|
specification_version: 4
|
|
181
185
|
summary: Complete geocoding solution for Ruby.
|