geokit 1.8.0 → 1.8.1

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
- ---
2
- SHA1:
3
- metadata.gz: 964d3db61abcfa9bbe2d95d74cfbd6dff9455184
4
- data.tar.gz: ac8c3ac65b9f0348f92a482ccd216d4b9e6e3a5a
5
- SHA512:
6
- metadata.gz: a7ad5b2491c7bd77d6704fd9e50c35d8860c013ee0e11e41f4e6e5d039a417166f664784e4895dca3fc876e748b91f17a0402d3be5ea66227270f52891d0ddf3
7
- data.tar.gz: b88419201129e2cfb85ddd5301414cdb76cc69079895206e78a225a149e51f6dadb71ddc0ca032e95bfb64f257856dcb5858659b2cbe671f31e5400c20622a5f
1
+ ---
2
+ SHA512:
3
+ data.tar.gz: 09020bb1e0b4fd79479277c02fa59d3ce9b443b679df55822ac06a50cb3848dfd1e093d43e23a0f03736eead51e2126adaf62104b3dc3563799ab912bf837a55
4
+ metadata.gz: ad583bd4f48c42e5cc2880b7950e3f564ffc16f449efe359364892f23300cbe38803fd7435140329feaefacc85415b92428789e44ec5e7f8101e8f377013d14b
5
+ SHA1:
6
+ data.tar.gz: 657c7dbe8d563f7fc3ac2f3382d748bb1d551019
7
+ metadata.gz: c10facc376715511adf49805a214ad0bd5a38678
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## 1.8.1
2
+
3
+ * Change way keys/dependencies defined
4
+
1
5
  ## 1.8.0
2
6
 
3
7
  * Added Bing Geocoder
data/README.markdown CHANGED
@@ -107,14 +107,15 @@ If you're using this gem by itself, here are the configuration options:
107
107
  # This is your yahoo application key for the Yahoo Geocoder.
108
108
  # See http://developer.yahoo.com/faq/index.html#appid
109
109
  # and http://developer.yahoo.com/maps/rest/V1/geocode.html
110
- Geokit::Geocoders::yahoo = 'REPLACE_WITH_YOUR_YAHOO_KEY'
110
+ Geokit::Geocoders::YahooGeocoder.key = 'REPLACE_WITH_YOUR_YAHOO_KEY'
111
+ Geokit::Geocoders::YahooGeocoder.secret = 'REPLACE_WITH_YOUR_YAHOO_SECRET'
111
112
 
112
113
  # This is your Google Maps geocoder keys (all optional).
113
114
  # See http://www.google.com/apis/maps/signup.html
114
115
  # and http://www.google.com/apis/maps/documentation/#Geocoding_Examples
115
- Geokit::Geocoders::google_client_id = ''
116
- Geokit::Geocoders::google_cryptographic_key = ''
117
- Geokit::Geocoders::google_channel = ''
116
+ Geokit::Geocoders::GoogleGeocoder.client_id = ''
117
+ Geokit::Geocoders::GoogleGeocoder.cryptographic_key = ''
118
+ Geokit::Geocoders::GoogleGeocoder.channel = ''
118
119
 
119
120
  # You can also set multiple API KEYS for different domains that may be directed to this same application.
120
121
  # The domain from which the current user is being directed will automatically be updated for Geokit via
@@ -127,7 +128,7 @@ If you're using this gem by itself, here are the configuration options:
127
128
  # usage tied to an account, the value should be set to username:password.
128
129
  # See http://geocoder.us
129
130
  # and http://geocoder.us/user/signup
130
- Geokit::Geocoders::geocoder_us = false
131
+ Geokit::Geocoders::UsGeocoder.key = 'username:password'
131
132
 
132
133
  # This is your authorization key for geocoder.ca.
133
134
  # To use the free service, the value can be set to nil or false. For
@@ -135,7 +136,13 @@ If you're using this gem by itself, here are the configuration options:
135
136
  # Geocoder.ca.
136
137
  # See http://geocoder.ca
137
138
  # and http://geocoder.ca/?register=1
