webhookr-mailchimp 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,9 @@
1
+ language: ruby
2
+ rvm:
3
+ - "1.9.3"
4
+ - "2.0.0"
5
+ - jruby-19mode # JRuby in 1.9 mode
6
+ - ruby-head
7
+ matrix:
8
+ allow_failures:
9
+ - rvm: ruby-head
data/Gemfile CHANGED
@@ -2,19 +2,16 @@ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- gem "rake", "~> 10.0"
6
- gem "minitest"
7
- gem "minitest-reporters"
8
- gem "em-websocket"
9
- gem "guard"
10
- gem "guard-minitest"
11
- gem "guard-markdown"
12
- gem "guard-livereload"
13
- gem "simplecov", :require => false
14
-
15
- if RbConfig::CONFIG['host_os'] =~ /^darwin/
16
- gem "rb-fsevent"
17
- gem "growl"
5
+ group :development, :test do
6
+ gem "rake", "~> 10.0"
7
+ gem "minitest"
8
+ gem "minitest-reporters"
9
+ gem "em-websocket"
10
+ gem "guard"
11
+ gem "guard-minitest"
12
+ gem "guard-markdown"
13
+ gem "guard-livereload"
14
+ gem "simplecov", :require => false
18
15
  end
19
16
 
20
17
  if File.exists?('Gemfile.local')
data/Guardfile CHANGED
@@ -16,6 +16,10 @@ guard 'markdown', :convert_on_start => true do
16
16
  watch ('README.md') { "./README.md|./README.html" }
17
17
  end
18
18
 
19
+ guard 'livereload' do
20
+ watch('README.html')
21
+ end
22
+
19
23
  if File.exists?('Guardfile.local')
20
24
  instance_eval File.read('Guardfile.local')
21
25
  end
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Webhookr::Mailchimp
2
- [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/zoocasa/webhookr-mailchimp)
2
+ [![Build Status](https://travis-ci.org/zoocasa/webhookr-mailchimp.png?branch=master)](https://travis-ci.org/zoocasa/webhookr-mailchimp)
3
+ [![Dependency Status](https://gemnasium.com/zoocasa/webhookr-mailchimp.png)](https://gemnasium.com/zoocasa/webhookr-mailchimp)
4
+ [![Code Climate](https://codeclimate.com/github/zoocasa/webhookr-mailchimp.png)](https://codeclimate.com/github/zoocasa/webhookr-mailchimp)
3
5
 
4
6
  This gem is a plugin for [Webhookr](https://github.com/zoocasa/webhookr) that enables
5
7
  your application to accept [webhooks from Mailchimp](http://apidocs.mailchimp.com/webhooks/).
@@ -135,19 +137,27 @@ for ease of access. Examples for the method call unsubscribe:
135
137
 
136
138
  ## <a name="works_with"></a>Works with:
137
139
 
138
- webhookr-mailchimp works with Rails 3.1 and 3.2, and has been tested on the following Ruby
140
+ webhookr-mailchimp works with Rails 3.1, 3.2 and 4.0, and has been tested on the following Ruby
139
141
  implementations:
140
142
 
141
- * JRuby 1.7.1
142
- * MRI 1.8.7
143
- * MRI 1.9.2
144
- * MRI 1.9.3
145
- * Rubinius 1.2.4
146
- * Ruby EE 1.8.7
143
+ * 1.9.3
144
+ * 2.0.0
145
+ * jruby-19mode
147
146
 
148
- Pending:
147
+ ### Versioning
148
+ This library aims to adhere to [Semantic Versioning 2.0.0](http://semver.org/). Violations of this scheme should be reported as
149
+ bugs. Specifically, if a minor or patch version is released that breaks backward compatibility, that
150
+ version should be immediately yanked and/or a new version should be immediately released that restores
151
+ compatibility. Breaking changes to the public API will only be introduced with new major versions. As a
152
+ result of this policy, once this gem reaches a 1.0 release, you can (and should) specify a dependency on
153
+ this gem using the [Pessimistic Version Constraint](http://docs.rubygems.org/read/chapter/16#page74) with
154
+ two digits of precision. For example:
149
155
 
150
- * MRI 2.0
156
+ spec.add_dependency 'webhookr-mailchimp', '~> 1.0'
157
+
158
+ While this gem is currently a 0.x release, suggestion is to require the exact version that works for your code:
159
+
160
+ spec.add_dependency 'webhookr-mailchimp', '0.0.1'
151
161
 
152
162
  ## License
153
163
 
@@ -3,78 +3,78 @@ class MailChimpHooks
3
3
  # All 'on_' handlers are optional. Omit any you do not require.
4
4
 
5
5
  def on_subscribe(incoming)
6
- payload = payload
7
- puts payload.fired_at
8
- puts payload.data.id
9
- puts payload.data.list_id
6
+ payload = incoming.payload
7
+ # puts payload.fired_at
8
+ # puts payload.data.id
9
+ # puts payload.data.list_id
10
10
  puts payload.data.email
11
- puts payload.data.email_type
12
- puts payload.data.merges.EMAIL
13
- puts payload.data.merges.FNAME
14
- puts payload.data.merges.LNAME
15
- puts payload.data.merges.INTERESTS
16
- puts payload.data.ip_opt
17
- puts payload.data.ip_signup
11
+ # puts payload.data.email_type
12
+ # puts payload.data.merges.EMAIL
13
+ # puts payload.data.merges.FNAME
14
+ # puts payload.data.merges.LNAME
15
+ # puts payload.data.merges.INTERESTS
16
+ # puts payload.data.ip_opt
17
+ # puts payload.data.ip_signup
18
18
  end
19
19
 
20
20
  def on_unsubscribe(incoming)
21
- payload = payload
22
- puts payload.fired_at
23
- puts payload.data.action
24
- puts payload.data.reason
25
- puts payload.data.id
26
- puts payload.data.list_id
27
- puts payload.data.email
28
- puts payload.data.email_type
29
- puts payload.data.merges.EMAIL
30
- puts payload.data.merges.FNAME
31
- puts payload.data.merges.LNAME
32
- puts payload.data.merges.INTERESTS
33
- puts payload.data.ip_opt
34
- puts payload.data.campaign_id
21
+ payload = incoming.payload
22
+ # puts payload.fired_at
23
+ # puts payload.data.action
24
+ # puts payload.data.reason
25
+ # puts payload.data.id
26
+ # puts payload.data.list_id
27
+ # puts payload.data.email
28
+ # puts payload.data.email_type
29
+ # puts payload.data.merges.EMAIL
30
+ # puts payload.data.merges.FNAME
31
+ # puts payload.data.merges.LNAME
32
+ # puts payload.data.merges.INTERESTS
33
+ # puts payload.data.ip_opt
34
+ # puts payload.data.campaign_id
35
35
  puts payload.data.reason
36
36
  end
37
37
 
38
38
  def on_profile(incoming)
39
- payload = payload
39
+ payload = incoming.payload
40
40
  puts payload.fired_at
41
- puts payload.data.id
42
- puts payload.data.list_id
43
- puts payload.data.email
44
- puts payload.data.email_type
45
- puts payload.data.merges.EMAIL
46
- puts payload.data.merges.FNAME
47
- puts payload.data.merges.LNAME
48
- puts payload.data.merges.INTERESTS
49
- puts payload.data.ip_opt
41
+ # puts payload.data.id
42
+ # puts payload.data.list_id
43
+ # puts payload.data.email
44
+ # puts payload.data.email_type
45
+ # puts payload.data.merges.EMAIL
46
+ # puts payload.data.merges.FNAME
47
+ # puts payload.data.merges.LNAME
48
+ # puts payload.data.merges.INTERESTS
49
+ # puts payload.data.ip_opt
50
50
  end
51
51
 
52
52
  def on_upemail(incoming)
53
- payload = payload
54
- puts payload.fired_at
55
- puts payload.data.list_id
56
- puts payload.data.new_id
53
+ payload = incoming.payload
54
+ # puts payload.fired_at
55
+ # puts payload.data.list_id
56
+ # puts payload.data.new_id
57
57
  puts payload.data.new_email
58
58
  puts payload.data.old_email
59
59
  end
60
60
 
61
61
  def on_cleaned(incoming)
62
- payload = payload
63
- puts payload.fired_at
64
- puts payload.data.list_id
62
+ payload = incoming.payload
63
+ # puts payload.fired_at
64
+ # puts payload.data.list_id
65
65
  puts payload.data.campaign_id
66
- puts payload.data.reason
67
- puts payload.data.email
66
+ # puts payload.data.reason
67
+ # puts payload.data.email
68
68
  end
69
69
 
70
70
  def on_campaign(incoming)
71
- payload = payload
72
- puts payload.fired_at
73
- puts payload.data.id
71
+ payload = incoming.payload
72
+ # puts payload.fired_at
73
+ # puts payload.data.id
74
74
  puts payload.data.subject
75
- puts payload.data.status
76
- puts payload.data.reason
77
- puts payload.data.list_id
75
+ # puts payload.data.status
76
+ # puts payload.data.reason
77
+ # puts payload.data.list_id
78
78
  end
79
79
 
80
80
  end
@@ -1,5 +1,5 @@
1
1
  module Webhookr
2
2
  module Mailchimp
3
- VERSION = "0.0.1"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
@@ -10,3 +10,9 @@ require File.expand_path('../../lib/webhookr-mailchimp.rb', __FILE__)
10
10
  if RUBY_VERSION >= "1.9"
11
11
  MiniTest::Reporters.use!(MiniTest::Reporters::SpecReporter.new)
12
12
  end
13
+
14
+ puts "Webhookr #{Webhookr::VERSION}"
15
+ puts "Webhookr::Mailchimp #{Webhookr::Mailchimp::VERSION}"
16
+ puts "Rails #{Rails::VERSION::STRING}"
17
+ puts "Ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} - #{RbConfig::CONFIG['RUBY_INSTALL_NAME']}"
18
+
@@ -19,6 +19,6 @@ Gem::Specification.new do |gem|
19
19
  gem.require_paths = ["lib"]
20
20
 
21
21
  gem.add_dependency("webhookr")
22
- gem.add_dependency("activesupport", ["~> 3.1"])
22
+ gem.add_dependency("activesupport", [">= 3.1"])
23
23
  end
24
24
 
metadata CHANGED
@@ -1,25 +1,25 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webhookr-mailchimp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
4
  prerelease:
5
+ version: 0.1.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Gerry Power
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-12 00:00:00.000000000 Z
12
+ date: 2013-07-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: webhookr
16
+ type: :runtime
16
17
  requirement: !ruby/object:Gem::Requirement
17
18
  none: false
18
19
  requirements:
19
20
  - - ! '>='
20
21
  - !ruby/object:Gem::Version
21
22
  version: '0'
22
- type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
@@ -29,18 +29,18 @@ dependencies:
29
29
  version: '0'
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: activesupport
32
+ type: :runtime
32
33
  requirement: !ruby/object:Gem::Requirement
33
34
  none: false
34
35
  requirements:
35
- - - ~>
36
+ - - ! '>='
36
37
  - !ruby/object:Gem::Version
37
38
  version: '3.1'
38
- type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ~>
43
+ - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: '3.1'
46
46
  description: A webhookr extension to support Mailchimp webhooks.
@@ -51,6 +51,7 @@ extensions: []
51
51
  extra_rdoc_files: []
52
52
  files:
53
53
  - .gitignore
54
+ - .travis.yml
54
55
  - Gemfile
55
56
  - Guardfile
56
57
  - LICENSE.txt