gibbon 0.3.3 → 0.3.4

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
@@ -2,7 +2,6 @@ source "http://rubygems.org"
2
2
 
3
3
  gem "json", "> 1.4.0"
4
4
  gem "httparty", "> 0.6.0"
5
- gem "activesupport", ">= 2.3.14"
6
5
  gem "rdoc"
7
6
 
8
7
  group :development, :test do
data/README.markdown CHANGED
@@ -98,12 +98,6 @@ information about the error, and "code", the numeric code of the error.
98
98
  If you set the `throws_exceptions` boolean attribute for a given instance then
99
99
  Gibbon will attempt to intercept the errors and raise an exception.
100
100
 
101
- ### Notes
102
-
103
- As of 0.1.6, gibbon uses ActiveSupport::JSON.decode(). This means code that checked for weird API responses (like "true"
104
- on a successful call to "listSubscribe" or similar) will need to be tweaked to handle the boolean JSON.decode() returns
105
- as opposed to the string the MailChimp API returns. I understand the extra dependency might be a pain for some.
106
-
107
101
  ##Thanks
108
102
 
109
103
  * [Justin Ip](https://github.com/ippy04)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.3
1
+ 0.3.4
data/gibbon.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "gibbon"
8
- s.version = "0.3.3"
8
+ s.version = "0.3.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Amro Mousa"]
12
- s.date = "2011-12-07"
12
+ s.date = "2011-12-09"
13
13
  s.description = "Gibbon is a simple API wrapper for interacting with MailChimp API version 1.3."
14
14
  s.email = "amromousa@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -45,7 +45,6 @@ Gem::Specification.new do |s|
45
45
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
46
46
  s.add_runtime_dependency(%q<json>, ["> 1.4.0"])
47
47
  s.add_runtime_dependency(%q<httparty>, ["> 0.6.0"])
48
- s.add_runtime_dependency(%q<activesupport>, [">= 2.3.14"])
49
48
  s.add_runtime_dependency(%q<rdoc>, [">= 0"])
50
49
  s.add_development_dependency(%q<shoulda>, [">= 0"])
51
50
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
@@ -63,7 +62,6 @@ Gem::Specification.new do |s|
63
62
  else
64
63
  s.add_dependency(%q<json>, ["> 1.4.0"])
65
64
  s.add_dependency(%q<httparty>, ["> 0.6.0"])
66
- s.add_dependency(%q<activesupport>, [">= 2.3.14"])
67
65
  s.add_dependency(%q<rdoc>, [">= 0"])
68
66
  s.add_dependency(%q<shoulda>, [">= 0"])
69
67
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
@@ -82,7 +80,6 @@ Gem::Specification.new do |s|
82
80
  else
83
81
  s.add_dependency(%q<json>, ["> 1.4.0"])
84
82
  s.add_dependency(%q<httparty>, ["> 0.6.0"])
85
- s.add_dependency(%q<activesupport>, [">= 2.3.14"])
86
83
  s.add_dependency(%q<rdoc>, [">= 0"])
87
84
  s.add_dependency(%q<shoulda>, [">= 0"])
88
85
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
data/lib/gibbon.rb CHANGED
@@ -1,4 +1,3 @@
1
- require 'active_support'
2
1
  require 'httparty'
3
2
  require 'json'
4
3
  require 'cgi'
@@ -37,9 +36,9 @@ protected
37
36
  response = self.class.post(api_url, :body => CGI::escape(params.to_json), :timeout => @timeout)
38
37
 
39
38
  begin
40
- response = ActiveSupport::JSON.decode(response.body)
39
+ response = JSON.parse(response.body)
41
40
  rescue
42
- response = ActiveSupport::JSON.decode('['+response.body+']').first
41
+ response = JSON.parse('['+response.body+']').first
43
42
  end
44
43
 
45
44
  if @throws_exceptions && response.is_a?(Hash) && response["error"]
@@ -88,7 +87,7 @@ protected
88
87
 
89
88
  lines = response.body.lines
90
89
  if @throws_exceptions
91
- first_line_object = ActiveSupport::JSON.decode(lines.first) if lines.first
90
+ first_line_object = JSON.parse(lines.first) if lines.first
92
91
  raise "Error from MailChimp Export API: #{first_line_object["error"]} (code #{first_line_object["code"]})" if first_line_object.is_a?(Hash) && first_line_object["error"]
