gibbon 0.2.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of gibbon might be problematic. Click here for more details.

data/Gemfile CHANGED
@@ -14,4 +14,5 @@ group :development do
14
14
  gem "httparty", "> 0.6.0"
15
15
  gem "mocha", "> 0.9.11"
16
16
  gem "activesupport", ">= 3.0.0"
17
+ gem "ruby-debug19", :require => "ruby-debug"
17
18
  end
@@ -3,6 +3,8 @@ GEM
3
3
  specs:
4
4
  activesupport (3.1.0)
5
5
  multi_json (~> 1.0)
6
+ archive-tar-minitar (0.5.2)
7
+ columnize (0.3.2)
6
8
  crack (0.1.8)
7
9
  git (1.2.5)
8
10
  httparty (0.7.8)
@@ -12,10 +14,22 @@ GEM
12
14
  git (>= 1.2.5)
13
15
  rake
14
16
  json (1.5.4)
17
+ linecache19 (0.5.12)
18
+ ruby_core_source (>= 0.1.4)
15
19
  mocha (0.9.12)
16
20
  multi_json (1.0.3)
17
21
  rake (0.9.2)
18
22
  rcov (0.9.10)
23
+ ruby-debug-base19 (0.11.25)
24
+ columnize (>= 0.3.1)
25
+ linecache19 (>= 0.5.11)
26
+ ruby_core_source (>= 0.1.4)
27
+ ruby-debug19 (0.11.6)
28
+ columnize (>= 0.3.1)
29
+ linecache19 (>= 0.5.11)
30
+ ruby-debug-base19 (>= 0.11.19)
31
+ ruby_core_source (0.1.5)
32
+ archive-tar-minitar (>= 0.5.2)
19
33
  shoulda (2.11.3)
20
34
 
21
35
  PLATFORMS
@@ -29,4 +43,5 @@ DEPENDENCIES
29
43
  json (> 1.4.0)
30
44
  mocha (> 0.9.11)
31
45
  rcov
46
+ ruby-debug19
32
47
  shoulda
@@ -17,7 +17,7 @@ There are a few ways to use Gibbon:
17
17
  You can create an instance of the API wrapper:
18
18
 
19
19
  gb = Gibbon.new("your_api_key")
20
-
20
+
21
21
  You can set your api_key globally and call class methods:
22
22
 
23
23
  Gibbon.api_key = "your_api_key"
@@ -27,7 +27,10 @@ You can also set the environment variable 'MC_API_KEY' and Gibbon will use it wh
27
27
 
28
28
  u = Gibbon.new
29
29
 
