resque-rate_limited_queue 1.0.4 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5cab3ff531eddf3677d1dce33e4d8d0a4dc9d515
4
- data.tar.gz: 2b916b8dd1515d1fe533ae20115bf45f05d1985a
3
+ metadata.gz: 07ee5c4d39c7434cc7967d8bdd7e81bbb258f371
4
+ data.tar.gz: 0ff739b954161b6573762e6d933624bd8a7128c2
5
5
  SHA512:
6
- metadata.gz: 2a33bc20ca9ddb4424c0728dbba292b50df89167697240e2a3edb253ba47dc4a4f5a4eb54fe6b5b38053bb6f0b9f1242007b5aff7aeb41493ff728245ecbd790
7
- data.tar.gz: 5bdf3b1ebd1d2860facd9d2630ca79a3cd94f28ca1104430f84c8a4b09c881ba203789db738ea8ae5bb06e6562fb15e6161050026abab739b3ae200388dc3048
6
+ metadata.gz: 6b3682ca5d2714d5f41eeed0f496475b9bc58ea0faedefe00f9ee01343d4227df57668d8f7307548755a1dd029802cd220dd79a26b4b1cd75f3a775dd4f3686a
7
+ data.tar.gz: 4d0b221725a6eab14d3f263cfc7388fd29200b48fe169b1bce33dd5f8ea1047ffd324a6b52ab99c4106a0ebcf711f7ce0dde146ae26283d1dc5825fcfd170988
@@ -1,3 +1,3 @@
1
1
  module RateLimitedQueue
2
- VERSION = '1.0.4'
2
+ VERSION = '1.1.0'.freeze
3
3
  end
@@ -4,7 +4,8 @@ module Resque
4
4
  class BaseApiQueue
5
5
  extend Resque::Plugins::RateLimitedQueue
6
6
  def self.perform(klass, *params)
7
- find_class(klass).perform(*params)
7
+ # find_class(klass).perform(*params)
8
+ Resque.enqueue_to @queue, klass, *params # Enqueue so that ResqueSolo can take effect
8
9
  end
9
10
 
10
11
  def self.enqueue(klass, *params)
@@ -1,8 +1,8 @@
1
1
  module Resque
2
2
  module Plugins
3
3
  module RateLimitedQueue
4
- RESQUE_PREFIX = 'queue:'
5
- MUTEX = 'Resque::Plugins::RateLimitedQueue'
4
+ RESQUE_PREFIX = 'queue:'.freeze
5
+ MUTEX = 'Resque::Plugins::RateLimitedQueue'.freeze
6
6
 
7
7
  def around_perform_with_check_and_requeue(*params)
8
8
  paused = false
@@ -18,7 +18,8 @@ module Resque
18
18
  @queue,
19
19
  timestamp,
20
20
  Resque::Plugins::RateLimitedQueue::UnPause,
21
- klass)
21
+ klass
22
+ )
22
23
  end
23
24
 
24
25
  def perform(klass)
@@ -30,14 +30,14 @@ and evernote; these allow you to support rate limited apis with minimal changes.
30
30
  spec.add_dependency 'evernote-thrift', '~> 1.25', '>= 1.25.1'
31
31
  spec.add_dependency 'twitter', '~> 5.11', '>= 5.11.0'
32
32
 