93
92
  end
94
93
 
data/test/test_gibbon.rb CHANGED
@@ -121,7 +121,7 @@ class TestGibbon < Test::Unit::TestCase
121
121
  @gibbon = Gibbon.new(@key)
122
122
  @url = "https://us1.api.mailchimp.com/1.3/?method=sayHello"
123
123
  @body = {"apikey" => @key}
124
- @returns = Struct.new(:body).new(ActiveSupport::JSON.encode(["array", "entries"]))
124
+ @returns = Struct.new(:body).new(["array", "entries"].to_json)
125
125
  end
126
126
 
127
127
  should "produce a good exporter" do
@@ -130,7 +130,7 @@ class TestGibbon < Test::Unit::TestCase
130
130
  end
131
131
 
132
132
  should "throw exception if configured to and the API replies with a JSON hash containing a key called 'error'" do
133
- Gibbon.stubs(:post).returns(Struct.new(:body).new(ActiveSupport::JSON.encode({'error' => 'bad things'})))
133
+ Gibbon.stubs(:post).returns(Struct.new(:body).new({'error' => 'bad things'}.to_json))
134
134
  assert_nothing_raised do
135
135
  result = @gibbon.say_hello
136
136
  end
@@ -140,7 +140,7 @@ class TestGibbon < Test::Unit::TestCase
140
140
 
141
141
  should "throw exception if configured to and the API replies with a JSON hash containing a key called 'error'" do
142
142
  @gibbon.throws_exceptions = true
143
- Gibbon.stubs(:post).returns(Struct.new(:body).new(ActiveSupport::JSON.encode({'error' => 'bad things'})))
143
+ Gibbon.stubs(:post).returns(Struct.new(:body).new({'error' => 'bad things'}.to_json))
144
144
  assert_raise RuntimeError do
145
145
  @gibbon.say_hello
146
146
  end
@@ -153,7 +153,7 @@ class TestGibbon < Test::Unit::TestCase
153
153
  @gibbon = GibbonExport.new(@key)
154
154
  @url = "http://us1.api.mailchimp.com/export/1.0/"
155
155
  @body = {:apikey => @key, :id => "listid"}
156
- @returns = Struct.new(:body).new(ActiveSupport::JSON.encode(["array", "entries"]))
156
+ @returns = Struct.new(:body).new(["array", "entries"].to_json)
157
157
  end
158
158
 
159
159
  should "handle api key with dc" do
@@ -168,7 +168,7 @@ class TestGibbon < Test::Unit::TestCase
168
168
  end
169
169
 
170
170
  should "not throw exception if the Export API replies with a JSON hash containing a key called 'error'" do
171
- GibbonExport.stubs(:post).returns(Struct.new(:body).new(ActiveSupport::JSON.encode({'error' => 'bad things'})))
171
+ GibbonExport.stubs(:post).returns(Struct.new(:body).new({'error' => 'bad things'}.to_json))
172
172
 
173
173
  assert_nothing_raised do
174
174
  @gibbon.say_hello(@body)
@@ -178,7 +178,7 @@ class TestGibbon < Test::Unit::TestCase
178
178
  should "throw exception if configured to and the Export API replies with a JSON hash containing a key called 'error'" do
179
179
  @gibbon.throws_exceptions = true
180
180
  params = {:body => @body, :timeout => nil}
181
- GibbonExport.stubs(:post).returns(Struct.new(:body).new(ActiveSupport::JSON.encode({'error' => 'bad things', 'code' => '123'})))
181
+ GibbonExport.stubs(:post).returns(Struct.new(:body).new({'error' => 'bad things', 'code' => '123'}.to_json))
182
182
 
183
183
  assert_raise RuntimeError do