138
- Geokit::Geocoders::geocoder_ca = false
139
+ Geokit::Geocoders::CaGeocoder.key = 'KEY'
140
+
141
+ # Most other geocoders need either no setup or a key
142
+ Geokit::Geocoders::BingGeocoder.key = ''
143
+ Geokit::Geocoders::GeonamesGeocoder.key = ''
144
+ Geokit::Geocoders::MapQuestGeocoder.key = ''
145
+ Geokit::Geocoders::YandexGeocoder.key = ''
139
146
 
140
147
  # require "external_geocoder.rb"
141
148
  # Please see the section "writing your own geocoders" for more information.
@@ -32,24 +32,11 @@ module Geokit
32
32
  module Geocoders
33
33
  @@proxy = nil
34
34
  @@request_timeout = nil
35
- @@bing = 'REPLACE_WITH_YOUR_BING_KEY'
36
- @@bing_options = {}
37
- @@yahoo_consumer_key = 'REPLACE_WITH_YOUR_YAHOO_BOSS_OAUTH_CONSUMER_KEY'
38
- @@yahoo_consumer_secret = 'REPLACE_WITH_YOUR_YAHOO_BOSS_OAUTH_CONSUMER_SECRET'
39
- @@yandex = nil
40
- @@mapquest = 'REPLACE_WITH_YOUR_MAPQUEST_KEY'
41
- @@google_client_id = nil
42
- @@google_cryptographic_key = nil
43
- @@google_channel = nil
44
- @@geocoder_us = false
45
- @@geocoder_ca = false
46
- @@geonames = false
47
35
  @@provider_order = [:google,:us]
48
36
  @@ip_provider_order = [:geo_plugin,:ip]
49
37
  @@logger=Logger.new(STDOUT)
50
38
  @@logger.level=Logger::INFO
51
39
  @@domain = nil
52
- @@osm = 'REPLACE_WITH_YOUR_OSM_KEY' #if needed
53
40
 
54
41
  def self.__define_accessors
55
42
  class_variables.each do |v|
@@ -89,6 +76,19 @@ module Geokit
89
76
  # The Geocoder base class which defines the interface to be used by all
90
77
  # other geocoders.
91
78
  class Geocoder
79
+ def self.config(*attrs)
80
+ attrs.each do |attr|
81
+ class_eval <<-METHOD
82
+ @@#{attr} = nil
83
+ def self.#{attr}=(value)
84
+ @@#{attr} = value
85
+ end
86
+ def self.#{attr}
87
+ @@#{attr}
88
+ end
89
+ METHOD
90
+ end
91
+ end
92
92
  # Main method which calls the do_geocode template method which subclasses
93
93
  # are responsible for implementing. Returns a populated GeoLoc or an
94
94
  # empty one with a failed success code.
@@ -3,6 +3,7 @@ module Geokit
3
3
  # Bing geocoder implementation. Requires the Geokit::Geocoders::bing variable to
4
4
  # contain a Bing Maps API key. Conforms to the interface set by the Geocoder class.
5
5
  class BingGeocoder < Geocoder
6
+ config :key, :options
6
7
 
7
8
  private
8
9
 
@@ -17,11 +18,10 @@ module Geokit
17
18
  end
18
19
 
19
20
  def self.submit_url(address)
20
- options = Geokit::Geocoders::bing_options
21
21
  culture = options && options[:culture]
22
22
  culture_string = culture ? "&c=#{culture}" : ''
23
23
  address_str = address.is_a?(GeoLoc) ? address.to_geocodeable_s : address
24
- "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(address_str)}?key=#{Geokit::Geocoders::bing}#{culture_string}&o=xml"
24
+ "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(address_str)}?key=#{key}#{culture_string}&o=xml"
25
25
  end
26
26
 
27
27
  def self.parse_xml(xml)
@@ -12,6 +12,7 @@
12
12
  module Geokit
13
13
  module Geocoders
14
14
  class CaGeocoder < Geocoder
15
+ config :key
15
16
 
16
17
  private
17
18
 
@@ -41,7 +42,7 @@ module Geokit
41
42
  args << "city=#{Geokit::Inflector::url_escape(loc.city)}" if loc.city