33
- spec.add_development_dependency 'bundler', '~> 1.7'
34
- spec.add_development_dependency 'rake', '~> 10.0'
35
- spec.add_development_dependency 'rspec', '~> 2.6'
36
- spec.add_development_dependency 'simplecov', '~> 0.9.1'
37
- spec.add_development_dependency 'gem-release', '~> 0.7'
38
- spec.add_development_dependency 'guard', '~> 2.12'
39
- spec.add_development_dependency 'guard-rspec', '~> 4.1', '>= 4.1.1'
40
- spec.add_development_dependency 'guard-rubocop', '~> 1.2'
41
- spec.add_development_dependency 'parser', '~> 2.2.2.5' # To avoid Rubocop parser warnings
42
- spec.add_development_dependency 'rubocop', '~> 0.32'
33
+ spec.add_development_dependency 'rake', '~> 10'
34
+ spec.add_development_dependency 'rspec', '~> 2'
35
+ spec.add_development_dependency 'simplecov', '~> 0'
36
+ spec.add_development_dependency 'rubocop', '~> 0'
37
+ spec.add_development_dependency 'reek', '~> 4'
38
+ spec.add_development_dependency 'listen', '~> 3.0', '< 3.1' # Dependency of guard, 3.1 requires Ruby 2.2+
39
+ spec.add_development_dependency 'guard', '~> 2'
40
+ spec.add_development_dependency 'guard-rspec', '~> 4'
41
+ spec.add_development_dependency 'guard-rubocop', '~> 1'
42
+ spec.add_development_dependency 'gem-release', '~> 0'
43
43
  end
@@ -3,7 +3,7 @@ require 'resque/rate_limited_queue'
3
3
 
4
4
  class RateLimitedTestQueueAL
5
5
  def self.perform(succeed)
6
- fail(AngellistApi::Error::TooManyRequests, 'error') unless succeed
6
+ raise(AngellistApi::Error::TooManyRequests, 'error') unless succeed
7
7
  end
8
8
  end
9
9
 
@@ -18,7 +18,8 @@ describe Resque::Plugins::RateLimitedQueue::AngellistQueue do
18
18
  :angellist_api,
19
19
  Resque::Plugins::RateLimitedQueue::AngellistQueue,
20
20
  RateLimitedTestQueueAL.to_s,
21
- true)
21
+ true
22
+ )
22
23
  Resque::Plugins::RateLimitedQueue::AngellistQueue
23
24
  .enqueue(RateLimitedTestQueueAL, true)
24
25
  end
@@ -9,7 +9,7 @@ end
9
9
 
10
10
  class RateLimitedTestQueueEn
11
11
  def self.perform(succeed)
12
- fail(
12
+ raise(
13
13
  Evernote::EDAM::Error::EDAMSystemException,
14
14
  errorCode: Evernote::EDAM::Error::EDAMErrorCode::RATE_LIMIT_REACHED,
15
15
  rateLimitDuration: RateLimitDuration
@@ -19,7 +19,7 @@ end
19
19
 
20
20
  class RateLimitedTestQueueOther
21
21
  def self.perform
22
- fail(Evernote::EDAM::Error::EDAMSystemException)
22
+ raise(Evernote::EDAM::Error::EDAMSystemException)
23
23
  end
24
24
  end
25
25
 
@@ -33,7 +33,8 @@ describe Resque::Plugins::RateLimitedQueue::EvernoteQueue do
33
33
  :evernote_api,
34
34
  Resque::Plugins::RateLimitedQueue::EvernoteQueue,
35
35
  RateLimitedTestQueueEn.to_s,
36
- true)
36
+ true
37
+ )
37
38
  Resque::Plugins::RateLimitedQueue::EvernoteQueue
38
39
  .enqueue(RateLimitedTestQueueEn, true)
39
40
  end
@@ -3,7 +3,7 @@ require 'resque/rate_limited_queue'
3
3
 
4
4
  class RateLimitedTestQueueTw
5
5
  def self.perform(succeed)
6
- fail(Twitter::Error::TooManyRequests
6
+ raise(Twitter::Error::TooManyRequests
7
7
  .new('', 'x-rate-limit-reset' => (Time.now + 60).to_i)) unless succeed
8
8
  end
9
9
  end
@@ -19,7 +19,8 @@ describe Resque::Plugins::RateLimitedQueue::TwitterQueue do
19
19
  :twitter_api,
20
20
  Resque::Plugins::RateLimitedQueue::TwitterQueue,
21
21
  RateLimitedTestQueueTw.to_s,
22
- true)
22
+ true
23
+ )
23
24
  Resque::Plugins::RateLimitedQueue::TwitterQueue
24
25
  .enqueue(RateLimitedTestQueueTw, true)
25
26
  end
@@ -83,7 +83,7 @@ describe Resque::Plugins::RateLimitedQueue do
83
83
 
84
84
  it 'should schedule an unpause job' do
85
85
  Resque::Plugins::RateLimitedQueue::UnPause.should_receive(:enqueue)
86
- .with(nil, 'RateLimitedTestQueue')
86
+ .with(nil, 'RateLimitedTestQueue')
87
87
  RateLimitedTestQueue.pause_until(nil)
88
88
  end
89
89
  end
@@ -28,7 +28,8 @@ describe Resque::Plugins::RateLimitedQueue::UnPause do
28
28
  :queue_name,
29
29
  nil,
30
30
  Resque::Plugins::RateLimitedQueue::UnPause,
31
- RateLimitedTestQueue)
31
+ RateLimitedTestQueue
32
+ )
32
33
 
33
34
  Resque::Plugins::RateLimitedQueue::UnPause.enqueue(nil, RateLimitedTestQueue)
34
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-rate_limited_queue
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Greg Dowling
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-16 00:00:00.000000000 Z
11
+ date: 2016-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: resque
@@ -111,151 +111,151 @@ dependencies:
111
111
  - !ruby/object:Gem::Version
112
112
  version: 5.11.0
113
113
  - !ruby/object:Gem::Dependency
114
- name: bundler
114
+ name: rake
115
115
  requirement: !ruby/object:Gem::Requirement
116
116
  requirements:
117
117
  - - "~>"
118
118
  - !ruby/object:Gem::Version
119
- version: '1.7'
119
+ version: '10'
120
120
  type: :development
121
121
  prerelease: false
122
122
  version_requirements: !ruby/object:Gem::Requirement
123
123
  requirements:
124
124
  - - "~>"
125
125
  - !ruby/object:Gem::Version
126
- version: '1.7'
126
+ version: '10'
127
127
  - !ruby/object:Gem::Dependency
128
- name: rake
128
+ name: rspec
129
129
  requirement: !ruby/object:Gem::Requirement
130
130
  requirements:
131
131
  - - "~>"
132
132
  - !ruby/object:Gem::Version
133
- version: '10.0'
133
+ version: '2'
134
134
  type: :development
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
137
137
  requirements:
138
138
  - - "~>"
139
139
  - !ruby/object:Gem::Version
140
- version: '10.0'
140
+ version: '2'
141
141
  - !ruby/object:Gem::Dependency
142
- name: rspec
142
+ name: simplecov
143
143
  requirement: !ruby/object:Gem::Requirement
144
144
  requirements:
145
145
  - - "~>"
146
146
  - !ruby/object:Gem::Version
147
- version: '2.6'
147
+ version: '0'
148
148
  type: :development
149
149
  prerelease: false
150
150
  version_requirements: !ruby/object:Gem::Requirement
151
151
  requirements:
152
152
  - - "~>"
153
153
  - !ruby/object:Gem::Version
154
- version: '2.6'
154
+ version: '0'
155
155
  - !ruby/object:Gem::Dependency
156
- name: simplecov
156
+ name: rubocop
157
157
  requirement: !ruby/object:Gem::Requirement
158
158
  requirements:
159
159
  - - "~>"
160
160
  - !ruby/object:Gem::Version
161
- version: 0.9.1
161
+ version: '0'
162
162
  type: :development
163
163
  prerelease: false
164
164
  version_requirements: !ruby/object:Gem::Requirement
165
165
  requirements:
166
166
  - - "~>"
167
167
  - !ruby/object:Gem::Version
168
- version: 0.9.1
168
+ version: '0'
169
169
  - !ruby/object:Gem::Dependency
170
- name: gem-release
170
+ name: reek
171
171
  requirement: !ruby/object:Gem::Requirement
172
172
  requirements:
173
173
  - - "~>"
174
174
  - !ruby/object:Gem::Version
175
- version: '0.7'
175
+ version: '4'
176
176
  type: :development
177
177
  prerelease: false
178
178
  version_requirements: !ruby/object:Gem::Requirement
179
179
  requirements:
180
180
  - - "~>"
181
181
  - !ruby/object:Gem::Version
