geocoder 1.4.8 → 1.6.0
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/LICENSE +1 -1
- data/README.md +355 -950
- data/examples/autoexpire_cache_redis.rb +2 -0
- data/lib/generators/geocoder/config/templates/initializer.rb +1 -1
- data/lib/geocoder/calculations.rb +1 -1
- data/lib/geocoder/cli.rb +2 -2
- data/lib/geocoder/configuration.rb +1 -1
- data/lib/geocoder/exceptions.rb +1 -1
- data/lib/geocoder/ip_address.rb +14 -1
- data/lib/geocoder/lookup.rb +7 -5
- 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 +17 -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/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 +29 -23
- data/lib/geocoder/lookups/ip2location.rb +67 -0
- data/lib/geocoder/lookups/ipapi_com.rb +9 -13
- data/lib/geocoder/lookups/ipdata_co.rb +9 -4
- data/lib/geocoder/lookups/ipgeolocation.rb +63 -0
- data/lib/geocoder/lookups/ipinfo_io.rb +11 -29
- data/lib/geocoder/lookups/ipregistry.rb +68 -0
- data/lib/geocoder/lookups/ipstack.rb +11 -12
- 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/osmnames.rb +57 -0
- 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 +23 -3
- 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 -14
- data/lib/geocoder/results/ban_data_gouv_fr.rb +1 -1
- 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 +4 -4
- 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/ipgeolocation.rb +59 -0
- data/lib/geocoder/results/ipregistry.rb +308 -0
- data/lib/geocoder/results/maxmind.rb +0 -5
- data/lib/geocoder/results/maxmind_local.rb +0 -5
- data/lib/geocoder/results/osmnames.rb +56 -0
- 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/version.rb +1 -1
- data/lib/hash_recursive_merge.rb +1 -2
- data/lib/maxmind_database.rb +3 -3
- metadata +17 -18
- data/lib/geocoder/lookups/geocoder_us.rb +0 -43
- 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/geocoder_us.rb +0 -39
- data/lib/geocoder/results/mapzen.rb +0 -5
- data/lib/geocoder/results/okf.rb +0 -106
- data/lib/geocoder/results/ovi.rb +0 -71
|
@@ -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,56 @@
|
|
|
1
|
+
require 'geocoder/results/base'
|
|
2
|
+
|
|
3
|
+
module Geocoder::Result
|
|
4
|
+
class Osmnames < Base
|
|
5
|
+
def address
|
|
6
|
+
@data['display_name']
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def coordinates
|
|
10
|
+
[@data['lat'].to_f, @data['lon'].to_f]
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def viewport
|
|
14
|
+
west, south, east, north = @data['boundingbox'].map(&:to_f)
|
|
15
|
+
[south, west, north, east]
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def state
|
|
19
|
+
@data['state']
|
|
20
|
+
end
|
|
21
|
+
alias_method :state_code, :state
|
|
22
|
+
|
|
23
|
+
def place_class
|
|
24
|
+
@data['class']
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def place_type
|
|
28
|
+
@data['type']
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def postal_code
|
|
32
|
+
''
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def country_code
|
|
36
|
+
@data['country_code']
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def country
|
|
40
|
+
@data['country']
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def self.response_attributes
|
|
44
|
+
%w[house_number street city name osm_id osm_type boundingbox place_rank
|
|
45
|
+
importance county rank name_suffix]
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
response_attributes.each do |a|
|
|
49
|
+
unless method_defined?(a)
|
|
50
|
+
define_method a do
|
|
51
|
+
@data[a]
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
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/version.rb
CHANGED
data/lib/hash_recursive_merge.rb
CHANGED
|
@@ -60,9 +60,8 @@ module HashRecursiveMerge
|
|
|
60
60
|
# h1.merge(h2) #=> {"a" => 100, "b" = >254, "c" => {"c1" => 16, "c3" => 94}}
|
|
61
61
|
#
|
|
62
62
|
def rmerge(other_hash)
|
|
63
|
-
r = {}
|
|
64
63
|
merge(other_hash) do |key, oldval, newval|
|
|
65
|
-
|
|
64
|
+
oldval.class == self.class ? oldval.rmerge(newval) : newval
|
|
66
65
|
end
|
|
67
66
|
end
|
|
68
67
|
|
data/lib/maxmind_database.rb
CHANGED
|
@@ -96,9 +96,9 @@ module Geocoder
|
|
|
96
96
|
|
|
97
97
|
def archive_url_path(package)
|
|
98
98
|
{
|
|
99
|
-
geolite_country_csv: "
|
|
100
|
-
geolite_city_csv: "
|
|
101
|
-
geolite_asn_csv: "
|
|
99
|
+
geolite_country_csv: "GeoLite2-Country-CSV.zip",
|
|
100
|
+
geolite_city_csv: "GeoLite2-City-CSV.zip",
|
|
101
|
+
geolite_asn_csv: "GeoLite2-ASN-CSV.zip"
|
|
102
102
|
}[package]
|
|
103
103
|
end
|
|
104
104
|
|
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.6.0
|
|
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: 2020-01-06 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,
|
|
@@ -59,7 +59,6 @@ files:
|
|
|
59
59
|
- lib/geocoder/lookups/esri.rb
|
|
60
60
|
- lib/geocoder/lookups/freegeoip.rb
|
|
61
61
|
- lib/geocoder/lookups/geocoder_ca.rb
|
|
62
|
-
- lib/geocoder/lookups/geocoder_us.rb
|
|
63
62
|
- lib/geocoder/lookups/geocodio.rb
|
|
64
63
|
- lib/geocoder/lookups/geoip2.rb
|
|
65
64
|
- lib/geocoder/lookups/geoportail_lu.rb
|
|
@@ -68,28 +67,31 @@ files:
|
|
|
68
67
|
- lib/geocoder/lookups/google_places_search.rb
|
|
69
68
|
- lib/geocoder/lookups/google_premier.rb
|
|
70
69
|
- lib/geocoder/lookups/here.rb
|
|
70
|
+
- lib/geocoder/lookups/ip2location.rb
|
|
71
71
|
- lib/geocoder/lookups/ipapi_com.rb
|
|
72
72
|
- lib/geocoder/lookups/ipdata_co.rb
|
|
73
|
+
- lib/geocoder/lookups/ipgeolocation.rb
|
|
73
74
|
- lib/geocoder/lookups/ipinfo_io.rb
|
|
75
|
+
- lib/geocoder/lookups/ipregistry.rb
|
|
74
76
|
- lib/geocoder/lookups/ipstack.rb
|
|
75
77
|
- lib/geocoder/lookups/latlon.rb
|
|
76
78
|
- lib/geocoder/lookups/location_iq.rb
|
|
77
79
|
- lib/geocoder/lookups/mapbox.rb
|
|
78
80
|
- lib/geocoder/lookups/mapquest.rb
|
|
79
|
-
- lib/geocoder/lookups/mapzen.rb
|
|
80
81
|
- lib/geocoder/lookups/maxmind.rb
|
|
81
82
|
- lib/geocoder/lookups/maxmind_geoip2.rb
|
|
82
83
|
- lib/geocoder/lookups/maxmind_local.rb
|
|
83
84
|
- lib/geocoder/lookups/nominatim.rb
|
|
84
|
-
- lib/geocoder/lookups/okf.rb
|
|
85
85
|
- lib/geocoder/lookups/opencagedata.rb
|
|
86
|
-
- lib/geocoder/lookups/
|
|
86
|
+
- lib/geocoder/lookups/osmnames.rb
|
|
87
87
|
- lib/geocoder/lookups/pelias.rb
|
|
88
88
|
- lib/geocoder/lookups/pickpoint.rb
|
|
89
89
|
- lib/geocoder/lookups/pointpin.rb
|
|
90
90
|
- lib/geocoder/lookups/postcode_anywhere_uk.rb
|
|
91
|
+
- lib/geocoder/lookups/postcodes_io.rb
|
|
91
92
|
- lib/geocoder/lookups/smarty_streets.rb
|
|
92
93
|
- lib/geocoder/lookups/telize.rb
|
|
94
|
+
- lib/geocoder/lookups/tencent.rb
|
|
93
95
|
- lib/geocoder/lookups/test.rb
|
|
94
96
|
- lib/geocoder/lookups/yandex.rb
|
|
95
97
|
- lib/geocoder/models/active_record.rb
|
|
@@ -111,7 +113,6 @@ files:
|
|
|
111
113
|
- lib/geocoder/results/esri.rb
|
|
112
114
|
- lib/geocoder/results/freegeoip.rb
|
|
113
115
|
- lib/geocoder/results/geocoder_ca.rb
|
|
114
|
-
- lib/geocoder/results/geocoder_us.rb
|
|
115
116
|
- lib/geocoder/results/geocodio.rb
|
|
116
117
|
- lib/geocoder/results/geoip2.rb
|
|
117
118
|
- lib/geocoder/results/geoportail_lu.rb
|
|
@@ -120,28 +121,31 @@ files:
|
|
|
120
121
|
- lib/geocoder/results/google_places_search.rb
|
|
121
122
|
- lib/geocoder/results/google_premier.rb
|
|
122
123
|
- lib/geocoder/results/here.rb
|
|
124
|
+
- lib/geocoder/results/ip2location.rb
|
|
123
125
|
- lib/geocoder/results/ipapi_com.rb
|
|
124
126
|
- lib/geocoder/results/ipdata_co.rb
|
|
127
|
+
- lib/geocoder/results/ipgeolocation.rb
|
|
125
128
|
- lib/geocoder/results/ipinfo_io.rb
|
|
129
|
+
- lib/geocoder/results/ipregistry.rb
|
|
126
130
|
- lib/geocoder/results/ipstack.rb
|
|
127
131
|
- lib/geocoder/results/latlon.rb
|
|
128
132
|
- lib/geocoder/results/location_iq.rb
|
|
129
133
|
- lib/geocoder/results/mapbox.rb
|
|
130
134
|
- lib/geocoder/results/mapquest.rb
|
|
131
|
-
- lib/geocoder/results/mapzen.rb
|
|
132
135
|
- lib/geocoder/results/maxmind.rb
|
|
133
136
|
- lib/geocoder/results/maxmind_geoip2.rb
|
|
134
137
|
- lib/geocoder/results/maxmind_local.rb
|
|
135
138
|
- lib/geocoder/results/nominatim.rb
|
|
136
|
-
- lib/geocoder/results/okf.rb
|
|
137
139
|
- lib/geocoder/results/opencagedata.rb
|
|
138
|
-
- lib/geocoder/results/
|
|
140
|
+
- lib/geocoder/results/osmnames.rb
|
|
139
141
|
- lib/geocoder/results/pelias.rb
|
|
140
142
|
- lib/geocoder/results/pickpoint.rb
|
|
141
143
|
- lib/geocoder/results/pointpin.rb
|
|
142
144
|
- lib/geocoder/results/postcode_anywhere_uk.rb
|
|
145
|
+
- lib/geocoder/results/postcodes_io.rb
|
|
143
146
|
- lib/geocoder/results/smarty_streets.rb
|
|
144
147
|
- lib/geocoder/results/telize.rb
|
|
148
|
+
- lib/geocoder/results/tencent.rb
|
|
145
149
|
- lib/geocoder/results/test.rb
|
|
146
150
|
- lib/geocoder/results/yandex.rb
|
|
147
151
|
- lib/geocoder/sql.rb
|
|
@@ -161,11 +165,7 @@ licenses:
|
|
|
161
165
|
metadata:
|
|
162
166
|
source_code_uri: https://github.com/alexreisner/geocoder
|
|
163
167
|
changelog_uri: https://github.com/alexreisner/geocoder/blob/master/CHANGELOG.md
|
|
164
|
-
post_install_message:
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
NOTE: Geocoder's default IP address lookup has changed from FreeGeoIP.net to IPInfo.io. If you explicitly specify :freegeoip in your configuration you must choose a different IP lookup before FreeGeoIP is discontinued on July 1, 2018. If you do not explicitly specify :freegeoip you do not need to change anything.
|
|
168
|
-
|
|
168
|
+
post_install_message:
|
|
169
169
|
rdoc_options: []
|
|
170
170
|
require_paths:
|
|
171
171
|
- lib
|
|
@@ -173,15 +173,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
173
173
|
requirements:
|
|
174
174
|
- - ">="
|
|
175
175
|
- !ruby/object:Gem::Version
|
|
176
|
-
version:
|
|
176
|
+
version: 2.0.0
|
|
177
177
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
178
178
|
requirements:
|
|
179
179
|
- - ">="
|
|
180
180
|
- !ruby/object:Gem::Version
|
|
181
181
|
version: '0'
|
|
182
182
|
requirements: []
|
|
183
|
-
|
|
184
|
-
rubygems_version: 2.5.2
|
|
183
|
+
rubygems_version: 3.0.1
|
|
185
184
|
signing_key:
|
|
186
185
|
specification_version: 4
|
|
187
186
|
summary: Complete geocoding solution for Ruby.
|