42
43
  args << "prov=#{loc.state}" if loc.state
43
44
  args << "postal=#{loc.zip}" if loc.zip
44
- args << "auth=#{Geokit::Geocoders::geocoder_ca}" if Geokit::Geocoders::geocoder_ca
45
+ args << "auth=#{key}" if key
45
46
  args << "geoit=xml"
46
47
  'http://geocoder.ca/?' + args.join('&')
47
48
  end
@@ -3,6 +3,7 @@ module Geokit
3
3
  # Another geocoding web service
4
4
  # http://www.geonames.org
5
5
  class GeonamesGeocoder < Geocoder
6
+ config :key
6
7
 
7
8
  private
8
9
 
@@ -23,8 +24,8 @@ module Geokit
23
24
  address_str.gsub!(/,/, " ")
24
25
  params = "/postalCodeSearch?placename=#{Geokit::Inflector::url_escape(address_str)}&maxRows=10"
25
26
 
26
- if Geokit::Geocoders::geonames
27
- "http://ws.geonames.net#{params}&username=#{Geokit::Geocoders::geonames}"
27
+ if key
28
+ "http://ws.geonames.net#{params}&username=#{key}"
28
29
  else
29
30
  "http://ws.geonames.org#{params}"
30
31
  end
@@ -1,6 +1,7 @@
1
1
  module Geokit
2
2
  module Geocoders
3
3
  class GoogleGeocoder < Geocoder
4
+ config :client_id, :cryptographic_key, :channel
4
5
 
5
6
  private
6
7
  # Template method which does the reverse-geocode lookup.
@@ -69,10 +70,10 @@ module Geokit
69
70
 
70
71
 
71
72
  def self.submit_url(query_string)
72
- if Geokit::Geocoders::google_client_id && Geokit::Geocoders::google_cryptographic_key
73
- channel = Geokit::Geocoders::google_channel ? "&channel=#{Geokit::Geocoders::google_channel}" : ''
74
- urlToSign = query_string + "&client=#{Geokit::Geocoders::google_client_id}" + channel
75
- signature = sign_gmap_bus_api_url(urlToSign, Geokit::Geocoders::google_cryptographic_key)
73
+ if client_id && cryptographic_key
74
+ channel = channel ? "&channel=#{channel}" : ''
75
+ urlToSign = query_string + "&client=#{client_id}" + channel
76
+ signature = sign_gmap_bus_api_url(urlToSign, cryptographic_key)
76
77
  "http://maps.googleapis.com" + urlToSign + "&signature=#{signature}"
77
78
  else
78
79
  "http://maps.google.com" + query_string
@@ -3,13 +3,14 @@ module Geokit
3
3
  # MapQuest geocoder implementation. Requires the Geokit::Geocoders::mapquest variable to
4
4
  # contain a MapQuest API key. Conforms to the interface set by the Geocoder class.
5
5
  class MapQuestGeocoder < Geocoder
6
+ config :key
6
7
 
7
8
  private
8
9
 
9
10
  # Template method which does the reverse-geocode lookup.
10
11
  def self.do_reverse_geocode(latlng)
11
12
  latlng=LatLng.normalize(latlng)
12
- url = "http://www.mapquestapi.com/geocoding/v1/reverse?key=#{Geokit::Geocoders::mapquest}&location=#{latlng.lat},#{latlng.lng}"
13
+ url = "http://www.mapquestapi.com/geocoding/v1/reverse?key=#{key}&location=#{latlng.lat},#{latlng.lng}"
13
14
  res = call_geocoder_service(url)
14
15
  return GeoLoc.new if !res.is_a?(Net::HTTPSuccess)
15
16
  json = res.body
@@ -20,7 +21,7 @@ module Geokit
20
21
  # Template method which does the geocode lookup.
21
22
  def self.do_geocode(address)
22
23
  address_str = address.is_a?(GeoLoc) ? address.to_geocodeable_s : address
