resque-rate_limited_queue 1.0.4 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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