From 52d98651f70cac52b8d73cc685cd851c93b9a435 Mon Sep 17 00:00:00 2001
From: Alex Reisner <alex@alexreisner.com>
Date: Wed, 6 Aug 2014 11:46:39 -0400
Subject: [PATCH] Remove :cloudmade lookup.

No longer documented. Removing to avoid confusion.
See: http://notes.ericjiang.com/posts/741
---
 CHANGELOG.md                      |  1 +
 README.md                         | 11 ---------
 lib/geocoder/lookup.rb            |  1 -
 lib/geocoder/lookups/cloudmade.rb | 35 ---------------------------
 lib/geocoder/results/cloudmade.rb | 39 -------------------------------
 test/unit/lookup_test.rb          |  2 +-
 6 files changed, 2 insertions(+), 87 deletions(-)
 delete mode 100644 lib/geocoder/lookups/cloudmade.rb
 delete mode 100644 lib/geocoder/results/cloudmade.rb

diff --git a/CHANGELOG.md b/CHANGELOG.md
index b0bf5e93..ee1e9634 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,7 @@ Major changes to Geocoder for each release. Please see the Git log for complete
 1.2.4 (???)
 -------------------
 * Add OpenCageData geocoder (thanks github.com/mtmail).
+* Remove CloudMade geocoder.
 
 1.2.3 (2014 Jul 11)
 -------------------
diff --git a/README.md b/README.md
index 2dc1605e..343bba8f 100644
--- a/README.md
+++ b/README.md
@@ -548,17 +548,6 @@ Data Science Toolkit provides an API whose reponse format is like Google's but w
 * **Limitations**: Only good for non-commercial use. For commercial usage please check http://developer.baidu.com/map/question.htm#qa0013
 * **Notes**: To use Baidu set `Geocoder.configure(:lookup => :baidu, :api_key => "your_api_key")`.
 
-#### CloudMade (`:cloudmade`)
-
-* **API key**: required
-* **Quota**: 100,000 free requests, then purchase 100,000 more for $15
-* **Region**: world
-* **SSL support**: yes ($5 per 100,000 requests)
-* **Languages**: en
-* **Documentation**: http://cloudmade.com/documentation/geocoding
-* **Terms of Service**: http://cloudmade.com/api-terms-of-service
-* **Limitations**: ?
-
 #### Geocodio (`:geocodio`)
 
 * **API key**: required
diff --git a/lib/geocoder/lookup.rb b/lib/geocoder/lookup.rb
index eb1d4e5e..b2dcd136 100644
--- a/lib/geocoder/lookup.rb
+++ b/lib/geocoder/lookup.rb
@@ -36,7 +36,6 @@ module Geocoder
         :ovi,
         :here,
         :baidu,
-        :cloudmade,
         :geocodio,
         :smarty_streets,
         :test
diff --git a/lib/geocoder/lookups/cloudmade.rb b/lib/geocoder/lookups/cloudmade.rb
deleted file mode 100644
index afb6993e..00000000
--- a/lib/geocoder/lookups/cloudmade.rb
+++ /dev/null
@@ -1,35 +0,0 @@
-require 'geocoder/lookups/base'
-require 'geocoder/results/cloudmade'
-
-module Geocoder::Lookup
-  class Cloudmade < Base
-
-    def name
-      "Cloudmade"
-    end
-
-    def query_url(query)
-      "http://geocoding.cloudmade.com/#{configuration.api_key}/geocoding/v2/find.js?#{url_query_string(query)}"
-    end
-
-    def required_api_key_parts
-      ["key"]
-    end
-
-    private
-
-    def results(query)
-      data = fetch_data(query)
-      (data && data['features']) || []
-    end
-
-    def query_url_params(query)
-      {
-        :query => query.sanitized_text,
-        :return_location => true,
-        :return_geometry => false
-      }.merge(super)
-    end
-
-  end
-end
diff --git a/lib/geocoder/results/cloudmade.rb b/lib/geocoder/results/cloudmade.rb
deleted file mode 100644
index 4f62146e..00000000
--- a/lib/geocoder/results/cloudmade.rb
+++ /dev/null
@@ -1,39 +0,0 @@
-require 'geocoder/results/base'
-
-module Geocoder::Result
-  class Cloudmade < Base
-
-    def coordinates
-      @data["centroid"]["coordinates"]
-    end
-
-    def street
-      @data["location"]["road"]
-    end
-
-    def city
-      @data["location"]["city"]
-    end
-    
-    def state
-      @data["location"]["county"]
-    end
-    alias_method :state_code, :state
-
-    def country
-      @data["location"]["country"]
-    end
-    alias_method :country_code, :country
-
-    def postal_code
-      @data["location"]["postcode"]
-    end
-
-    def address
-      [street, city, state, postal_code, country].compact.reject{|s| s.length == 0 }.join(", ")
-    end
-
-  end
-end
-
-
diff --git a/test/unit/lookup_test.rb b/test/unit/lookup_test.rb
index 7515b599..b1b30cb9 100644
--- a/test/unit/lookup_test.rb
+++ b/test/unit/lookup_test.rb
@@ -87,7 +87,7 @@ class LookupTest < GeocoderTestCase
   def test_returns_empty_array_on_invalid_key
     silence_warnings do
       #Geocoder::Lookup.all_services_except_test.each do |l|
-      [:bing, :yahoo, :yandex, :maxmind, :cloudmade, :baidu, :baidu_ip].each do |l|
+      [:bing, :yahoo, :yandex, :maxmind, :baidu, :baidu_ip].each do |l|
         Geocoder.configure(:lookup => l)
         set_api_key!(l)
         assert_equal [], Geocoder.search("invalid key")
-- 
GitLab