23
- url = "http://www.mapquestapi.com/geocoding/v1/address?key=#{Geokit::Geocoders::mapquest}&location=#{Geokit::Inflector::url_escape(address_str)}"
24
+ url = "http://www.mapquestapi.com/geocoding/v1/address?key=#{key}&location=#{Geokit::Inflector::url_escape(address_str)}"
24
25
  res = call_geocoder_service(url)
25
26
  return GeoLoc.new if !res.is_a?(Net::HTTPSuccess)
26
27
  json = res.body
@@ -4,14 +4,15 @@
4
4
  module Geokit
5
5
  module Geocoders
6
6
  class UsGeocoder < Geocoder
7
+ config :key
7
8
 
8
9
  private
9
10
  def self.do_geocode(address)
10
11
  address_str = address.is_a?(GeoLoc) ? address.to_geocodeable_s : address
11
12
 
12
13
  query = (address_str =~ /^\d{5}(?:-\d{4})?$/ ? "zip" : "address") + "=#{Geokit::Inflector::url_escape(address_str)}"
13
- url = if Geokit::Geocoders::geocoder_us
14
- "http://#{Geokit::Geocoders::geocoder_us}@geocoder.us/member/service/csv/geocode"
14
+ url = if key
15
+ "http://#{key}@geocoder.us/member/service/csv/geocode"
15
16
  else
16
17
  "http://geocoder.us/service/csv/geocode"
17
18
  end
@@ -3,6 +3,7 @@ module Geokit
3
3
  # Yahoo geocoder implementation. Requires the Geokit::Geocoders::YAHOO variable to
4
4
  # contain a Yahoo API key. Conforms to the interface set by the Geocoder class.
5
5
  class YahooGeocoder < Geocoder
6
+ config :key, :secret
6
7
 
7
8
  private
8
9
  def self.submit_url(address)
@@ -10,8 +11,8 @@ module Geokit
10
11
  query_string = "?q=#{Geokit::Inflector::url_escape(address_str)}&flags=J"
11
12
 
12
13
  o = OauthUtil.new
13
- o.consumer_key = Geocoders::yahoo_consumer_key
14
- o.consumer_secret = Geocoders::yahoo_consumer_secret
14
+ o.consumer_key = key
15
+ o.consumer_secret = secret
15
16
  base = "http://yboss.yahooapis.com/geo/placefinder"
16
17
  parsed_url = URI.parse("#{base}#{query_string}")
17
18
  "#{base}?#{o.sign(parsed_url).query_string}"
@@ -3,6 +3,8 @@ module Geokit
3
3
  # Yandex geocoder implementation. Expects the Geokit::Geocoders::YANDEX variable to
4
4
  # contain a Yandex API key (optional). Conforms to the interface set by the Geocoder class.
5
5
  class YandexGeocoder < Geocoder
6
+ config :key
7
+
6
8
  private
7
9
 
8
10
  # Template method which does the geocode lookup.
@@ -16,7 +18,7 @@ module Geokit
16
18
 
17
19
  def self.submit_url(address_str)
18
20
  url = "http://geocode-maps.yandex.ru/1.x/?geocode=#{Geokit::Inflector::url_escape(address_str)}&format=json"
19
- url += "&key=#{Geokit::Geocoders::yandex}" if Geokit::Geocoders::yandex
21
+ url += "&key=#{key}" if key
20
22
  url
21
23
  end
22
24
 
@@ -1,3 +1,3 @@
1
1
  module Geokit
2
- VERSION = '1.8.0'
2
+ VERSION = '1.8.1'
3
3
  end
@@ -1,6 +1,6 @@
1
1
  require File.join(File.dirname(__FILE__), 'helper')
2
2
 
3
- Geokit::Geocoders::bing = 'AuWcmtBIoPeOubm9BtcN44hTmWw_wNoJ5NEO2L0RaKrGAUE_nlwciKAqwapdq7k7'
3
+ Geokit::Geocoders::BingGeocoder.key = 'AuWcmtBIoPeOubm9BtcN44hTmWw_wNoJ5NEO2L0RaKrGAUE_nlwciKAqwapdq7k7'
4
4
 
5
5
  class BingGeocoderTest < BaseGeocoderTest #:nodoc: all