184
184
  @gibbon.say_hello(@body)
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.3.3
4
+ version: 0.3.4
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-12-07 00:00:00.000000000Z
12
+ date: 2011-12-09 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
16
- requirement: &70126630928180 !ruby/object:Gem::Requirement
16
+ requirement: &70209928894840 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>'
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 1.4.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70126630928180
24
+ version_requirements: *70209928894840
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: httparty
27
- requirement: &70126630927580 !ruby/object:Gem::Requirement
27
+ requirement: &70209928894340 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>'
@@ -32,21 +32,10 @@ dependencies:
32
32
  version: 0.6.0
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70126630927580
36
- - !ruby/object:Gem::Dependency
37
- name: activesupport
38
- requirement: &70126630927080 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ! '>='
42
- - !ruby/object:Gem::Version
43
- version: 2.3.14
44
- type: :runtime
45
- prerelease: false
46
- version_requirements: *70126630927080
35
+ version_requirements: *70209928894340
47
36
  - !ruby/object:Gem::Dependency
48
37
  name: rdoc
49
- requirement: &70126630926520 !ruby/object:Gem::Requirement
38
+ requirement: &70209928893760 !ruby/object:Gem::Requirement
50
39
  none: false
51
40
  requirements:
52
41
  - - ! '>='
@@ -54,10 +43,10 @@ dependencies:
54
43
  version: '0'
55
44
  type: :runtime
56
45
  prerelease: false
57
- version_requirements: *70126630926520
46
+ version_requirements: *70209928893760
58
47
  - !ruby/object:Gem::Dependency
59
48
  name: shoulda
60
- requirement: &70126630925980 !ruby/object:Gem::Requirement
49
+ requirement: &70209928893220 !ruby/object:Gem::Requirement
61
50
  none: false
62
51
  requirements:
63
52
  - - ! '>='
@@ -65,10 +54,10 @@ dependencies:
65
54
  version: '0'
66
55
  type: :development
67
56
  prerelease: false
68
- version_requirements: *70126630925980
57
+ version_requirements: *70209928893220
69
58
  - !ruby/object:Gem::Dependency
70
59
  name: bundler
71
- requirement: &70126630925460 !ruby/object:Gem::Requirement
60
+ requirement: &70209928892680 !ruby/object:Gem::Requirement
72
61
  none: false
73
62
  requirements:
74
63
  - - ~>
@@ -76,10 +65,10 @@ dependencies:
76
65
  version: 1.0.0
77
66
  type: :development
78
67
  prerelease: false
79
- version_requirements: *70126630925460
68
+ version_requirements: *70209928892680
80
69
  - !ruby/object:Gem::Dependency
81
70
  name: jeweler
82
- requirement: &70126630924940 !ruby/object:Gem::Requirement
71
+ requirement: &70209928892100 !ruby/object:Gem::Requirement
83
72
  none: false
84
73
  requirements:
85
74
  - - ~>
@@ -87,10 +76,10 @@ dependencies:
87
76
  version: 1.5.1
88
77
  type: :development
89
78
  prerelease: false
90
- version_requirements: *70126630924940
79
+ version_requirements: *70209928892100
91
80
  - !ruby/object:Gem::Dependency
92
81
  name: rcov
93
- requirement: &70126630924400 !ruby/object:Gem::Requirement
82
+ requirement: &70209928891500 !ruby/object:Gem::Requirement
94
83
  none: false
95
84
  requirements:
96
85
  - - ! '>='
@@ -98,10 +87,10 @@ dependencies:
98
87
  version: '0'
99
88
  type: :development
100
89
  prerelease: false
101
- version_requirements: *70126630924400
90
+ version_requirements: *70209928891500
102
91
  - !ruby/object:Gem::Dependency
103
92
  name: mocha
104
- requirement: &70126630923880 !ruby/object:Gem::Requirement
93
+ requirement: &70209928890980 !ruby/object:Gem::Requirement
105
94
  none: false
106
95
  requirements:
107
96
  - - ! '>'
@@ -109,10 +98,10 @@ dependencies:
109
98
  version: 0.9.11
110
99
  type: :development
111
100
  prerelease: false
112
- version_requirements: *70126630923880
101
+ version_requirements: *70209928890980
113
102
  - !ruby/object:Gem::Dependency
114
103
  name: ruby-debug19
115
- requirement: &70126630923360 !ruby/object:Gem::Requirement
104
+ requirement: &70209928890360 !ruby/object:Gem::Requirement
116
105
  none: false
117
106
  requirements:
118
107
  - - ! '>='
@@ -120,10 +109,10 @@ dependencies:
120
109
  version: '0'
121
110
  type: :development
122
111
  prerelease: false
123
- version_requirements: *70126630923360
112
+ version_requirements: *70209928890360
124
113
  - !ruby/object:Gem::Dependency
