chimpster 0.1.17

Sign up to get free protection for your applications and to get access to all the features.
data/.bundle/config ADDED
@@ -0,0 +1,3 @@
1
+ ---
2
+ BUNDLE_DISABLE_SHARED_GEMS: "1"
3
+ BUNDLE_WITHOUT: ""
data/.document ADDED
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
data/.rake_tasks ADDED
@@ -0,0 +1,22 @@
1
+ build
2
+ check_dependencies
3
+ check_dependencies:development
4
+ check_dependencies:runtime
5
+ clobber_rcov
6
+ clobber_rdoc
7
+ features
8
+ gemcutter:release
9
+ gemspec
10
+ gemspec:generate
11
+ gemspec:validate
12
+ install
13
+ rcov
14
+ rdoc
15
+ release
16
+ rerdoc
17
+ spec
18
+ version
19
+ version:bump:major
20
+ version:bump:minor
21
+ version:bump:patch
22
+ version:write
data/CHANGELOG.rdoc ADDED
File without changes
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2009 Michael Hart
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,39 @@
1
+ = Chimpster Gem
2
+
3
+ This gem wraps mailchimps integration with ses
4
+
5
+ == Install
6
+
7
+ gem install chimpster
8
+
9
+ In addition to the +chimpster+ gem you also need to install +mail+ gem.
10
+
11
+ gem install mail
12
+
13
+
14
+ == Mail Example
15
+
16
+ require 'rubygems'
17
+ require 'chimpster'
18
+ require 'mail'
19
+
20
+ message = Mail.new
21
+ message.delivery_method(Mail::Chimpster, :api_key => "your-api-key")
22
+ # ...
23
+ # same as in example above
24
+ # ...
25
+ message.deliver
26
+
27
+
28
+ == Requirements
29
+
30
+ The gem relies on Mail for building the message. You will also need mailchimp and ses account
31
+ If you plan using it in a rails project, check out the chimpster-rails gem, which is meant to integrate with ActionMailer.
32
+
33
+ == Authors & Contributors
34
+
35
+ * Michael Hart
36
+
37
+ == Copyright
38
+
39
+ Copyright (c) 2011 trahmmhart. See LICENSE for details.
data/Rakefile ADDED
@@ -0,0 +1,62 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "chimpster"
8
+ gem.summary = %Q{MailChimp SES wrapper.}
9
+ gem.description = %Q{Use this gem to send emails through MailChimp}
10
+ gem.email = "mike@fotomoto.com"
11
+ gem.homepage = "http://fotomoto.com"
12
+ gem.authors = ["Michael Hart"]
13
+
14
+ gem.add_development_dependency "rspec"
15
+ gem.add_development_dependency "activesupport"
16
+ gem.add_development_dependency "json"
17
+ gem.add_development_dependency "ruby-debug"
18
+ gem.add_development_dependency "fakeweb"
19
+ gem.add_development_dependency "fakeweb-matcher"
20
+ gem.add_development_dependency "timecop"
21
+ gem.add_development_dependency "yajl-ruby"
22
+
23
+ gem.post_install_message = %q[
24
+ ==================
25
+ Thanks for installing the chimpster gem.
26
+ ==================
27
+ ]
28
+ end
29
+ Jeweler::GemcutterTasks.new
30
+ rescue LoadError
31
+ puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
32
+ end
33
+
34
+ require 'spec/rake/spectask'
35
+ Spec::Rake::SpecTask.new(:spec) do |spec|
36
+ spec.libs << 'lib' << 'spec'
37
+ spec.spec_files = FileList['spec/**/*_spec.rb']
38
+ end
39
+
40
+ Spec::Rake::SpecTask.new(:rcov) do |spec|
41
+ spec.libs << 'lib' << 'spec'
42
+ spec.pattern = 'spec/**/*_spec.rb'
43
+ spec.rcov = true
44
+ end
45
+
46
+ task :spec => :check_dependencies
47
+
48
+ task :default => :spec
49
+
50
+ require 'rake/rdoctask'
51
+ Rake::RDocTask.new do |rdoc|
52
+ if File.exist?('VERSION')
53
+ version = File.read('VERSION')
54
+ else
55
+ version = ""
56
+ end
57
+
58
+ rdoc.rdoc_dir = 'rdoc'
59
+ rdoc.title = "chimpster #{version}"
60
+ rdoc.rdoc_files.include('README*')
61
+ rdoc.rdoc_files.include('lib/**/*.rb')
62
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.5
data/chimpster.gemspec ADDED
@@ -0,0 +1,92 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{chimpster}
8
+ s.version = "0.1.17"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Michael Hart, Bob Milani, Phuc Quang"]
12
+ s.date = %q{2011-07-17}
13
+ s.description = %q{Use this gem to send emails through SES via Mailchimp api.}
14
+ s.email = %q{mike@fotomoto.com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".bundle/config",
21
+ ".document",
22
+ ".rake_tasks",
23
+ "CHANGELOG.rdoc",
24
+ "LICENSE",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "init.rb",
29
+ "lib/chimpster.rb",
30
+ "lib/chimpster/handlers/mail.rb",
31
+ "lib/chimpster/message_extensions/mail.rb",
32
+ "lib/chimpster/message_extensions/shared.rb",
33
+ "chimpster.gemspec",
34
+ "spec/chimpster_spec.rb",
35
+ "spec/spec.opts",
36
+ "spec/spec_helper.rb"
37
+ ]
38
+ s.homepage = %q{http://fotomoto.com}
39
+ s.post_install_message = %q{
40
+ ==================
41
+ Thanks for installing the chimpster gem.
42
+ ==================
43
+ }
44
+ s.require_paths = ["lib"]
45
+ s.rubygems_version = %q{1.3.7}
46
+ s.summary = %q{SES Mailchimp API wrapper.}
47
+ s.test_files = [
48
+ "spec/chimpster_spec.rb",
49
+ "spec/spec_helper.rb"
50
+ ]
51
+
52
+ if s.respond_to? :specification_version then
53
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
54
+ s.specification_version = 3
55
+
56
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
57
+ # s.add_development_dependency(%q<rspec>, [">= 2.6"])
58
+ s.add_development_dependency(%q<activesupport>, [">= 0"])
59
+ s.add_development_dependency(%q<ruby-debug>, [">= 0"])
60
+ s.add_development_dependency(%q<fakeweb>, [">= 0"])
61
+ s.add_development_dependency(%q<fakeweb-matcher>, [">= 0"])
62
+ s.add_development_dependency(%q<timecop>, [">= 0"])
63
+ s.add_development_dependency(%q<mail>, [">= 0"])
64
+ s.add_development_dependency(%q<uakari>, [">= 0"])
65
+ s.add_dependency(%q<json>, [">= 1.5"])
66
+ s.add_dependency(%q<logging>, [">= 1.5.2"])
67
+ else
68
+ # s.add_dependency(%q<rspec>, [">= 2.6"])
69
+ s.add_dependency(%q<activesupport>, [">= 0"])
70
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
71
+ s.add_dependency(%q<fakeweb>, [">= 0"])
72
+ s.add_dependency(%q<fakeweb-matcher>, [">= 0"])
73
+ s.add_dependency(%q<timecop>, [">= 0"])
74
+ s.add_dependency(%q<mail>, [">= 0"])
75
+ s.add_dependency(%q<uakari>, [">= 0"])
76
+ s.add_dependency(%q<json>, [">= 1.5"])
77
+ s.add_dependency(%q<logging>, [">= 1.5.2"])
78
+ end
79
+ else
80
+ # s.add_dependency(%q<rspec>, [">= 2.6"])
81
+ s.add_dependency(%q<activesupport>, [">= 0"])
82
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
83
+ s.add_dependency(%q<fakeweb>, [">= 0"])
84
+ s.add_dependency(%q<fakeweb-matcher>, [">= 0"])
85
+ s.add_dependency(%q<timecop>, [">= 0"])
86
+ s.add_dependency(%q<mail>, [">= 0"])
87
+ s.add_dependency(%q<uakari>, [">= 0"])
88
+ s.add_dependency(%q<json>, [">= 1.5"])
89
+ s.add_dependency(%q<logging>, [">= 1.5.2"])
90
+ end
91
+ end
92
+
data/init.rb ADDED
@@ -0,0 +1 @@
1
+ require 'chimpster'
data/lib/chimpster.rb ADDED
@@ -0,0 +1,68 @@
1
+ def require_local(file)
2
+ require File.join(File.dirname(__FILE__), 'chimpster', file)
3
+ end
4
+
5
+ require_local 'message_extensions/shared'
6
+ require_local 'message_extensions/mail'
7
+ require_local 'handlers/mail'
8
+ require 'logging'
9
+
10
+ module Chimpster
11
+
12
+ MAX_RETRIES = 2
13
+
14
+ class << self
15
+ attr_accessor :api_key, :to, :from, :max_retries, :sleep_between_retries , :uakari, :logger
16
+
17
+ def logger
18
+ Logging.logger(STDOUT)
19
+ end
20
+
21
+ def max_retries
22
+ @max_retries ||= 3
23
+ end
24
+
25
+ def sleep_between_retries
26
+ @sleep_between_retries ||= 10
27
+ end
28
+
29
+ def configure
30
+ yield self
31
+ end
32
+
33
+ def send (message)
34
+ response = @uakari.send_email(message)
35
+
36
+ response
37
+ end
38
+
39
+ def send_through_chimpster(message) #:nodoc:
40
+ puts 'sending email'
41
+ @retries = 0
42
+ _from = message['from'].to_s
43
+ _from = @from unless @from == nil
44
+ _to =message['to'].to_s
45
+ _to = @to unless @to == nil
46
+ options= {
47
+ :html => "test" ,#message.body.raw_source,
48
+ :subject => message.subject,
49
+ :from_email => _from,
50
+ :to_email => _to.split(',')
51
+ }
52
+ response = self.send({
53
+ :track_opens => true,
54
+ :track_clicks => true,
55
+ :message => options,
56
+ :tags => (message.tag.to_s if message.tag)
57
+ })
58
+ c=response['status']
59
+ v= ['queued','sent'].include?(c)
60
+ if v == false
61
+ logger.info "ERROR Sending Email via Chimpster #{response.to_s}"
62
+ else
63
+ logger.info "Email Sent via Chimpster #{response.to_s}"
64
+ end
65
+ v
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,18 @@
1
+ require 'uakari'
2
+ module Mail
3
+ class Chimpster
4
+
5
+ attr_accessor :settings, :uakari
6
+
7
+ def initialize(values)
8
+ self.settings = { :api_key => nil, :to=> nil, :from=>nil}.merge(values)
9
+ self.uakari = Uakari.new(self.settings[:api_key])
10
+ end
11
+
12
+ def deliver!(mail)
13
+ ::Chimpster.uakari = uakari
14
+ ::Chimpster.send_through_chimpster(mail)
15
+ end
16
+
17
+ end
18
+ end
@@ -0,0 +1,27 @@
1
+ module Mail
2
+ class Message
3
+
4
+ include Chimpster::SharedMessageExtensions
5
+
6
+ def html?
7
+ content_type && content_type.include?('text/html')
8
+ end
9
+
10
+ def body_html
11
+ if html_part.nil?
12
+ body.to_s if html?
13
+ else
14
+ html_part.body.to_s
15
+ end
16
+ end
17
+
18
+ def body_text
19
+ if text_part.nil?
20
+ body.to_s
21
+ else
22
+ text_part.body.to_s
23
+ end
24
+ end
25
+
26
+ end
27
+ end
@@ -0,0 +1,33 @@
1
+ module Chimpster
2
+ module SharedMessageExtensions
3
+
4
+ def tag
5
+ self['TAG']
6
+ end
7
+
8
+ def tag=(value)
9
+ self['TAG'] = value
10
+ end
11
+
12
+ # def postmark_attachments=(value)
13
+ # @_attachments = value.is_a?(Array) ? value : [value]
14
+ # end
15
+ #
16
+ # def postmark_attachments
17
+ # return if @_attachments.nil?
18
+ #
19
+ # @_attachments.collect do |item|
20
+ # if item.is_a?(Hash)
21
+ # item
22
+ # elsif item.is_a?(File)
23
+ # {
24
+ # "Name" => item.path.split("/")[-1],
25
+ # "Content" => [ IO.read(item.path) ].pack("m"),
26
+ # "ContentType" => "application/octet-stream"
27
+ # }
28
+ # end
29
+ # end
30
+ # end
31
+
32
+ end
33
+ end
@@ -0,0 +1,83 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Chimpster" do
4
+
5
+ let :mail_message do
6
+ Mail.new do
7
+ from "mike@fotomoto.com"
8
+ to "mike@fotomoto.com"
9
+ subject "Hello!"
10
+ body "Hello Sheldon!"
11
+ end
12
+ end
13
+
14
+ let :mail_html_message do
15
+ mail = Mail.new do
16
+ from "mike@fotomoto.com"
17
+ to "mike@fotomoto.com"
18
+ subject "Hello!"
19
+ html_part do
20
+ body "<b>Hello Sheldon!</b>"
21
+ end
22
+ end
23
+ end
24
+
25
+ let :mail_multipart_message do
26
+ mail = Mail.new do
27
+ from "mike@fotomoto.com"
28
+ to "mike@fotomoto.com"
29
+ subject "Hello!"
30
+ text_part do
31
+ body "Hello Sheldon!"
32
+ end
33
+ html_part do
34
+ body "<b>Hello Sheldon!</b>"
35
+ end
36
+ end
37
+ end
38
+
39
+
40
+
41
+
42
+ context "mail delivery method" do
43
+ it "should be able to set delivery_method" do
44
+ mail_message.delivery_method Mail::Chimpster
45
+ puts mail_message.delivery_method
46
+ end
47
+
48
+ it "should wrap Chimpster.send_through_chimpster" do
49
+ message = mail_message
50
+ @error_response={'status'=>'sent'}
51
+ Chimpster.should_receive(:send).and_return(@error_response)
52
+
53
+ mail_message.delivery_method Mail::Chimpster , {:api_key => 'api-key'}
54
+
55
+ mail_message.deliver
56
+ end
57
+
58
+ it "should wrap Chimpster.send_through_chimpster and override to and from via config" do
59
+ message = mail_message
60
+ @error_response={'status'=>'sent'}
61
+ # Chimpster.should_receive(:send).and_return(@error_response)
62
+
63
+ mail_message.delivery_method Mail::Chimpster , {:api_key => '29cb34f3d70ae39342eb41b712b58bcb-us1', :to =>'mike.hart.sf@gmail.com', :from =>'support@fotomoto.com'}
64
+
65
+ mail_message.deliver
66
+ end
67
+
68
+ it "should allow setting of api_key" do
69
+ mail_message.delivery_method Mail::Chimpster, {:api_key => 'api-key'}
70
+ mail_message.delivery_method.settings[:api_key].should == 'api-key'
71
+ end
72
+
73
+ it "should return false when the request fails " do
74
+ @error_response={'status'=>'error'}
75
+ Chimpster.should_receive(:send).and_return(@error_response)
76
+ mail_message.delivery_method Mail::Chimpster , {:api_key => 'api-key'}
77
+ mail_message.deliver
78
+ end
79
+ end
80
+
81
+
82
+
83
+ end
data/spec/spec.opts ADDED
@@ -0,0 +1,3 @@
1
+ --colour
2
+ --format specdoc
3
+ --loadby mtime
@@ -0,0 +1,13 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
+ require 'rubygems'
4
+ require 'mail'
5
+ require 'chimpster'
6
+ require 'uakari'
7
+ require 'active_support'
8
+ require 'ruby-debug'
9
+ require 'fakeweb'
10
+ require 'fakeweb_matcher'
11
+ require 'timecop'
12
+ require 'rspec'
13
+
metadata ADDED
@@ -0,0 +1,211 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: chimpster
3
+ version: !ruby/object:Gem::Version
4
+ hash: 57
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 17
10
+ version: 0.1.17
11
+ platform: ruby
12
+ authors:
13
+ - Michael Hart, Bob Milani, Phuc Quang
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-07-17 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: activesupport
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
32
+ type: :development
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: ruby-debug
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ type: :development
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: fakeweb
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ type: :development
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
63
+ name: fakeweb-matcher
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ hash: 3
71
+ segments:
72
+ - 0
73
+ version: "0"
74
+ type: :development
75
+ version_requirements: *id004
76
+ - !ruby/object:Gem::Dependency
77
+ name: timecop
78
+ prerelease: false
79
+ requirement: &id005 !ruby/object:Gem::Requirement
80
+ none: false
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ hash: 3
85
+ segments:
86
+ - 0
87
+ version: "0"
88
+ type: :development
89
+ version_requirements: *id005
90
+ - !ruby/object:Gem::Dependency
91
+ name: mail
92
+ prerelease: false
93
+ requirement: &id006 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ hash: 3
99
+ segments:
100
+ - 0
101
+ version: "0"
102
+ type: :development
103
+ version_requirements: *id006
104
+ - !ruby/object:Gem::Dependency
105
+ name: uakari
106
+ prerelease: false
107
+ requirement: &id007 !ruby/object:Gem::Requirement
108
+ none: false
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ hash: 3
113
+ segments:
114
+ - 0
115
+ version: "0"
116
+ type: :development
117
+ version_requirements: *id007
118
+ - !ruby/object:Gem::Dependency
119
+ name: json
120
+ prerelease: false
121
+ requirement: &id008 !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ hash: 5
127
+ segments:
128
+ - 1
129
+ - 5
130
+ version: "1.5"
131
+ type: :runtime
132
+ version_requirements: *id008
133
+ - !ruby/object:Gem::Dependency
134
+ name: logging
135
+ prerelease: false
136
+ requirement: &id009 !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ hash: 7
142
+ segments:
143
+ - 1
144
+ - 5
145
+ - 2
146
+ version: 1.5.2
147
+ type: :runtime
148
+ version_requirements: *id009
149
+ description: Use this gem to send emails through SES via Mailchimp api.
150
+ email: mike@fotomoto.com
151
+ executables: []
152
+
153
+ extensions: []
154
+
155
+ extra_rdoc_files:
156
+ - LICENSE
157
+ - README.rdoc
158
+ files:
159
+ - .bundle/config
160
+ - .document
161
+ - .rake_tasks
162
+ - CHANGELOG.rdoc
163
+ - LICENSE
164
+ - README.rdoc
165
+ - Rakefile
166
+ - VERSION
167
+ - init.rb
168
+ - lib/chimpster.rb
169
+ - lib/chimpster/handlers/mail.rb
170
+ - lib/chimpster/message_extensions/mail.rb
171
+ - lib/chimpster/message_extensions/shared.rb
172
+ - chimpster.gemspec
173
+ - spec/chimpster_spec.rb
174
+ - spec/spec.opts
175
+ - spec/spec_helper.rb
176
+ homepage: http://fotomoto.com
177
+ licenses: []
178
+
179
+ post_install_message: "\n ==================\n Thanks for installing the chimpster gem.\n ==================\n "
180
+ rdoc_options: []
181
+
182
+ require_paths:
183
+ - lib
184
+ required_ruby_version: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ hash: 3
190
+ segments:
191
+ - 0
192
+ version: "0"
193
+ required_rubygems_version: !ruby/object:Gem::Requirement
194
+ none: false
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ hash: 3
199
+ segments:
200
+ - 0
201
+ version: "0"
202
+ requirements: []
203
+
204
+ rubyforge_project:
205
+ rubygems_version: 1.8.5
206
+ signing_key:
207
+ specification_version: 3
208
+ summary: SES Mailchimp API wrapper.
209
+ test_files:
210
+ - spec/chimpster_spec.rb
211
+ - spec/spec_helper.rb