6
6
 
@@ -15,7 +15,8 @@ class BingGeocoderTest < BaseGeocoderTest #:nodoc: all
15
15
  # the testing methods themselves
16
16
  def test_bing_full_address
17
17
  VCR.use_cassette('bing_full') do
18
- url = "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(@full_address)}?key=#{Geokit::Geocoders::bing}&o=xml"
18
+ key = Geokit::Geocoders::BingGeocoder.key
19
+ url = "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(@full_address)}?key=#{key}&o=xml"
19
20
  res = Geokit::Geocoders::BingGeocoder.geocode(@full_address)
20
21
  assert_equal "CA", res.state
21
22
  assert_equal "San Francisco", res.city
@@ -30,7 +31,8 @@ class BingGeocoderTest < BaseGeocoderTest #:nodoc: all
30
31
  def test_bing_full_address_au
31
32
  address = '440 King William Street, Adelaide, Australia'
32
33
  VCR.use_cassette('bing_full_au') do
33
- url = "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(address)}?key=#{Geokit::Geocoders::bing}&o=xml"
34
+ key = Geokit::Geocoders::BingGeocoder.key
35
+ url = "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(address)}?key=#{key}&o=xml"
34
36
  res = Geokit::Geocoders::BingGeocoder.geocode(address)
35
37
  assert_equal "SA", res.state
36
38
  assert_equal "Adelaide", res.city
@@ -46,7 +48,8 @@ class BingGeocoderTest < BaseGeocoderTest #:nodoc: all
46
48
  def test_bing_full_address_de
47
49
  address = "Platz der Republik 1, 11011 Berlin, Germany"
48
50
  VCR.use_cassette('bing_full_de') do
49
- url = "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(address)}?key=#{Geokit::Geocoders::bing}&o=xml"
51
+ key = Geokit::Geocoders::BingGeocoder.key
52
+ url = "http://dev.virtualearth.net/REST/v1/Locations/#{URI.escape(address)}?key=#{key}&o=xml"
50
53
  res = Geokit::Geocoders::BingGeocoder.geocode(address)
51
54
  assert_equal "BE", res.state
52
55
  assert_equal "Berlin", res.city
@@ -1,6 +1,6 @@
1
1
  require File.join(File.dirname(__FILE__), 'helper')
2
2
 
3
- Geokit::Geocoders::geocoder_ca = "SOMEKEYVALUE"
3
+ Geokit::Geocoders::CaGeocoder::key = "SOMEKEYVALUE"
4
4
 
5
5
  class CaGeocoderTest < BaseGeocoderTest #:nodoc: all
6
6
 
@@ -1,10 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  require File.join(File.dirname(__FILE__), 'helper')
3
3
 
4
- Geokit::Geocoders::google_client_id = nil
5
- Geokit::Geocoders::google_cryptographic_key = nil
6
- Geokit::Geocoders::google_channel = nil
7
-
8
4
  class GoogleGeocoderTest < BaseGeocoderTest #:nodoc: all
9
5
 
10
6
  def setup
@@ -32,11 +28,11 @@ class GoogleGeocoderTest < BaseGeocoderTest #:nodoc: all
32
28
  # Example from:
33
29
  # https://developers.google.com/maps/documentation/business/webservices#signature_examples
34
30
  def test_google_signature_and_url
35
- Geokit::Geocoders::google_client_id = 'clientID'
36
- Geokit::Geocoders::google_cryptographic_key = 'vNIXE0xscrmjlyV-12Nj_BvUPaw='
31
+ Geokit::Geocoders::GoogleGeocoder.client_id = 'clientID'
32
+ Geokit::Geocoders::GoogleGeocoder.cryptographic_key = 'vNIXE0xscrmjlyV-12Nj_BvUPaw='
37
33
  url = Geokit::Geocoders::GoogleGeocoder.send(:submit_url, '/maps/api/geocode/json?address=New+York&sensor=false')
38
- Geokit::Geocoders::google_client_id = nil
39
- Geokit::Geocoders::google_cryptographic_key = nil
34
+ Geokit::Geocoders::GoogleGeocoder.client_id = nil
35
+ Geokit::Geocoders::GoogleGeocoder.cryptographic_key = nil
40
36
  assert_equal 'http://maps.googleapis.com/maps/api/geocode/json?address=New+York&sensor=false&client=clientID&signature=KrU1TzVQM7Ur0i8i7K3huiw3MsA=', url
41
37
  end
42
38
 
@@ -1,8 +1,6 @@
1
1
  # encoding: utf-8
2
2
  require File.join(File.dirname(__FILE__), 'helper')
3
3
 
4
- Geokit::Geocoders::osm = 'OSM'
5
-
6
4
  class OSMGeocoderTest < BaseGeocoderTest #:nodoc: all
7
5
  OSM_FULL=<<-EOF.strip
8
6
  [{"place_id":"425554497","licence":"Data Copyright OpenStreetMap Contributors, Some Rights Reserved. CC-BY-SA 2.0.","boundingbox":["37.792341","37.792441","-122.394074","-122.393974"],"lat":"37.792391","lon":"-122.394024","display_name":"100, Spear Street, Financial District, San Francisco, California, 94105, United States of America","class":"place","type":"house","address":{"house_number":"100","road":"Spear Street","place":"Financial District","city":"San Francisco","county":"San Francisco","state":"California","postcode":"94105","country":"United States of America","country_code":"us"}}]
@@ -1,6 +1,6 @@
1
1
  require File.join(File.dirname(__FILE__), 'helper')
2
2
 
3
- Geokit::Geocoders::geocoder_us = nil
3
+ Geokit::Geocoders::UsGeocoder.key = nil
4
4
 
5
5
  class UsGeocoderTest < BaseGeocoderTest #:nodoc: all
6
6
 
@@ -1,7 +1,7 @@
1
1
  require File.join(File.dirname(__FILE__), 'helper')
2
2
 
3
- Geokit::Geocoders::yahoo_consumer_key = 'dj0yJmk9cXByQVN2WHZmTVhDJmQ9WVdrOVZscG1WVWhOTldrbWNHbzlNakF6TlRJME16UTJNZy0tJnM9Y29uc3VtZXJzZWNyZXQmeD0zNg--'
4
- Geokit::Geocoders::yahoo_consumer_secret = 'SECRET'
3
+ Geokit::Geocoders::YahooGeocoder.key = 'dj0yJmk9cXByQVN2WHZmTVhDJmQ9WVdrOVZscG1WVWhOTldrbWNHbzlNakF6TlRJME16UTJNZy0tJnM9Y29uc3VtZXJzZWNyZXQmeD0zNg--'
4
+ Geokit::Geocoders::YahooGeocoder.secret = 'SECRET'
5
5
 
6
6
  class YahooGeocoderTest < BaseGeocoderTest #:nodoc: all
7
7
  def setup
@@ -1,8 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  require File.join(File.dirname(__FILE__), 'helper')
3
3
 
4
- # Geokit::Geocoders::yandex = 'yandex'
5
-
6
4
  class YandexGeocoderTest < BaseGeocoderTest #:nodoc: all
7
5
  YANDEX_FULL=<<-EOF.strip
8
6
  {"response":{"GeoObjectCollection":{"metaDataProperty":{"GeocoderResponseMetaData":{"request":"Москва, улица Новый Арбат, дом 24","found":"1","results":"10"}},"featureMember":[{"GeoObject":{"metaDataProperty":{"GeocoderMetaData":{"kind":"house","text":"Россия, Москва, улица Новый Арбат, 24","precision":"exact","AddressDetails":{"Country":{"AddressLine":"Москва, улица Новый Арбат, 24","CountryNameCode":"RU","CountryName":"Россия","Locality":{"LocalityName":"Москва","Thoroughfare":{"ThoroughfareName":"улица Новый Арбат","Premise":{"PremiseNumber":"24"}}}}}}},"description":"Москва, Россия","name":"улица Новый Арбат, 24","boundedBy":{"Envelope":{"lowerCorner":"37.585565 55.751928","upperCorner":"37.589662 55.754238"}},"Point":{"pos":"37.587614 55.753083"}}}]}}}