30
- Fetching data is as simple as calling API methods directly on the wrapper object.
30
+ Fetching data is as simple as calling API methods directly on the wrapper
31
+ object. The API calls may be made with either camelcase or underscore
32
+ separated formatting as you see in the "More Advanced Examples" section below.
33
+
31
34
  Check the API [documentation](http://apidocs.mailchimp.com/api/1.3/) for details.
32
35
 
33
36
  ### Fetching Campaigns
@@ -66,6 +69,24 @@ Gibbon defaults to a 30 second timeout. You can optionally set your own timeout
66
69
 
67
70
  gb.timeout = 5
68
71
 
72
+ ### Export API usage
73
+
74
+ In addition to the standard API you can make calls to the
75
+ [MailChimp Export API](http://apidocs.mailchimp.com/export/1.0/) using a GibbonExport object. Given an existing
76
+ Gibbon object you can request a new GibbonExporter object:
77
+
78
+ g = Gibbon.new(@api_key)
79
+ gibbon_export = g.get_exporter
80
+
81
+ or you can construct a new object directly:
82
+
83
+ gibbon_export = GibbonExport.new(@api_key)
84
+
85
+ Calling Export API functions is identical to making standard API calls but the
86
+ return value is an Enumerator which loops over the lines returned from the
87
+ Export API. This is because the data returned from the Export API is a stream
88
+ of JSON objects rather than a single JSON array.
89
+
69
90
  ### Notes
70
91
 
71
92
  As of 0.1.6, gibbon uses ActiveSupport::JSON.decode(). This means code that checked for weird API responses (like "true"
@@ -79,9 +100,11 @@ as opposed to the string the MailChimp API returns. I understand the extra depen
79
100
  * [jlxw](https://github.com/jlxw)
80
101
  * [Jon McCartie](https://github.com/jmccartie)
81
102
  * [Calvin Yu](https://github.com/cyu)
103
+ * [Dave Worth](https://github.com/daveworth)
104
+ * [Mike Skalnik](https://github.com/skalnik)
82
105
  * Rails for camelize gsub
83
106
 
84
107
  ##Copyrights
85
108
 
86
109
  * Copyright (c) 2010 Amro Mousa. See LICENSE.txt for details.
87
- * MailChimp (c) 2001-2010 The Rocket Science Group.
110
+ * MailChimp (c) 2001-2010 The Rocket Science Group.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 0.3.0
@@ -4,14 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{gibbon}
8
- s.version = "0.2.1"
7
+ s.name = "gibbon"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = [%q{Amro Mousa}]
12
- s.date = %q{2011-09-06}
13
- s.description = %q{Gibbon is a simple API wrapper for interacting with MailChimp API version 1.3.}
14
- s.email = %q{amromousa@gmail.com}
11
+ s.authors = ["Amro Mousa"]
12
+ s.date = "2011-10-02"
13
+ s.description = "Gibbon is a simple API wrapper for interacting with MailChimp API version 1.3."
14
+ s.email = "amromousa@gmail.com"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.markdown"
@@ -29,11 +29,11 @@ Gem::Specification.new do |s|
29
29
  "test/helper.rb",
30
30
  "test/test_gibbon.rb"
31
31
  ]
32
- s.homepage = %q{http://github.com/amro/gibbon}
33
- s.licenses = [%q{MIT}]
34
- s.require_paths = [%q{lib}]
35
- s.rubygems_version = %q{1.8.9}
36
- s.summary = %q{Gibbon is a simple API wrapper for interacting with MailChimp API 1.3}
32
+ s.homepage = "http://github.com/amro/gibbon"
33
+ s.licenses = ["MIT"]
34
+ s.require_paths = ["lib"]
35
+ s.rubygems_version = "1.8.10"
36
+ s.summary = "Gibbon is a simple API wrapper for interacting with MailChimp API 1.3"
37
37
  s.test_files = [
38
38
  "test/helper.rb",
39
39
  "test/test_gibbon.rb"
@@ -51,6 +51,7 @@ Gem::Specification.new do |s|
51
51
  s.add_development_dependency(%q<httparty>, ["> 0.6.0"])
52
52
  s.add_development_dependency(%q<mocha>, ["> 0.9.11"])
53
53
  s.add_development_dependency(%q<activesupport>, [">= 3.0.0"])
54
+ s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
54
55
  s.add_runtime_dependency(%q<httparty>, ["> 0.6.0"])
55
56
  s.add_runtime_dependency(%q<activesupport>, ["> 3.0.0"])
56
57
  s.add_runtime_dependency(%q<json>, ["> 1.4.0"])
@@ -66,6 +67,7 @@ Gem::Specification.new do |s|
66
67
  s.add_dependency(%q<httparty>, ["> 0.6.0"])
67
68
  s.add_dependency(%q<mocha>, ["> 0.9.11"])
68
69
  s.add_dependency(%q<activesupport>, [">= 3.0.0"])
70
+ s.add_dependency(%q<ruby-debug19>, [">= 0"])
69
71
  s.add_dependency(%q<httparty>, ["> 0.6.0"])
70
72
  s.add_dependency(%q<activesupport>, ["> 3.0.0"])
71
73
  s.add_dependency(%q<json>, ["> 1.4.0"])
@@ -82,6 +84,7 @@ Gem::Specification.new do |s|
82
84
  s.add_dependency(%q<httparty>, ["> 0.6.0"])
83
85
  s.add_dependency(%q<mocha>, ["> 0.9.11"])
84
86
  s.add_dependency(%q<activesupport>, [">= 3.0.0"])
87
+ s.add_dependency(%q<ruby-debug19>, [">= 0"])
85
88
  s.add_dependency(%q<httparty>, ["> 0.6.0"])
86
89
  s.add_dependency(%q<activesupport>, ["> 3.0.0"])
87
90
  s.add_dependency(%q<json>, ["> 1.4.0"])
@@ -21,10 +21,10 @@ class Gibbon
21
21
  end
22
22
 
23
23
  def base_api_url
24
- dc = @api_key.blank? ? '' : "#{@api_key.split("-").last}."
25
- "https://#{dc}api.mailchimp.com/1.3/?method="
24
+ "https://#{dc_from_api_key}api.mailchimp.com/1.3/?method="
26
25
  end
27
26
 
27
+
28
28
  def call(method, params = {})
29
29
  url = base_api_url + method
30
30
  params = @default_params.merge(params)
@@ -46,6 +46,10 @@ class Gibbon
46
46
  call(method, args)
47
47
  end
48
48
 
49
+ def get_exporter
50
+ GibbonExport.new(@api_key, @default_params)
51
+ end
52
+
49
53
  class << self
50
54
  attr_accessor :api_key
51
55
 
@@ -53,4 +57,27 @@ class Gibbon
53
57
  new(self.api_key).send(sym, *args, &block)
54
58
  end
55
59
  end
56
- end
60
+
61
+ protected
62
+ def dc_from_api_key
63
+ (@api_key.blank? or @api_key !~ /-/) ? '' : "#{@api_key.split("-").last}."
64
+ end
65
+ end
66
+
67
+ class GibbonExport < Gibbon
68
+ def initialize(api_key = nil, extra_params = {})
69
+ super(api_key, extra_params)
70
+ end
71
+
72
+ def export_api_url
73
+ "http://#{dc_from_api_key}api.mailchimp.com/export/1.0/"
74
+ end
75
+
76
+ def call(method, params = {})
77
+ url = export_api_url + method + "/"
78
+ params = @default_params.merge(params)
79
+ response = self.class.post(url, :body => params, :timeout => @timeout)
80
+
81
+ response.body.lines
82
+ end
83
+ end
@@ -1,29 +1,37 @@
1
1
  require 'helper'
2
+ require 'cgi'
3
+ require 'ruby-debug'
2
4
 
3
5
  class TestGibbon < Test::Unit::TestCase
4
6
 
5
7
  context "build api url" do
6
-
7
8
  setup do
8
- @gibbon = Gibbon::API.new
9
+ @gibbon = Gibbon.new
10
+ @url = "https://api.mailchimp.com/1.3/?method=sayHello"
9
11
  end
10
12
 
11
13
  should "handle empty api key" do
12
- expect_post("https://api.mailchimp.com/1.3/?method=sayHello", {"apikey" => nil})
14
+ expect_post(@url, {"apikey" => nil})
15
+ @gibbon.say_hello
16
+ end
13
17
 
18
+ should "handle malformed api key" do
19
+ @api_key = "123"
20
+ @gibbon.api_key = @api_key
21
+ expect_post(@url, {"apikey" => @api_key})
14
22
  @gibbon.say_hello
15
23
  end
16
24
 
17
25
  should "handle timeout" do
18
- expect_post("https://api.mailchimp.com/1.3/?method=sayHello", {"apikey" => nil}, 120)
26
+ expect_post(@url, {"apikey" => nil}, 120)
19
27
  @gibbon.timeout=120
20
28
  @gibbon.say_hello
21
29
  end
22
30
 
23
31
  should "handle api key with dc" do
24
- @gibbon.apikey="TESTKEY-us1"
25
- expect_post("https://us1.api.mailchimp.com/1.3/?method=sayHello", {"apikey" => "TESTKEY-us1"})
26
-
32
+ @api_key = "TESTKEY-us1"
33
+ @gibbon.api_key = @api_key
34
+ expect_post("https://us1.api.mailchimp.com/1.3/?method=sayHello", {"apikey" => @api_key})
27
35
  @gibbon.say_hello
28
36
  end
29
37
  end
@@ -31,44 +39,88 @@ class TestGibbon < Test::Unit::TestCase
31
39
  context "build api body" do
32
40
  setup do
33
41
  @key = "TESTKEY-us1"
34
- @gibbon = Gibbon::API.new(@key)
42
+ @gibbon = Gibbon.new(@key)
35
43
  @url = "https://us1.api.mailchimp.com/1.3/?method=sayHello"
44
+ @body = {"apikey" => @key}
36
45
  end
37
46
 
38
47
  should "escape string parameters" do
39
- expect_post(@url, {"apikey" => @key, "message" => "simon+says"})
40
- @gibbon.say_hello(:message => "simon says")
48
+ @message = "simon says"
49
+ expect_post(@url, @body.merge("message" => CGI::escape(@message)))
50
+ @gibbon.say_hello(:message => @message)
41
51
  end
42
52
 
43
53
  should "escape string parameters in an array" do
44
- expect_post(@url, {"apikey" => @key, "messages" => ["simon+says", "do+this"]})
54
+ expect_post(@url, @body.merge("messages" => ["simon+says", "do+this"]))
45
55
  @gibbon.say_hello(:messages => ["simon says", "do this"])
46
56
  end
47
57
 
48
58
  should "escape string parameters in a hash" do
49
- expect_post(@url, {"apikey" => @key, "messages" => {"simon+says" => "do+this"}})
59
+ expect_post(@url, @body.merge("messages" => {"simon+says" => "do+this"}))
50
60
  @gibbon.say_hello(:messages => {"simon says" => "do this"})
51
61
  end
52
62
 
53
63
  should "escape nested string parameters" do
54
- expect_post(@url, {"apikey" => @key, "messages" => {"simon+says" => ["do+this", "and+this"]}})
64
+ expect_post(@url, @body.merge("messages" => {"simon+says" => ["do+this", "and+this"]}))
55
65
  @gibbon.say_hello(:messages => {"simon says" => ["do this", "and this"]})
56
66
  end
57
67
 
58
68
  should "pass through non string parameters" do
59
- expect_post(@url, {"apikey" => @key, "fee" => 99})
69
+ expect_post(@url, @body.merge("fee" => 99))
60
70
  @gibbon.say_hello(:fee => 99)
61
71
  end
72
+ end
62
73
 
74
+ context "Gibbon instances" do
75
+ setup do
76
+ @key = "TESTKEY-us1"
77
+ @gibbon = Gibbon.new(@key)
78
+ @url = "https://us1.api.mailchimp.com/1.3/?method=sayHello"
79
+ @body = {"apikey" => @key}
80
+ end
81
+
82
+ should "produce a good exporter" do
83
+ @exporter = @gibbon.get_exporter
84
+ assert_equal(@exporter.api_key, @gibbon.api_key)
85
+ end
86
+ end
87
+
88
+ context "export API" do
89
+ setup do
90
+ @key = "TESTKEY-us1"
91
+ @gibbon = GibbonExport.new(@key)
92
+ @url = "http://us1.api.mailchimp.com/export/1.0/"
93
+ @body = {:apikey => @key}
94
+ @returns = Struct.new(:body).new("")
95
+ end
96
+
97
+ should "handle api key with dc" do
98
+ @api_key = "TESTKEY-us2"
99
+ @gibbon = GibbonExport.new(@api_key)
100
+
101
+ params = {:body => {:apikey => @api_key}, :timeout => nil}
102
+ url = @url.gsub('us1', 'us2') + "sayHello/"
103
+ GibbonExport.expects(:post).with(url, params).returns(@returns)
104
+ @gibbon.say_hello
105
+ end
106
+
107
+ should "not escape string parameters" do
108
+ @param = "list id"
109
+
110
+ params = {:body => @body.merge(:id => 'list id'), :timeout => nil}
111
+ GibbonExport.expects(:post).with(@url + 'sayHello/', params).returns(@returns)
112
+ @gibbon.say_hello(:id => @param)
113
+ end
63
114
  end
64
115
 
65
116
  private
66
117
 
67
118
  def expect_post(expected_url, expected_body, expected_timeout=nil)
68
- Gibbon::API.expects(:post).with do |url, opts|
119
+ Gibbon.expects(:post).with do |url, opts|
69
120
  url == expected_url &&
70
121
  JSON.parse(URI::decode(opts[:body])) == expected_body &&
71
122
  opts[:timeout] == expected_timeout
72
123
  end.returns(Struct.new(:body).new("") )
73
124
  end
125
+
74
126
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gibbon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-09-06 00:00:00.000000000Z
12
+ date: 2011-10-02 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: shoulda
16
- requirement: &70122094225940 !ruby/object:Gem::Requirement
16
+ requirement: &70158318240040 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70122094225940
24
+ version_requirements: *70158318240040
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &70122094225420 !ruby/object:Gem::Requirement
27
+ requirement: &70158318239400 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.0.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70122094225420
35
+ version_requirements: *70158318239400
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: jeweler
38
- requirement: &70122094224880 !ruby/object:Gem::Requirement
38
+ requirement: &70158318238680 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.5.1
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70122094224880
46
+ version_requirements: *70158318238680
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rcov
49
- requirement: &70122094224380 !ruby/object:Gem::Requirement
49
+ requirement: &70158318237620 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70122094224380
57
+ version_requirements: *70158318237620
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: json
60
- requirement: &70122094223900 !ruby/object:Gem::Requirement
60
+ requirement: &70158318237040 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>'
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.4.0
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70122094223900
68
+ version_requirements: *70158318237040
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: httparty
71
- requirement: &70122094223420 !ruby/object:Gem::Requirement
71
+ requirement: &70158318236320 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>'
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 0.6.0
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *70122094223420
79
+ version_requirements: *70158318236320
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: mocha
82
- requirement: &70122094222840 !ruby/object:Gem::Requirement
82
+ requirement: &70158318235600 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>'
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 0.9.11
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *70122094222840
90
+ version_requirements: *70158318235600
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: activesupport
93
- requirement: &70122094222300 !ruby/object:Gem::Requirement
93
+ requirement: &70158318234720 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,21 @@ dependencies:
98
98
  version: 3.0.0
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *70122094222300
101
+ version_requirements: *70158318234720
102
+ - !ruby/object:Gem::Dependency
103
+ name: ruby-debug19
104
+ requirement: &70158318233300 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: *70158318233300
102
113
  - !ruby/object:Gem::Dependency
103
114
  name: httparty
104
- requirement: &70122094221800 !ruby/object:Gem::Requirement
115
+ requirement: &70158318232500 !ruby/object:Gem::Requirement
105
116
  none: false
106
117
  requirements:
107
118
  - - ! '>'
@@ -109,10 +120,10 @@ dependencies:
109
120
  version: 0.6.0
110
121
  type: :runtime
111
122
  prerelease: false
112
- version_requirements: *70122094221800
123
+ version_requirements: *70158318232500
113
124
  - !ruby/object:Gem::Dependency
114
125
  name: activesupport
115
- requirement: &70122094221260 !ruby/object:Gem::Requirement
126
+ requirement: &70158318230780 !ruby/object:Gem::Requirement
116
127
  none: false
117
128
  requirements:
118
129
  - - ! '>'
@@ -120,10 +131,10 @@ dependencies:
120
131
  version: 3.0.0
121
132
  type: :runtime
122
133
  prerelease: false
123
- version_requirements: *70122094221260
134
+ version_requirements: *70158318230780
124
135
  - !ruby/object:Gem::Dependency
125
136
  name: json
126
- requirement: &70122094220760 !ruby/object:Gem::Requirement
137
+ requirement: &70158318230220 !ruby/object:Gem::Requirement
127
138
  none: false
128
139
  requirements:
129
140
  - - ! '>'
@@ -131,10 +142,10 @@ dependencies:
131
142
  version: 1.4.0
132
143
  type: :runtime
133
144
  prerelease: false
134
- version_requirements: *70122094220760
145
+ version_requirements: *70158318230220
135
146
  - !ruby/object:Gem::Dependency
136
147
  name: httparty
137
- requirement: &70122094220240 !ruby/object:Gem::Requirement
148
+ requirement: &70158318229540 !ruby/object:Gem::Requirement
138
149
  none: false
139
150
  requirements:
140
151
  - - ! '>'
@@ -142,10 +153,10 @@ dependencies:
142
153
  version: 0.6.0
143
154
  type: :development
144
155
  prerelease: false
145
- version_requirements: *70122094220240
156
+ version_requirements: *70158318229540
146
157
  - !ruby/object:Gem::Dependency
147
158
  name: json
148
- requirement: &70122094219700 !ruby/object:Gem::Requirement
159
+ requirement: &70158318228620 !ruby/object:Gem::Requirement
149
160
  none: false
150
161
  requirements:
151
162
  - - ! '>'
@@ -153,10 +164,10 @@ dependencies:
153
164
  version: 1.4.0
154
165
  type: :development
155
166
  prerelease: false
156
- version_requirements: *70122094219700
167
+ version_requirements: *70158318228620
157
168
  - !ruby/object:Gem::Dependency
158
169
  name: mocha
159
- requirement: &70122094219140 !ruby/object:Gem::Requirement
170
+ requirement: &70158318227760 !ruby/object:Gem::Requirement
160
171
  none: false
161
172
  requirements:
162
173
  - - ! '>'
@@ -164,7 +175,7 @@ dependencies:
164
175
  version: 0.9.11
165
176
  type: :development
166
177
  prerelease: false
167
- version_requirements: *70122094219140
178
+ version_requirements: *70158318227760
168
179
  description: Gibbon is a simple API wrapper for interacting with MailChimp API version
169
180
  1.3.
170
181
  email: amromousa@gmail.com
@@ -200,7 +211,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
200
211
  version: '0'
201
212
  segments:
202
213
  - 0
203
- hash: -2232969061797626309
214
+ hash: 1602919969016914231
204
215
  required_rubygems_version: !ruby/object:Gem::Requirement
205
216
  none: false
206
217
  requirements:
@@ -209,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
209
220
  version: '0'
210
221
  requirements: []
211
222
  rubyforge_project:
212
- rubygems_version: 1.8.9
223
+ rubygems_version: 1.8.10
213
224
  signing_key:
214
225
  specification_version: 3
215
226
  summary: Gibbon is a simple API wrapper for interacting with MailChimp API 1.3