182
- version: '0.7'
182
+ version: '4'
183
183
  - !ruby/object:Gem::Dependency
184
- name: guard
184
+ name: listen
185
185
  requirement: !ruby/object:Gem::Requirement
186
186
  requirements:
187
187
  - - "~>"
188
188
  - !ruby/object:Gem::Version
189
- version: '2.12'
189
+ version: '3.0'
190
+ - - "<"
191
+ - !ruby/object:Gem::Version
192
+ version: '3.1'
190
193
  type: :development
191
194
  prerelease: false
192
195
  version_requirements: !ruby/object:Gem::Requirement
193
196
  requirements:
194
197
  - - "~>"
195
198
  - !ruby/object:Gem::Version
196
- version: '2.12'
199
+ version: '3.0'
200
+ - - "<"
201
+ - !ruby/object:Gem::Version
202
+ version: '3.1'
197
203
  - !ruby/object:Gem::Dependency
198
- name: guard-rspec
204
+ name: guard
199
205
  requirement: !ruby/object:Gem::Requirement
200
206
  requirements:
201
207
  - - "~>"
202
208
  - !ruby/object:Gem::Version
203
- version: '4.1'
204
- - - ">="
205
- - !ruby/object:Gem::Version
206
- version: 4.1.1
209
+ version: '2'
207
210
  type: :development
208
211
  prerelease: false
209
212
  version_requirements: !ruby/object:Gem::Requirement
210
213
  requirements:
211
214
  - - "~>"
212
215
  - !ruby/object:Gem::Version
213
- version: '4.1'
214
- - - ">="
215
- - !ruby/object:Gem::Version
216
- version: 4.1.1
216
+ version: '2'
217
217
  - !ruby/object:Gem::Dependency
218
- name: guard-rubocop
218
+ name: guard-rspec
219
219
  requirement: !ruby/object:Gem::Requirement
220
220
  requirements:
221
221
  - - "~>"
222
222
  - !ruby/object:Gem::Version
223
- version: '1.2'
223
+ version: '4'
224
224
  type: :development
225
225
  prerelease: false
226
226
  version_requirements: !ruby/object:Gem::Requirement
227
227
  requirements:
228
228
  - - "~>"
229
229
  - !ruby/object:Gem::Version
230
- version: '1.2'
230
+ version: '4'
231
231
  - !ruby/object:Gem::Dependency
232
- name: parser
232
+ name: guard-rubocop
233
233
  requirement: !ruby/object:Gem::Requirement
234
234
  requirements:
235
235
  - - "~>"
236
236
  - !ruby/object:Gem::Version
237
- version: 2.2.2.5
237
+ version: '1'
238
238
  type: :development
239
239
  prerelease: false
240
240
  version_requirements: !ruby/object:Gem::Requirement
241
241
  requirements:
242
242
  - - "~>"
243
243
  - !ruby/object:Gem::Version
244
- version: 2.2.2.5
244
+ version: '1'
245
245
  - !ruby/object:Gem::Dependency
246
- name: rubocop
246
+ name: gem-release
247
247
  requirement: !ruby/object:Gem::Requirement
248
248
  requirements:
249
249
  - - "~>"
250
250
  - !ruby/object:Gem::Version
251
- version: '0.32'
251
+ version: '0'
252
252
  type: :development
253
253
  prerelease: false
254
254
  version_requirements: !ruby/object:Gem::Requirement
255
255
  requirements:
256
256
  - - "~>"
257
257
  - !ruby/object:Gem::Version
258
- version: '0.32'
258
+ version: '0'
259
259
  description: |-
260
260
  A Resque plugin which allows you to create dedicated queues for jobs that use rate limited apis.
261
261
  These queues will pause when one of the jobs hits a rate limit, and unpause after a suitable time period.
@@ -312,7 +312,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
312
312
  version: '0'
313
313
  requirements: []
314
314
  rubyforge_project:
315
- rubygems_version: 2.4.3
315
+ rubygems_version: 2.6.7
316
316
  signing_key:
317
317
  specification_version: 4
318
318
  summary: A Resque plugin to help manage jobs that use rate limited apis, pausing when