metadata CHANGED
@@ -1,9 +1,9 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: geokit
3
- version: !ruby/object:Gem::Version
4
- version: 1.8.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.8.1
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Michael Noack
8
8
  - James Cox
9
9
  - Andre Lewis
@@ -11,143 +11,98 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2013-12-26 00:00:00.000000000 Z
15
- dependencies:
16
- - !ruby/object:Gem::Dependency
17
- name: multi_json
18
- requirement: !ruby/object:Gem::Requirement
19
- requirements:
20
- - - '>='
21
- - !ruby/object:Gem::Version
14
+
15
+ date: 2013-12-26 00:00:00 Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
18
+ version_requirements: &id001 !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
22
  version: 1.3.2
23
23
  type: :runtime
24
+ name: multi_json
24
25
  prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - '>='
28
- - !ruby/object:Gem::Version
29
- version: 1.3.2
30
- - !ruby/object:Gem::Dependency
31
- name: bundler
32
- requirement: !ruby/object:Gem::Requirement
33
- requirements:
34
- - - '>'
35
- - !ruby/object:Gem::Version
36
- version: '1.0'
26
+ requirement: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ version_requirements: &id002 !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">"
31
+ - !ruby/object:Gem::Version
32
+ version: "1.0"
37
33
  type: :development
34
+ name: bundler
38
35
  prerelease: false
39
- version_requirements: !ruby/object:Gem::Requirement
40
- requirements:
41
- - - '>'
42
- - !ruby/object:Gem::Version
43
- version: '1.0'
44
- - !ruby/object:Gem::Dependency
45
- name: simplecov
46
- requirement: !ruby/object:Gem::Requirement
47
- requirements:
48
- - - '>='
49
- - !ruby/object:Gem::Version
50
- version: '0'
36
+ requirement: *id002
37
+ - !ruby/object:Gem::Dependency
38
+ version_requirements: &id003 !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - &id004
41
+ - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "0"
51
44
  type: :development
45
+ name: simplecov
52
46
  prerelease: false
53
- version_requirements: !ruby/object:Gem::Requirement
54
- requirements:
55
- - - '>='
56
- - !ruby/object:Gem::Version
57
- version: '0'
58
- - !ruby/object:Gem::Dependency
59
- name: simplecov-rcov
60
- requirement: !ruby/object:Gem::Requirement
61
- requirements:
62
- - - '>='
63
- - !ruby/object:Gem::Version
64
- version: '0'
47
+ requirement: *id003
48
+ - !ruby/object:Gem::Dependency
49
+ version_requirements: &id005 !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - *id004
65
52
  type: :development
53
+ name: simplecov-rcov
66
54
  prerelease: false
67
- version_requirements: !ruby/object:Gem::Requirement
68
- requirements:
69
- - - '>='
70
- - !ruby/object:Gem::Version
71
- version: '0'
72
- - !ruby/object:Gem::Dependency
73
- name: rake
74
- requirement: !ruby/object:Gem::Requirement
75
- requirements:
76
- - - '>='
77
- - !ruby/object:Gem::Version
78
- version: '0'
55
+ requirement: *id005
56
+ - !ruby/object:Gem::Dependency
57
+ version_requirements: &id006 !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - *id004
79
60
  type: :development
61
+ name: rake
80
62
  prerelease: false
81
- version_requirements: !ruby/object:Gem::Requirement
82
- requirements:
83
- - - '>='
84
- - !ruby/object:Gem::Version
85
- version: '0'
86
- - !ruby/object:Gem::Dependency
87
- name: mocha
88
- requirement: !ruby/object:Gem::Requirement
89
- requirements:
90
- - - '>='
91
- - !ruby/object:Gem::Version
92
- version: '0'
63
+ requirement: *id006
64
+ - !ruby/object:Gem::Dependency
65
+ version_requirements: &id007 !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - *id004
93
68
  type: :development
69
+ name: mocha
94
70
  prerelease: false
