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.

Files changed (72) hide show
  1. data/.gitignore +2 -0
  2. data/Changes.md +21 -0
  3. data/Contributing.md +26 -0
  4. data/Pro-Changes.md +22 -0
  5. data/lib/sidekiq/exception_handler.rb +1 -1
  6. data/lib/sidekiq/middleware/chain.rb +8 -1
  7. data/lib/sidekiq/middleware/server/retry_jobs.rb +14 -1
  8. data/lib/sidekiq/redis_connection.rb +14 -5
  9. data/lib/sidekiq/version.rb +1 -1
  10. data/lib/sidekiq/web.rb +33 -11
  11. data/test/test_exception_handler.rb +3 -7
  12. data/test/test_middleware.rb +9 -2
  13. data/test/test_redis_connection.rb +30 -0
  14. data/test/test_retry.rb +17 -0
  15. data/test/test_web.rb +41 -3
  16. data/web/assets/javascripts/dashboard.js +36 -3
  17. data/web/assets/javascripts/locales/README.md +27 -0
  18. data/web/assets/javascripts/locales/jquery.timeago.ar.js +96 -0
  19. data/web/assets/javascripts/locales/jquery.timeago.bg.js +18 -0
  20. data/web/assets/javascripts/locales/jquery.timeago.bs.js +49 -0
  21. data/web/assets/javascripts/locales/jquery.timeago.ca.js +18 -0
  22. data/web/assets/javascripts/locales/jquery.timeago.cy.js +20 -0
  23. data/web/assets/javascripts/locales/jquery.timeago.cz.js +18 -0
  24. data/web/assets/javascripts/locales/jquery.timeago.da.js +18 -0
  25. data/web/assets/javascripts/locales/jquery.timeago.de.js +18 -0
  26. data/web/assets/javascripts/locales/jquery.timeago.el.js +18 -0
  27. data/web/assets/javascripts/locales/jquery.timeago.en-short.js +20 -0
  28. data/web/assets/javascripts/locales/jquery.timeago.en.js +20 -0
  29. data/web/assets/javascripts/locales/jquery.timeago.es.js +18 -0
  30. data/web/assets/javascripts/locales/jquery.timeago.et.js +18 -0
  31. data/web/assets/javascripts/locales/jquery.timeago.fa.js +22 -0
  32. data/web/assets/javascripts/locales/jquery.timeago.fi.js +28 -0
  33. data/web/assets/javascripts/locales/jquery.timeago.fr-short.js +16 -0
  34. data/web/assets/javascripts/locales/jquery.timeago.fr.js +17 -0
  35. data/web/assets/javascripts/locales/jquery.timeago.he.js +18 -0
  36. data/web/assets/javascripts/locales/jquery.timeago.hr.js +49 -0
  37. data/web/assets/javascripts/locales/jquery.timeago.hu.js +18 -0
  38. data/web/assets/javascripts/locales/jquery.timeago.hy.js +18 -0
  39. data/web/assets/javascripts/locales/jquery.timeago.id.js +18 -0
  40. data/web/assets/javascripts/locales/jquery.timeago.it.js +16 -0
  41. data/web/assets/javascripts/locales/jquery.timeago.ja.js +19 -0
  42. data/web/assets/javascripts/locales/jquery.timeago.ko.js +17 -0
  43. data/web/assets/javascripts/locales/jquery.timeago.lt.js +20 -0
  44. data/web/assets/javascripts/locales/jquery.timeago.mk.js +20 -0
  45. data/web/assets/javascripts/locales/jquery.timeago.nl.js +20 -0
  46. data/web/assets/javascripts/locales/jquery.timeago.no.js +18 -0
  47. data/web/assets/javascripts/locales/jquery.timeago.pl.js +31 -0
  48. data/web/assets/javascripts/locales/jquery.timeago.pt-br.js +16 -0
  49. data/web/assets/javascripts/locales/jquery.timeago.pt.js +16 -0
  50. data/web/assets/javascripts/locales/jquery.timeago.ro.js +18 -0
  51. data/web/assets/javascripts/locales/jquery.timeago.rs.js +49 -0
  52. data/web/assets/javascripts/locales/jquery.timeago.ru.js +34 -0
  53. data/web/assets/javascripts/locales/jquery.timeago.sk.js +18 -0
  54. data/web/assets/javascripts/locales/jquery.timeago.sl.js +44 -0
  55. data/web/assets/javascripts/locales/jquery.timeago.sv.js +18 -0
  56. data/web/assets/javascripts/locales/jquery.timeago.th.js +20 -0
  57. data/web/assets/javascripts/locales/jquery.timeago.tr.js +16 -0
  58. data/web/assets/javascripts/locales/jquery.timeago.uk.js +34 -0
  59. data/web/assets/javascripts/locales/jquery.timeago.uz.js +19 -0
  60. data/web/assets/javascripts/locales/jquery.timeago.zh-CN.js +20 -0
  61. data/web/assets/javascripts/locales/jquery.timeago.zh-TW.js +20 -0
  62. data/web/assets/stylesheets/application.css +46 -1
  63. data/web/views/_job_info.slim +51 -0
  64. data/web/views/_summary.slim +8 -8
  65. data/web/views/index.slim +1 -1
  66. data/web/views/layout.slim +24 -22
  67. data/web/views/queue.slim +1 -1
  68. data/web/views/retries.slim +2 -1
  69. data/web/views/retry.slim +1 -44
  70. data/web/views/scheduled.slim +4 -2
  71. data/web/views/scheduled_job_info.slim +6 -0
  72. metadata +50 -2
@@ -3,7 +3,7 @@
3
3
  h3 = t('Workers')
4
4
 
5
5
  == slim :_workers
6
- - if workers.size > 0
6
+ - if workers_size > 0
7
7
  .row
8
8
  .span2.pull-right
9
9
  form action="#{root_path}reset" method="post"
@@ -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
- .span2.summary_bar
35
- h4
36
- span.title = t('Status')
37
- == slim :_status
38
- == slim :_summary
39
- - unless current_path == ''
40
- .row
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
- .span10
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}
@@ -2,7 +2,7 @@ header.row
2
2
  .span5
3
3
  h3
4
4
  == t('CurrentMessagesInQueue', :queue => @name)
5
- .span4
5
+ .span4.pull-right
6
6
  == slim :_paging, :locals => { :url => "#{root_path}queues/#{@name}" }
7
7
 
8
8
  table class="queue table table-hover table-bordered table-striped"
@@ -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= display_args(msg['args'])
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
 
@@ -1,47 +1,4 @@
1
- header
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"
@@ -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== relative_time(Time.at(score))
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= display_args(msg['args'])
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.0
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-07-09 00:00:00.000000000 Z
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