sidekiq 2.13.0 → 2.13.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of sidekiq might be problematic. Click here for more details.
- data/.gitignore +2 -0
- data/Changes.md +21 -0
- data/Contributing.md +26 -0
- data/Pro-Changes.md +22 -0
- data/lib/sidekiq/exception_handler.rb +1 -1
- data/lib/sidekiq/middleware/chain.rb +8 -1
- data/lib/sidekiq/middleware/server/retry_jobs.rb +14 -1
- data/lib/sidekiq/redis_connection.rb +14 -5
- data/lib/sidekiq/version.rb +1 -1
- data/lib/sidekiq/web.rb +33 -11
- data/test/test_exception_handler.rb +3 -7
- data/test/test_middleware.rb +9 -2
- data/test/test_redis_connection.rb +30 -0
- data/test/test_retry.rb +17 -0
- data/test/test_web.rb +41 -3
- data/web/assets/javascripts/dashboard.js +36 -3
- data/web/assets/javascripts/locales/README.md +27 -0
- data/web/assets/javascripts/locales/jquery.timeago.ar.js +96 -0
- data/web/assets/javascripts/locales/jquery.timeago.bg.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.bs.js +49 -0
- data/web/assets/javascripts/locales/jquery.timeago.ca.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.cy.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.cz.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.da.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.de.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.el.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.en-short.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.en.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.es.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.et.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.fa.js +22 -0
- data/web/assets/javascripts/locales/jquery.timeago.fi.js +28 -0
- data/web/assets/javascripts/locales/jquery.timeago.fr-short.js +16 -0
- data/web/assets/javascripts/locales/jquery.timeago.fr.js +17 -0
- data/web/assets/javascripts/locales/jquery.timeago.he.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.hr.js +49 -0
- data/web/assets/javascripts/locales/jquery.timeago.hu.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.hy.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.id.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.it.js +16 -0
- data/web/assets/javascripts/locales/jquery.timeago.ja.js +19 -0
- data/web/assets/javascripts/locales/jquery.timeago.ko.js +17 -0
- data/web/assets/javascripts/locales/jquery.timeago.lt.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.mk.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.nl.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.no.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.pl.js +31 -0
- data/web/assets/javascripts/locales/jquery.timeago.pt-br.js +16 -0
- data/web/assets/javascripts/locales/jquery.timeago.pt.js +16 -0
- data/web/assets/javascripts/locales/jquery.timeago.ro.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.rs.js +49 -0
- data/web/assets/javascripts/locales/jquery.timeago.ru.js +34 -0
- data/web/assets/javascripts/locales/jquery.timeago.sk.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.sl.js +44 -0
- data/web/assets/javascripts/locales/jquery.timeago.sv.js +18 -0
- data/web/assets/javascripts/locales/jquery.timeago.th.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.tr.js +16 -0
- data/web/assets/javascripts/locales/jquery.timeago.uk.js +34 -0
- data/web/assets/javascripts/locales/jquery.timeago.uz.js +19 -0
- data/web/assets/javascripts/locales/jquery.timeago.zh-CN.js +20 -0
- data/web/assets/javascripts/locales/jquery.timeago.zh-TW.js +20 -0
- data/web/assets/stylesheets/application.css +46 -1
- data/web/views/_job_info.slim +51 -0
- data/web/views/_summary.slim +8 -8
- data/web/views/index.slim +1 -1
- data/web/views/layout.slim +24 -22
- data/web/views/queue.slim +1 -1
- data/web/views/retries.slim +2 -1
- data/web/views/retry.slim +1 -44
- data/web/views/scheduled.slim +4 -2
- data/web/views/scheduled_job_info.slim +6 -0
- metadata +50 -2
data/web/views/index.slim
CHANGED
data/web/views/layout.slim
CHANGED
@@ -6,6 +6,7 @@ html
|
|
6
6
|
link href='#{{root_path}}stylesheets/bootstrap.css' media='screen' rel='stylesheet' type='text/css'
|
7
7
|
link href='#{{root_path}}stylesheets/application.css' media='screen' rel='stylesheet' type='text/css'
|
8
8
|
script type="text/javascript" src="#{{root_path}}javascripts/application.js"
|
9
|
+
script type="text/javascript" src="#{{root_path}}javascripts/locales/jquery.timeago.#{locale}.js"
|
9
10
|
|
10
11
|
- if params[:poll]
|
11
12
|
javascript:
|
@@ -14,35 +15,36 @@ html
|
|
14
15
|
body.admin
|
15
16
|
.navbar.navbar-fixed-top
|
16
17
|
==slim :_nav
|
17
|
-
.navbar.navbar-fixed-bottom.navbar-inverse
|
18
|
-
.navbar-inner
|
19
|
-
.container
|
20
|
-
ul.nav
|
21
|
-
li
|
22
|
-
p.navbar-text style="color:white;" Sidekiq v#{Sidekiq::VERSION}
|
23
|
-
li
|
24
|
-
p.navbar-text Redis: #{location}
|
25
|
-
li
|
26
|
-
p.navbar-text #{t('Time')}: #{Time.now.utc.strftime('%H:%M:%S UTC')}
|
27
|
-
- if namespace
|
28
|
-
li
|
29
|
-
p.navbar-text #{t('Namespace')}: #{namespace}
|
30
18
|
|
31
19
|
#page
|
32
20
|
.container
|
33
21
|
.row
|
34
|
-
.
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
.span2
|
22
|
+
.span12.summary_bar
|
23
|
+
.row
|
24
|
+
h4.span10
|
25
|
+
span.title = t('Status')
|
26
|
+
== slim :_status
|
27
|
+
- unless current_path == ''
|
28
|
+
.span2.pull-right.actions
|
42
29
|
- if params[:poll]
|
43
30
|
a#live-poll.btn.btn-block.btn-primary.active href='#{{root_path}}#{{current_path}}' = t('StopPolling')
|
44
31
|
- else
|
45
32
|
a#live-poll.btn.btn-block.btn-primary href='#{{root_path}}#{{current_path}}?poll=true' = t('LivePoll')
|
33
|
+
== slim :_summary
|
46
34
|
|
47
|
-
.
|
35
|
+
.span12
|
48
36
|
== yield
|
37
|
+
|
38
|
+
.navbar.navbar-fixed-bottom.navbar-inverse
|
39
|
+
.navbar-inner
|
40
|
+
.container
|
41
|
+
ul.nav
|
42
|
+
li
|
43
|
+
p.navbar-text style="color:white;" Sidekiq v#{Sidekiq::VERSION}
|
44
|
+
li
|
45
|
+
p.navbar-text Redis: #{location}
|
46
|
+
li
|
47
|
+
p.navbar-text #{t('Time')}: #{Time.now.utc.strftime('%H:%M:%S UTC')}
|
48
|
+
- if namespace
|
49
|
+
li
|
50
|
+
p.navbar-text #{t('Namespace')}: #{namespace}
|
data/web/views/queue.slim
CHANGED
data/web/views/retries.slim
CHANGED
@@ -27,7 +27,8 @@ header.row
|
|
27
27
|
td
|
28
28
|
a href="#{root_path}queues/#{msg['queue']}" #{msg['queue']}
|
29
29
|
td= msg['class']
|
30
|
-
td
|
30
|
+
td
|
31
|
+
div.args=display_args(msg['args'])
|
31
32
|
input.btn.btn-primary.btn-small.pull-left type="submit" name="retry" value="#{t('RetryNow')}"
|
32
33
|
input.btn.btn-danger.btn-small.pull-left type="submit" name="delete" value="#{t('Delete')}"
|
33
34
|
|
data/web/views/retry.slim
CHANGED
@@ -1,47 +1,4 @@
|
|
1
|
-
|
2
|
-
h3 = t('Job')
|
3
|
-
|
4
|
-
table class="retry table table-bordered table-striped"
|
5
|
-
tbody
|
6
|
-
tr
|
7
|
-
th = t('Queue')
|
8
|
-
td
|
9
|
-
a href="#{root_path}queues/#{@retry['queue']}" #{@retry['queue']}
|
10
|
-
tr
|
11
|
-
th = t('Class')
|
12
|
-
td
|
13
|
-
code= @retry['class']
|
14
|
-
tr
|
15
|
-
th = t('Arguments')
|
16
|
-
td
|
17
|
-
code= display_args(@retry['args'], 1000)
|
18
|
-
tr
|
19
|
-
th JID
|
20
|
-
td
|
21
|
-
code= @retry.jid
|
22
|
-
tr
|
23
|
-
th = t('Enqueued')
|
24
|
-
td== relative_time(@retry.enqueued_at)
|
25
|
-
- unless retry_extra_items(@retry).empty?
|
26
|
-
tr
|
27
|
-
th = t('Extras')
|
28
|
-
td
|
29
|
-
code
|
30
|
-
= retry_extra_items(@retry).inspect
|
31
|
-
- if @retry['retry_count'] > 0
|
32
|
-
tr
|
33
|
-
th = t('RetryCount')
|
34
|
-
td= @retry['retry_count']
|
35
|
-
tr
|
36
|
-
th = t('LastRetry')
|
37
|
-
td== relative_time(@retry['retried_at'].is_a?(Numeric) ? Time.at(@retry['retried_at']) : Time.parse(@retry['retried_at']))
|
38
|
-
- else
|
39
|
-
tr
|
40
|
-
th = t('OriginallyFailed')
|
41
|
-
td== relative_time(@retry['failed_at'].is_a?(Numeric) ? Time.at(@retry['failed_at']) : Time.parse(@retry['failed_at']))
|
42
|
-
tr
|
43
|
-
th = t('NextRetry')
|
44
|
-
td== relative_time(@retry.at)
|
1
|
+
== slim :_job_info, :locals => {:job => @retry, :type => :retry}
|
45
2
|
|
46
3
|
h3 = t('Error')
|
47
4
|
table class="error table table-bordered table-striped"
|
data/web/views/scheduled.slim
CHANGED
@@ -20,11 +20,13 @@ header.row
|
|
20
20
|
tr
|
21
21
|
td
|
22
22
|
input type='checkbox' name='key[]' value='#{job_params(msg, score)}'
|
23
|
-
td
|
23
|
+
td
|
24
|
+
a href="#{root_path}scheduled/#{job_params(msg, score)}"== relative_time(Time.at(score))
|
24
25
|
td
|
25
26
|
a href="#{root_path}queues/#{msg['queue']}" #{msg['queue']}
|
26
27
|
td= msg['class']
|
27
|
-
td
|
28
|
+
td
|
29
|
+
div.args=display_args(msg['args'])
|
28
30
|
input.btn.btn-danger.pull-right type="submit" name="delete" value="#{t('Delete')}"
|
29
31
|
input.btn.btn-danger.pull-right type="submit" name="add_to_queue" value="#{t('AddToQueue')}"
|
30
32
|
- else
|
@@ -0,0 +1,6 @@
|
|
1
|
+
== slim :_job_info, :locals => {:job => @job, :type => :scheduled}
|
2
|
+
|
3
|
+
form.form-horizontal action="#{root_path}scheduled/#{job_params(@job, @job.score)}" method="post"
|
4
|
+
a.btn href="#{root_path}scheduled" = t('GoBack')
|
5
|
+
input.btn.btn-primary type="submit" name="add_to_queue" value="#{t('AddToQueue')}"
|
6
|
+
input.btn.btn-danger type="submit" name="delete" value="#{t('Delete')}"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.13.
|
4
|
+
version: 2.13.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-08-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: redis
|
@@ -216,6 +216,7 @@ files:
|
|
216
216
|
- .travis.yml
|
217
217
|
- COMM-LICENSE
|
218
218
|
- Changes.md
|
219
|
+
- Contributing.md
|
219
220
|
- Gemfile
|
220
221
|
- LICENSE
|
221
222
|
- Pro-Changes.md
|
@@ -288,6 +289,51 @@ files:
|
|
288
289
|
- web/assets/images/status/idle.png
|
289
290
|
- web/assets/javascripts/application.js
|
290
291
|
- web/assets/javascripts/dashboard.js
|
292
|
+
- web/assets/javascripts/locales/README.md
|
293
|
+
- web/assets/javascripts/locales/jquery.timeago.ar.js
|
294
|
+
- web/assets/javascripts/locales/jquery.timeago.bg.js
|
295
|
+
- web/assets/javascripts/locales/jquery.timeago.bs.js
|
296
|
+
- web/assets/javascripts/locales/jquery.timeago.ca.js
|
297
|
+
- web/assets/javascripts/locales/jquery.timeago.cy.js
|
298
|
+
- web/assets/javascripts/locales/jquery.timeago.cz.js
|
299
|
+
- web/assets/javascripts/locales/jquery.timeago.da.js
|
300
|
+
- web/assets/javascripts/locales/jquery.timeago.de.js
|
301
|
+
- web/assets/javascripts/locales/jquery.timeago.el.js
|
302
|
+
- web/assets/javascripts/locales/jquery.timeago.en-short.js
|
303
|
+
- web/assets/javascripts/locales/jquery.timeago.en.js
|
304
|
+
- web/assets/javascripts/locales/jquery.timeago.es.js
|
305
|
+
- web/assets/javascripts/locales/jquery.timeago.et.js
|
306
|
+
- web/assets/javascripts/locales/jquery.timeago.fa.js
|
307
|
+
- web/assets/javascripts/locales/jquery.timeago.fi.js
|
308
|
+
- web/assets/javascripts/locales/jquery.timeago.fr-short.js
|
309
|
+
- web/assets/javascripts/locales/jquery.timeago.fr.js
|
310
|
+
- web/assets/javascripts/locales/jquery.timeago.he.js
|
311
|
+
- web/assets/javascripts/locales/jquery.timeago.hr.js
|
312
|
+
- web/assets/javascripts/locales/jquery.timeago.hu.js
|
313
|
+
- web/assets/javascripts/locales/jquery.timeago.hy.js
|
314
|
+
- web/assets/javascripts/locales/jquery.timeago.id.js
|
315
|
+
- web/assets/javascripts/locales/jquery.timeago.it.js
|
316
|
+
- web/assets/javascripts/locales/jquery.timeago.ja.js
|
317
|
+
- web/assets/javascripts/locales/jquery.timeago.ko.js
|
318
|
+
- web/assets/javascripts/locales/jquery.timeago.lt.js
|
319
|
+
- web/assets/javascripts/locales/jquery.timeago.mk.js
|
320
|
+
- web/assets/javascripts/locales/jquery.timeago.nl.js
|
321
|
+
- web/assets/javascripts/locales/jquery.timeago.no.js
|
322
|
+
- web/assets/javascripts/locales/jquery.timeago.pl.js
|
323
|
+
- web/assets/javascripts/locales/jquery.timeago.pt-br.js
|
324
|
+
- web/assets/javascripts/locales/jquery.timeago.pt.js
|
325
|
+
- web/assets/javascripts/locales/jquery.timeago.ro.js
|
326
|
+
- web/assets/javascripts/locales/jquery.timeago.rs.js
|
327
|
+
- web/assets/javascripts/locales/jquery.timeago.ru.js
|
328
|
+
- web/assets/javascripts/locales/jquery.timeago.sk.js
|
329
|
+
- web/assets/javascripts/locales/jquery.timeago.sl.js
|
330
|
+
- web/assets/javascripts/locales/jquery.timeago.sv.js
|
331
|
+
- web/assets/javascripts/locales/jquery.timeago.th.js
|
332
|
+
- web/assets/javascripts/locales/jquery.timeago.tr.js
|
333
|
+
- web/assets/javascripts/locales/jquery.timeago.uk.js
|
334
|
+
- web/assets/javascripts/locales/jquery.timeago.uz.js
|
335
|
+
- web/assets/javascripts/locales/jquery.timeago.zh-CN.js
|
336
|
+
- web/assets/javascripts/locales/jquery.timeago.zh-TW.js
|
291
337
|
- web/assets/stylesheets/application.css
|
292
338
|
- web/assets/stylesheets/bootstrap.css
|
293
339
|
- web/locales/da.yml
|
@@ -304,6 +350,7 @@ files:
|
|
304
350
|
- web/locales/pt-br.yml
|
305
351
|
- web/locales/pt.yml
|
306
352
|
- web/locales/ru.yml
|
353
|
+
- web/views/_job_info.slim
|
307
354
|
- web/views/_nav.slim
|
308
355
|
- web/views/_paging.slim
|
309
356
|
- web/views/_status.slim
|
@@ -317,6 +364,7 @@ files:
|
|
317
364
|
- web/views/retries.slim
|
318
365
|
- web/views/retry.slim
|
319
366
|
- web/views/scheduled.slim
|
367
|
+
- web/views/scheduled_job_info.slim
|
320
368
|
homepage: http://sidekiq.org
|
321
369
|
licenses:
|
322
370
|
- LGPL-3.0
|