95
- version_requirements: !ruby/object:Gem::Requirement
96
- requirements:
97
- - - '>='
98
- - !ruby/object:Gem::Version
99
- version: '0'
100
- - !ruby/object:Gem::Dependency
101
- name: coveralls
102
- requirement: !ruby/object:Gem::Requirement
103
- requirements:
104
- - - '>='
105
- - !ruby/object:Gem::Version
106
- version: '0'
71
+ requirement: *id007
72
+ - !ruby/object:Gem::Dependency
73
+ version_requirements: &id008 !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - *id004
107
76
  type: :development
77
+ name: coveralls
108
78
  prerelease: false
109
- version_requirements: !ruby/object:Gem::Requirement
110
- requirements:
111
- - - '>='
112
- - !ruby/object:Gem::Version
113
- version: '0'
114
- - !ruby/object:Gem::Dependency
115
- name: vcr
116
- requirement: !ruby/object:Gem::Requirement
117
- requirements:
118
- - - '>='
119
- - !ruby/object:Gem::Version
120
- version: '0'
79
+ requirement: *id008
80
+ - !ruby/object:Gem::Dependency
81
+ version_requirements: &id009 !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - *id004
121
84
  type: :development
85
+ name: vcr
122
86
  prerelease: false
123
- version_requirements: !ruby/object:Gem::Requirement
124
- requirements:
125
- - - '>='
126
- - !ruby/object:Gem::Version
127
- version: '0'
128
- - !ruby/object:Gem::Dependency
129
- name: webmock
130
- requirement: !ruby/object:Gem::Requirement
131
- requirements:
132
- - - '>='
133
- - !ruby/object:Gem::Version
134
- version: '0'
87
+ requirement: *id009
88
+ - !ruby/object:Gem::Dependency
89
+ version_requirements: &id010 !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - *id004
135
92
  type: :development
93
+ name: webmock
136
94
  prerelease: false
137
- version_requirements: !ruby/object:Gem::Requirement
138
- requirements:
139
- - - '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
142
- description: Geokit provides geocoding and distance calculation in an easy-to-use
143
- API
144
- email:
95
+ requirement: *id010
96
+ description: Geokit provides geocoding and distance calculation in an easy-to-use API
97
+ email:
145
98
  - michael+geokit@noack.com.au
146
99
  executables: []
100
+
147
101
  extensions: []
148
- extra_rdoc_files:
102
+
103
+ extra_rdoc_files:
149
104
  - README.markdown
150
- files:
105
+ files:
151
106
  - .gitignore
152
107
  - .travis.yml
153
108
  - CHANGELOG.md
@@ -227,32 +182,30 @@ files:
227
182
  - test/test_yahoo_geocoder.rb
228
183
  - test/test_yandex_geocoder.rb
229
184
  homepage: http://github.com/geokit/geokit
230
- licenses:
185
+ licenses:
231
186
  - MIT
232
187
  metadata: {}
188
+
233
189
  post_install_message:
234
- rdoc_options:
190
+ rdoc_options:
235
191
  - --main
236
192
  - README.markdown
237
- require_paths:
193
+ require_paths:
238
194
  - lib
239
- required_ruby_version: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - '>='
242
- - !ruby/object:Gem::Version
243
- version: '0'
244
- required_rubygems_version: !ruby/object:Gem::Requirement
245
- requirements:
246
- - - '>='
247
- - !ruby/object:Gem::Version
248
- version: '0'
195
+ required_ruby_version: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - *id004
198
+ required_rubygems_version: !ruby/object:Gem::Requirement
199
+ requirements:
200
+ - *id004
249
201
  requirements: []
202
+
250
203
  rubyforge_project:
251
- rubygems_version: 2.1.11
204
+ rubygems_version: 2.0.14
252
205
  signing_key:
253
206
  specification_version: 4
254
- summary: 'Geokit: encoding and distance calculation gem'
255
- test_files:
207
+ summary: "Geokit: encoding and distance calculation gem"
208
+ test_files:
256
209
  - test/helper.rb
257
210
  - test/test_base_geocoder.rb
258
211
  - test/test_bing_geocoder.rb