125
114
  name: ruby-debug
126
- requirement: &70126630922780 !ruby/object:Gem::Requirement
115
+ requirement: &70209928889800 !ruby/object:Gem::Requirement
127
116
  none: false
128
117
  requirements:
129
118
  - - ! '>='
@@ -131,10 +120,10 @@ dependencies:
131
120
  version: '0'
132
121
  type: :development
133
122
  prerelease: false
134
- version_requirements: *70126630922780
123
+ version_requirements: *70209928889800
135
124
  - !ruby/object:Gem::Dependency
136
125
  name: httparty
137
- requirement: &70126630922220 !ruby/object:Gem::Requirement
126
+ requirement: &70209928889240 !ruby/object:Gem::Requirement
138
127
  none: false
139
128
  requirements:
140
129
  - - ! '>'
@@ -142,10 +131,10 @@ dependencies:
142
131
  version: 0.6.0
143
132
  type: :runtime
144
133
  prerelease: false
145
- version_requirements: *70126630922220
134
+ version_requirements: *70209928889240
146
135
  - !ruby/object:Gem::Dependency
147
136
  name: activesupport
148
- requirement: &70126630921640 !ruby/object:Gem::Requirement
137
+ requirement: &70209928888660 !ruby/object:Gem::Requirement
149
138
  none: false
150
139
  requirements:
151
140
  - - ! '>='
@@ -153,10 +142,10 @@ dependencies:
153
142
  version: 2.3.14
154
143
  type: :runtime
155
144
  prerelease: false
156
- version_requirements: *70126630921640
145
+ version_requirements: *70209928888660
157
146
  - !ruby/object:Gem::Dependency
158
147
  name: json
159
- requirement: &70126630921120 !ruby/object:Gem::Requirement
148
+ requirement: &70209928888140 !ruby/object:Gem::Requirement
160
149
  none: false
161
150
  requirements:
162
151
  - - ! '>'
@@ -164,10 +153,10 @@ dependencies:
164
153
  version: 1.4.0
165
154
  type: :runtime
166
155
  prerelease: false
167
- version_requirements: *70126630921120
156
+ version_requirements: *70209928888140
168
157
  - !ruby/object:Gem::Dependency
169
158
  name: httparty
170
- requirement: &70126630920620 !ruby/object:Gem::Requirement
159
+ requirement: &70209928887640 !ruby/object:Gem::Requirement
171
160
  none: false
172
161
  requirements:
173
162
  - - ! '>'
@@ -175,10 +164,10 @@ dependencies:
175
164
  version: 0.6.0
176
165
  type: :development
177
166
  prerelease: false
178
- version_requirements: *70126630920620
167
+ version_requirements: *70209928887640
179
168
  - !ruby/object:Gem::Dependency
180
169
  name: json
181
- requirement: &70126630920100 !ruby/object:Gem::Requirement
170
+ requirement: &70209928887100 !ruby/object:Gem::Requirement
182
171
  none: false
183
172
  requirements:
184
173
  - - ! '>'
@@ -186,10 +175,10 @@ dependencies:
186
175
  version: 1.4.0
187
176
  type: :development
188
177
  prerelease: false
189
- version_requirements: *70126630920100
178
+ version_requirements: *70209928887100
190
179
  - !ruby/object:Gem::Dependency
191
180
  name: mocha
192
- requirement: &70126630919600 !ruby/object:Gem::Requirement
181
+ requirement: &70209928886620 !ruby/object:Gem::Requirement
193
182
  none: false
194
183
  requirements:
195
184
  - - ! '>'
@@ -197,7 +186,7 @@ dependencies:
197
186
  version: 0.9.11
198
187
  type: :development
199
188
  prerelease: false
200
- version_requirements: *70126630919600
189
+ version_requirements: *70209928886620
201
190
  description: Gibbon is a simple API wrapper for interacting with MailChimp API version
202
191
  1.3.
203
192
  email: amromousa@gmail.com
@@ -233,7 +222,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
233
222
  version: '0'
234
223
  segments:
235
224
  - 0
236
- hash: 620026123808324102
225
+ hash: 2040332817665345079
237
226
  required_rubygems_version: !ruby/object:Gem::Requirement
238
227
  none: false
239
228
  requirements: