em_apn_manager 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (9) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +5 -1
  3. data/Gemfile.lock +5 -29
  4. data/Procfile +1 -1
  5. data/README.md +57 -18
  6. data/Rakefile +0 -9
  7. data/VERSION +1 -1
  8. data/em_apn_manager.gemspec +16 -190
  9. metadata +11 -823
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7488d9d6b4d3ffca37840e1efd52dd3bc555c4cb
4
- data.tar.gz: 39053f313b6bdd6bb04469d2804c650ec0ca549f
3
+ metadata.gz: b17423831cd038649e5268ef4c4d17a854aa426e
4
+ data.tar.gz: 768147cb1223264f8c9aaef91b2a6b0e745f7bbb
5
5
  SHA512:
6
- metadata.gz: 4a9906727741db1583fe89b897c7876944a31ce5b0fa231c955195371e6f624ff633b3c606868aa47204a379933bf5ef6c3038952516ad2256e38a44d795786c
7
- data.tar.gz: a0e2b04ee2a8d50f83d10931ddd6b94f9ac08051905ea1edb93a6c25a27c48ae412cf4177bf260d65908d16777f540ee24c28eaef06a630d0cf156fe040a3ca3
6
+ metadata.gz: e84414e2ffdd9f268924782d52cd91ea05be1304e15479c22bbcc0b4e92ac8017249a7efc916e63a21a034cc41426fa5e2d3f93337bb49296c161ab1342e798d
7
+ data.tar.gz: fd3ff9dc1820a0163e65d23e7ad864e007e2dbf4c7767ecf67b8c00133d81934e86add862f25b6347ab594e5b1ed6a5cb9507c9f4da5fa7cb4d5cd8d9a76efbd
data/Gemfile CHANGED
@@ -1,6 +1,10 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gemspec
3
+ gem "eventmachine"
4
+ gem "em-hiredis"
5
+ gem "redis"
6
+ gem "thor"
7
+ gem "yajl-ruby"
4
8
 
5
9
  group :development do
6
10
  gem "shoulda"
data/Gemfile.lock CHANGED
@@ -1,14 +1,3 @@
1
- PATH
2
- remote: .
3
- specs:
4
- em_apn_manager (0.1.0)
5
- em-hiredis (>= 0.2.1)
6
- em_apn_manager
7
- eventmachine (>= 1.0.0)
8
- redis (>= 2.2.0)
9
- thor (~> 0.16)
10
- yajl-ruby (>= 0.8.2)
11
-
12
1
  GEM
13
2
  remote: https://rubygems.org/
14
3
  specs:
@@ -19,12 +8,8 @@ GEM
19
8
  thread_safe (~> 0.1)
20
9
  tzinfo (~> 0.3.37)
21
10
  addressable (2.3.5)
22
- annotate (2.5.0)
23
- rake
24
11
  atomic (1.1.10)
25
- bluecloth (2.2.0)
26
12
  builder (3.2.2)
27
- diff-lcs (1.1.3)
28
13
  em-hiredis (0.2.1)
29
14
  hiredis (~> 0.4.0)
30
15
  eventmachine (1.0.3)
@@ -72,14 +57,6 @@ GEM
72
57
  rdoc (4.0.1)
73
58
  json (~> 1.4)
74
59
  redis (3.0.4)
75
- rspec (2.6.0)
76
- rspec-core (~> 2.6.0)
77
- rspec-expectations (~> 2.6.0)
78
- rspec-mocks (~> 2.6.0)
79
- rspec-core (2.6.4)
80
- rspec-expectations (2.6.0)
81
- diff-lcs (~> 1.1.2)
82
- rspec-mocks (2.6.0)
83
60
  shoulda (3.5.0)
84
61
  shoulda-context (~> 1.0, >= 1.0.1)
85
62
  shoulda-matchers (>= 1.4.1, < 3.0)
@@ -91,18 +68,17 @@ GEM
91
68
  atomic
92
69
  tzinfo (0.3.37)
93
70
  yajl-ruby (1.1.0)
94
- yard (0.8.6.2)
95
71
 
96
72
  PLATFORMS
97
73
  ruby
98
74
 
99
75
  DEPENDENCIES
100
- annotate
101
- bluecloth
102
76
  bundler
103
- em_apn_manager!
77
+ em-hiredis
78
+ eventmachine
104
79
  jeweler (~> 1.8.4)
105
80
  rdoc
106
- rspec (~> 2.6.0)
81
+ redis
107
82
  shoulda
108
- yard
83
+ thor
84
+ yajl-ruby
data/Procfile CHANGED
@@ -1 +1 @@
1
- web: bundle exec ruby server.rb
1
+ web: ./bin/em_apn_manager server
data/README.md CHANGED
@@ -2,41 +2,80 @@ EventMachine APN Manager
2
2
  ==============
3
3
 
4
4
  EventMachine APN Connection Manager, The purpose is to support multiple cert and multiple application with one process.
5
+ It use redis pubsub to get message from application, then send message to apple, also kept the connection to APNS server, so it won't be blocked by apple.
5
6
 
6
- Steps for running with *Rails*:
7
+ ### Steps for running with `Rails`:
7
8
 
8
- 1. Add `gem 'em_apn_manager', git: 'git@github.com:hlxwell/em_apn_manager.git'` to *Gemfile*.
9
+ 1. Add below line to `Gemfile`:
10
+ ```ruby
11
+ gem 'em_apn_manager', git: 'git@github.com:hlxwell/em_apn_manager.git'
12
+ ```
9
13
 
10
- 2. Run `bundle exec rails g event_machine:apn_manager:install` to generate `config/em_apn_manager.yml` file.
14
+ 2. Generate `config/em_apn_manager.yml` file:
15
+ ```shell
16
+ bundle exec rails g event_machine:apn_manager:install
17
+ ```
11
18
 
12
- 3. Run `bundle exec em_apn_manager server -e development`.
19
+ 3. Run the server
20
+ ```shell
21
+ bundle exec em_apn_manager server -e development
22
+ ```
13
23
 
14
24
 
15
- Steps for running `Standalone`:
25
+ ### Steps for running `Standalone`:
16
26
 
17
- 1. Run `gem install em_apn_manager`
27
+ 1. Install `em_apn_manager` gem
28
+ ```shell
29
+ gem install em_apn_manager
30
+ ```
18
31
 
19
- 2. Run `em_apn_manager server --redis-host 127.0.0.1 --redis-port 6379` or `em_apn_manager server --config CONFIG_FILE_PATH`
32
+ 2. Run
33
+ ```shell
34
+ // read redis from url
35
+ em_apn_manager server -r redis://localhost:6379/em_apn_manager
36
+ ```
37
+ or
38
+ ```shell
39
+ // read redis config from config
40
+ em_apn_manager server -c CONFIG_FILE_PATH -e development
41
+ ```
20
42
 
21
- Put below line to your code for sending push notification:
43
+ ### Put below line to your code for sending push notification:
22
44
 
23
- `EM::ApnManager.push_notification({
45
+ ```ruby
46
+ EM::ApnManager.push_notification({
24
47
  env: CERT_ENVIRONMENT,
25
48
  cert: PEM_CERT_TEXT_CONTENT,
26
49
  token: DEVICE_TOKEN,
27
50
  message: YOUR_MESSAGE
28
- })`
29
-
30
- Running server in background:
31
-
32
- `em_apn_manager server --daemon`
33
-
51
+ })
52
+ ```
53
+ or if you don't need to install em_apn_manager in your project, you can do this:
54
+ ```ruby
55
+ your_redis_instance.publish "push-notification", {
56
+ env: "development",
57
+ cert: cert,
58
+ token: options[:token],
59
+ message: options[:message]
60
+ }.to_json
61
+ ```
62
+
63
+ If you want to run server in background:
64
+
65
+ ```shell
66
+ em_apn_manager server --daemon --pid_file /PATH/TO/PID
67
+ ```
68
+ or
69
+ ```shell
70
+ em_apn_manager server -d -p /PATH/TO/PID
71
+ ```
34
72
  Generate pem from p12
35
73
  ==================
36
74
 
37
- This is how you get `p12` file:
38
- http://docs.urbanairship.com/build/ios.html#set-up-your-application-with-apple
75
+ This is the [Tutorial](http://docs.urbanairship.com/build/ios.html#set-up-your-application-with-apple) for how to get `p12` file.
39
76
 
40
77
  You have to convert p12 format to pem format by below command line.
41
- `openssl pkcs12 -in cert.p12 -out cert.pem -nodes -clcerts`
78
+ ```
79
+ openssl pkcs12 -in cert.p12 -out cert.pem -nodes -clcerts
80
+ ```
42
81
 
data/Rakefile CHANGED
@@ -13,7 +13,6 @@ require 'rake'
13
13
 
14
14
  require 'jeweler'
15
15
  Jeweler::Tasks.new do |gem|
16
- # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
17
16
  gem.name = "em_apn_manager"
18
17
  gem.homepage = "http://github.com/hlxwell/em_apn_manager"
19
18
  gem.license = "MIT"
@@ -21,14 +20,6 @@ Jeweler::Tasks.new do |gem|
21
20
  gem.description = %Q{EventMachine multiple APNs connections Management Solution. You can use multiple cert and connection to apple's APNs server.}
22
21
  gem.email = "m.he@skillupjapan.co.jp"
23
22
  gem.authors = ["Michael He"]
24
-
25
- # dependencies defined in Gemfile
26
- gem.add_runtime_dependency "thor", "~> 0.16"
27
- gem.add_runtime_dependency "eventmachine", ">= 1.0.0"
28
- gem.add_runtime_dependency "yajl-ruby", ">= 0.8.2"
29
- gem.add_runtime_dependency "redis", ">= 2.2.0"
30
- gem.add_runtime_dependency "em-hiredis", ">= 0.2.1"
31
- gem.add_development_dependency "rspec", "~> 2.6.0"
32
23
  end
33
24
  Jeweler::RubygemsDotOrgTasks.new
34
25
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "em_apn_manager"
8
- s.version = "0.1.0"
8
+ s.version = "0.1.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Michael He"]
@@ -48,210 +48,36 @@ Gem::Specification.new do |s|
48
48
  s.specification_version = 4
49
49
 
50
50
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
51
- s.add_runtime_dependency(%q<em_apn_manager>, [">= 0"])
52
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
53
- s.add_development_dependency(%q<annotate>, [">= 0"])
54
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
55
- s.add_development_dependency(%q<yard>, [">= 0"])
56
- s.add_development_dependency(%q<bundler>, [">= 0"])
57
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
58
- s.add_development_dependency(%q<annotate>, [">= 0"])
59
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
60
- s.add_development_dependency(%q<yard>, [">= 0"])
61
- s.add_development_dependency(%q<bundler>, [">= 0"])
62
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
63
- s.add_development_dependency(%q<annotate>, [">= 0"])
64
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
65
- s.add_development_dependency(%q<yard>, [">= 0"])
66
- s.add_development_dependency(%q<bundler>, [">= 0"])
67
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
68
- s.add_development_dependency(%q<annotate>, [">= 0"])
69
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
70
- s.add_development_dependency(%q<yard>, [">= 0"])
71
- s.add_development_dependency(%q<bundler>, [">= 0"])
72
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
73
- s.add_development_dependency(%q<annotate>, [">= 0"])
74
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
75
- s.add_development_dependency(%q<yard>, [">= 0"])
76
- s.add_development_dependency(%q<bundler>, [">= 0"])
77
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
78
- s.add_development_dependency(%q<annotate>, [">= 0"])
79
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
80
- s.add_development_dependency(%q<yard>, [">= 0"])
81
- s.add_development_dependency(%q<bundler>, [">= 0"])
82
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
83
- s.add_development_dependency(%q<annotate>, [">= 0"])
84
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
85
- s.add_development_dependency(%q<yard>, [">= 0"])
86
- s.add_development_dependency(%q<bundler>, [">= 0"])
87
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
88
- s.add_development_dependency(%q<shoulda>, [">= 0"])
89
- s.add_development_dependency(%q<rdoc>, [">= 0"])
90
- s.add_development_dependency(%q<bundler>, [">= 0"])
91
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
92
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
51
+ s.add_runtime_dependency(%q<eventmachine>, [">= 0"])
52
+ s.add_runtime_dependency(%q<em-hiredis>, [">= 0"])
53
+ s.add_runtime_dependency(%q<redis>, [">= 0"])
54
+ s.add_runtime_dependency(%q<thor>, [">= 0"])
55
+ s.add_runtime_dependency(%q<yajl-ruby>, [">= 0"])
93
56
  s.add_development_dependency(%q<shoulda>, [">= 0"])
94
57
  s.add_development_dependency(%q<rdoc>, [">= 0"])
95
58
  s.add_development_dependency(%q<bundler>, [">= 0"])
96
59
  s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
97
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
98
- s.add_development_dependency(%q<shoulda>, [">= 0"])
99
- s.add_development_dependency(%q<rdoc>, [">= 0"])
100
- s.add_development_dependency(%q<bundler>, [">= 0"])
101
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
102
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
103
- s.add_development_dependency(%q<shoulda>, [">= 0"])
104
- s.add_development_dependency(%q<rdoc>, [">= 0"])
105
- s.add_development_dependency(%q<bundler>, [">= 0"])
106
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
107
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
108
- s.add_development_dependency(%q<shoulda>, [">= 0"])
109
- s.add_development_dependency(%q<rdoc>, [">= 0"])
110
- s.add_development_dependency(%q<bundler>, [">= 0"])
111
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
112
- s.add_runtime_dependency(%q<thor>, ["~> 0.16"])
113
- s.add_runtime_dependency(%q<eventmachine>, [">= 1.0.0"])
114
- s.add_runtime_dependency(%q<yajl-ruby>, [">= 0.8.2"])
115
- s.add_runtime_dependency(%q<redis>, [">= 2.2.0"])
116
- s.add_runtime_dependency(%q<em-hiredis>, [">= 0.2.1"])
117
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
118
60
  else
119
- s.add_dependency(%q<em_apn_manager>, [">= 0"])
120
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
121
- s.add_dependency(%q<annotate>, [">= 0"])
122
- s.add_dependency(%q<bluecloth>, [">= 0"])
123
- s.add_dependency(%q<yard>, [">= 0"])
124
- s.add_dependency(%q<bundler>, [">= 0"])
125
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
126
- s.add_dependency(%q<annotate>, [">= 0"])
127
- s.add_dependency(%q<bluecloth>, [">= 0"])
128
- s.add_dependency(%q<yard>, [">= 0"])
129
- s.add_dependency(%q<bundler>, [">= 0"])
130
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
131
- s.add_dependency(%q<annotate>, [">= 0"])
132
- s.add_dependency(%q<bluecloth>, [">= 0"])
133
- s.add_dependency(%q<yard>, [">= 0"])
134
- s.add_dependency(%q<bundler>, [">= 0"])
135
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
136
- s.add_dependency(%q<annotate>, [">= 0"])
137
- s.add_dependency(%q<bluecloth>, [">= 0"])
138
- s.add_dependency(%q<yard>, [">= 0"])
139
- s.add_dependency(%q<bundler>, [">= 0"])
140
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
141
- s.add_dependency(%q<annotate>, [">= 0"])
142
- s.add_dependency(%q<bluecloth>, [">= 0"])
143
- s.add_dependency(%q<yard>, [">= 0"])
144
- s.add_dependency(%q<bundler>, [">= 0"])
145
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
146
- s.add_dependency(%q<annotate>, [">= 0"])
147
- s.add_dependency(%q<bluecloth>, [">= 0"])
148
- s.add_dependency(%q<yard>, [">= 0"])
149
- s.add_dependency(%q<bundler>, [">= 0"])
150
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
151
- s.add_dependency(%q<annotate>, [">= 0"])
152
- s.add_dependency(%q<bluecloth>, [">= 0"])
153
- s.add_dependency(%q<yard>, [">= 0"])
154
- s.add_dependency(%q<bundler>, [">= 0"])
155
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
156
- s.add_dependency(%q<shoulda>, [">= 0"])
157
- s.add_dependency(%q<rdoc>, [">= 0"])
158
- s.add_dependency(%q<bundler>, [">= 0"])
159
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
160
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
61
+ s.add_dependency(%q<eventmachine>, [">= 0"])
62
+ s.add_dependency(%q<em-hiredis>, [">= 0"])
63
+ s.add_dependency(%q<redis>, [">= 0"])
64
+ s.add_dependency(%q<thor>, [">= 0"])
65
+ s.add_dependency(%q<yajl-ruby>, [">= 0"])
161
66
  s.add_dependency(%q<shoulda>, [">= 0"])
162
67
  s.add_dependency(%q<rdoc>, [">= 0"])
163
68
  s.add_dependency(%q<bundler>, [">= 0"])
164
69
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
165
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
166
- s.add_dependency(%q<shoulda>, [">= 0"])
167
- s.add_dependency(%q<rdoc>, [">= 0"])
168
- s.add_dependency(%q<bundler>, [">= 0"])
169
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
170
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
171
- s.add_dependency(%q<shoulda>, [">= 0"])
172
- s.add_dependency(%q<rdoc>, [">= 0"])
173
- s.add_dependency(%q<bundler>, [">= 0"])
174
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
175
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
176
- s.add_dependency(%q<shoulda>, [">= 0"])
177
- s.add_dependency(%q<rdoc>, [">= 0"])
178
- s.add_dependency(%q<bundler>, [">= 0"])
179
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
180
- s.add_dependency(%q<thor>, ["~> 0.16"])
181
- s.add_dependency(%q<eventmachine>, [">= 1.0.0"])
182
- s.add_dependency(%q<yajl-ruby>, [">= 0.8.2"])
183
- s.add_dependency(%q<redis>, [">= 2.2.0"])
184
- s.add_dependency(%q<em-hiredis>, [">= 0.2.1"])
185
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
186
70
  end
187
71
  else
188
- s.add_dependency(%q<em_apn_manager>, [">= 0"])
189
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
190
- s.add_dependency(%q<annotate>, [">= 0"])
191
- s.add_dependency(%q<bluecloth>, [">= 0"])
192
- s.add_dependency(%q<yard>, [">= 0"])
193
- s.add_dependency(%q<bundler>, [">= 0"])
194
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
195
- s.add_dependency(%q<annotate>, [">= 0"])
196
- s.add_dependency(%q<bluecloth>, [">= 0"])
197
- s.add_dependency(%q<yard>, [">= 0"])
198
- s.add_dependency(%q<bundler>, [">= 0"])
199
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
200
- s.add_dependency(%q<annotate>, [">= 0"])
201
- s.add_dependency(%q<bluecloth>, [">= 0"])
202
- s.add_dependency(%q<yard>, [">= 0"])
203
- s.add_dependency(%q<bundler>, [">= 0"])
204
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
205
- s.add_dependency(%q<annotate>, [">= 0"])
206
- s.add_dependency(%q<bluecloth>, [">= 0"])
207
- s.add_dependency(%q<yard>, [">= 0"])
208
- s.add_dependency(%q<bundler>, [">= 0"])
209
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
210
- s.add_dependency(%q<annotate>, [">= 0"])
211
- s.add_dependency(%q<bluecloth>, [">= 0"])
212
- s.add_dependency(%q<yard>, [">= 0"])
213
- s.add_dependency(%q<bundler>, [">= 0"])
214
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
215
- s.add_dependency(%q<annotate>, [">= 0"])
216
- s.add_dependency(%q<bluecloth>, [">= 0"])
217
- s.add_dependency(%q<yard>, [">= 0"])
218
- s.add_dependency(%q<bundler>, [">= 0"])
219
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
220
- s.add_dependency(%q<annotate>, [">= 0"])
221
- s.add_dependency(%q<bluecloth>, [">= 0"])
222
- s.add_dependency(%q<yard>, [">= 0"])
223
- s.add_dependency(%q<bundler>, [">= 0"])
224
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
225
- s.add_dependency(%q<shoulda>, [">= 0"])
226
- s.add_dependency(%q<rdoc>, [">= 0"])
227
- s.add_dependency(%q<bundler>, [">= 0"])
228
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
229
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
230
- s.add_dependency(%q<shoulda>, [">= 0"])
231
- s.add_dependency(%q<rdoc>, [">= 0"])
232
- s.add_dependency(%q<bundler>, [">= 0"])
233
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
234
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
235
- s.add_dependency(%q<shoulda>, [">= 0"])
236
- s.add_dependency(%q<rdoc>, [">= 0"])
237
- s.add_dependency(%q<bundler>, [">= 0"])
238
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
239
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
240
- s.add_dependency(%q<shoulda>, [">= 0"])
241
- s.add_dependency(%q<rdoc>, [">= 0"])
242
- s.add_dependency(%q<bundler>, [">= 0"])
243
- s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
244
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
72
+ s.add_dependency(%q<eventmachine>, [">= 0"])
73
+ s.add_dependency(%q<em-hiredis>, [">= 0"])
74
+ s.add_dependency(%q<redis>, [">= 0"])
75
+ s.add_dependency(%q<thor>, [">= 0"])
76
+ s.add_dependency(%q<yajl-ruby>, [">= 0"])
245
77
  s.add_dependency(%q<shoulda>, [">= 0"])
246
78
  s.add_dependency(%q<rdoc>, [">= 0"])
247
79
  s.add_dependency(%q<bundler>, [">= 0"])
248
80
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
249
- s.add_dependency(%q<thor>, ["~> 0.16"])
250
- s.add_dependency(%q<eventmachine>, [">= 1.0.0"])
251
- s.add_dependency(%q<yajl-ruby>, [">= 0.8.2"])
252
- s.add_dependency(%q<redis>, [">= 2.2.0"])
253
- s.add_dependency(%q<em-hiredis>, [">= 0.2.1"])
254
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
255
81
  end
256
82
  end
257
83