sidekiq-undertaker 1.7.0 → 1.8.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.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-build.yml +4 -2
  3. data/.rubocop.yml +3 -2
  4. data/.rubocop_todo.yml +12 -8
  5. data/CHANGELOG.md +12 -1
  6. data/Gemfile +4 -4
  7. data/README.md +1 -0
  8. data/lib/sidekiq/undertaker/version.rb +1 -1
  9. data/lib/sidekiq/undertaker/web_extension/api_helpers.rb +43 -32
  10. data/lib/sidekiq/undertaker.rb +5 -3
  11. data/renovate.json +3 -2
  12. data/sidekiq-undertaker.gemspec +3 -3
  13. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_filter_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv8.approved.txt +377 -0
  14. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv8.approved.txt +362 -0
  15. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv8.approved.txt +362 -0
  16. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv8.approved.txt +352 -0
  17. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv8.approved.txt +352 -0
  18. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_all_failures_and_errors/behaves_like_a_page/{the_displayed_page_is_correct_for_sidekiqv7.approved.txt → the_displayed_page_is_correct_for_sidekiqv8.approved.txt} +205 -93
  19. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_job_class_error_and_specific_error_message/behaves_like_a_page/{the_displayed_page_is_correct_for_sidekiqv7.approved.txt → the_displayed_page_is_correct_for_sidekiqv8.approved.txt} +203 -91
  20. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_job_class_error_and_specific_error_message/with_pagination/behaves_like_a_page/{the_displayed_page_is_correct_for_sidekiqv7.approved.txt → the_displayed_page_is_correct_for_sidekiqv8.approved.txt} +269 -155
  21. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv8.approved.txt +407 -0
  22. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/with_pagination/behaves_like_a_page/{the_displayed_page_is_correct_for_sidekiqv7.approved.txt → the_displayed_page_is_correct_for_sidekiqv8.approved.txt} +269 -155
  23. data/spec/sidekiq/undertaker/web_extension_spec.rb +12 -13
  24. data/spec/spec_helper.rb +13 -0
  25. data/spec/support/monkey_patch/approvals/writers/text_writer.rb +20 -0
  26. metadata +17 -17
  27. data/.github/dependabot.yml +0 -8
  28. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_filter_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +0 -265
  29. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +0 -250
  30. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +0 -250
  31. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_called/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +0 -240
  32. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_filter/when_job_classerror_classbucket_page_is_polled/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +0 -240
  33. data/spec/fixtures/approvals/sidekiq_undertaker_webextension/show_morgue/when_job_classerrorbucket_is_called/with_specific_job_class_and_a_specific_error/behaves_like_a_page/the_displayed_page_is_correct_for_sidekiqv7.approved.txt +0 -295
@@ -1,107 +1,103 @@
1
1
  <!doctype html>
2
- <html dir="ltr">
2
+ <html dir="ltr" lang="en">
3
3
  <head>
4
4
  <title>[TEST] Sidekiq</title>
5
5
  <meta charset="utf-8" />
6
6
  <meta name="viewport" content="width=device-width,initial-scale=1.0" />
7
7
 
8
- <link href="/sidekiq/stylesheets/bootstrap.css" media="screen" rel="stylesheet" type="text/css" />
9
-
10
-
11
- <link href="/sidekiq/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
12
- <link href="/sidekiq/stylesheets/application-dark.css" media="screen and (prefers-color-scheme: dark)" rel="stylesheet" type="text/css" />
13
-
8
+ <link href="/sidekiq/stylesheets/style.css" media="screen" rel="stylesheet" type="text/css" nonce="<nonce>" />
14
9
 
15
10
  <link rel="apple-touch-icon" href="/sidekiq/images/apple-touch-icon.png">
16
11
  <link rel="shortcut icon" type="image/ico" href="/sidekiq/images/favicon.ico" />
17
- <script type="text/javascript" src="/sidekiq/javascripts/application.js"></script>
12
+ <script type="text/javascript" src="/sidekiq/javascripts/application.js" nonce="<nonce>"></script>
18
13
  <meta name="google" content="notranslate" />
19
14
 
20
15
  </head>
21
16
  <body class="admin" data-locale="en">
22
- <div class="navbar navbar-default navbar-fixed-top">
23
- <div class="container-fluid">
17
+ <header>
18
+ <div class="container">
24
19
  <div class="navbar-header" data-navbar="static">
25
- <button type="button" class="navbar-toggle collapsed" data-toggle="navbar-menu" data-target="#navbar-menu">
20
+ <button type="button" class="btn navbar-toggle" data-toggle="navbar-menu" data-target="#navbar-menu">
26
21
  <span class="icon-bar"></span>
27
22
  <span class="icon-bar"></span>
28
23
  <span class="icon-bar"></span>
29
24
  </button>
30
- <div class="navbar-toggle collapsed navbar-livereload">
25
+ <div class="navbar-livereload">
31
26
 
32
- <a class="live-poll-start live-poll btn btn-primary">Live Poll</a>
33
- <a class="live-poll-stop live-poll btn btn-primary active">Stop Polling</a>
27
+ <a class="btn live-poll live-poll-start btn-primary">Live Poll</a>
28
+ <a class="btn live-poll live-poll-stop btn-danger">Stop Polling</a>
34
29
 
35
30
 
36
31
 
37
32
  </div>
38
33
  <a class="navbar-brand" href="/sidekiq/">
39
34
  Sidekiq
40
- <span class="status">
41
- <i class="status-sprite status-idle"></i>
42
- idle
43
- </span>
44
-
45
35
  </a>
46
36
  </div>
47
37
 
48
- <div class="collapse navbar-collapse" id="navbar-menu">
49
- <ul class="nav navbar-nav" data-navbar="static">
38
+ <div class="navbar-collapse" role="navigation" id="navbar-menu">
39
+ <ul class="nav" data-navbar="static">
50
40
 
51
41
 
52
42
  <li class="">
53
- <a href="/sidekiq/">Dashboard</a>
43
+ <a href="/sidekiq/">Dashboard</a>
54
44
  </li>
55
45
 
56
46
 
57
47
 
58
48
  <li class="">
59
- <a href="/sidekiq/busy">Busy</a>
49
+ <a href="/sidekiq/busy">Busy</a>
60
50
  </li>
61
51
 
62
52
 
63
53
 
64
54
  <li class="">
65
- <a href="/sidekiq/queues">Queues</a>
55
+ <a href="/sidekiq/queues">Queues</a>
66
56
  </li>
67
57
 
68
58
 
69
59
 
70
60
  <li class="">
71
- <a href="/sidekiq/retries">Retries</a>
61
+ <a href="/sidekiq/retries">Retries</a>
72
62
  </li>
73
63
 
74
64
 
75
65
 
76
66
  <li class="">
77
- <a href="/sidekiq/scheduled">Scheduled</a>
67
+ <a href="/sidekiq/scheduled">Scheduled</a>
78
68
  </li>
79
69
 
80
70
 
81
71
 
82
72
  <li class="">
83
- <a href="/sidekiq/morgue">Dead</a>
73
+ <a href="/sidekiq/morgue">Dead</a>
84
74
  </li>
85
75
 
86
76
 
87
77
 
88
78
  <li class="">
89
- <a href="/sidekiq/metrics">Metrics</a>
79
+ <a href="/sidekiq/metrics">Metrics</a>
90
80
  </li>
91
81
 
92
82
 
93
-
83
+
84
+ <li class="">
85
+ <a href="/sidekiq/profiles">Profiles</a>
86
+ </li>
87
+
94
88
 
95
- <li class="" data-navbar="custom-tab">
96
- <a href="/sidekiq/undertaker/filter">Undertaker</a>
97
- </li>
89
+
90
+ <li class="">
91
+ <a href="/sidekiq/undertaker/filter">Undertaker</a>
92
+ </li>
93
+
98
94
 
99
95
 
100
96
  <li class="navbar-livereload">
101
97
  <div class="poll-wrapper">
102
98
 
103
- <a class="live-poll-start live-poll btn btn-primary">Live Poll</a>
104
- <a class="live-poll-stop live-poll btn btn-primary active">Stop Polling</a>
99
+ <a class="btn live-poll live-poll-start btn-primary">Live Poll</a>
100
+ <a class="btn live-poll live-poll-stop btn-danger">Stop Polling</a>
105
101
 
106
102
 
107
103
 
@@ -110,57 +106,52 @@
110
106
  </ul>
111
107
  </div>
112
108
  </div>
113
- </div>
109
+ </header>
114
110
 
115
- <div id="page">
111
+ <main id="page">
116
112
  <div class="container">
117
- <div class="row">
118
- <div class="col-sm-12 summary_bar">
119
- <ul class="list-unstyled summary row">
120
- <li class="processed col-sm-1">
113
+ <div class="cards-container">
114
+ <article>
121
115
  <span id="txtProcessed" class="count" data-nwp>0</span>
122
116
  <span class="desc">Processed</span>
123
- </li>
124
- <li class="failed col-sm-1">
117
+ </article>
118
+ <article>
125
119
  <span id="txtFailed" class="count" data-nwp>0</span>
126
120
  <span class="desc">Failed</span>
127
- </li>
128
- <li class="busy col-sm-1">
121
+ </article>
122
+ <article>
129
123
  <a href="/sidekiq/busy">
130
124
  <span id="txtBusy" class="count" data-nwp>0</span>
131
125
  <span class="desc">Busy</span>
132
126
  </a>
133
- </li>
134
- <li class="enqueued col-sm-1">
127
+ </article>
128
+ <article>
135
129
  <a href="/sidekiq/queues">
136
130
  <span id="txtEnqueued" class="count" data-nwp>0</span>
137
131
  <span class="desc">Enqueued</span>
138
132
  </a>
139
- </li>
140
- <li class="retries col-sm-1">
133
+ </article>
134
+ <article>
141
135
  <a href="/sidekiq/retries">
142
136
  <span id="txtRetries" class="count" data-nwp>0</span>
143
137
  <span class="desc">Retries</span>
144
138
  </a>
145
- </li>
146
- <li class="scheduled col-sm-1">
139
+ </article>
140
+ <article>
147
141
  <a href="/sidekiq/scheduled">
148
142
  <span id="txtScheduled" class="count" data-nwp>0</span>
149
143
  <span class="desc">Scheduled</span>
150
144
  </a>
151
- </li>
152
- <li class="dead col-sm-1">
145
+ </article>
146
+ <article>
153
147
  <a href="/sidekiq/morgue">
154
148
  <span id="txtDead" class="count" data-nwp>54</span>
155
149
  <span class="desc">Dead</span>
156
150
  </a>
157
- </li>
158
- </ul>
159
-
160
- </div>
151
+ </article>
152
+ </div>
161
153
 
162
- <div class="col-sm-12">
163
- <header class="row head">
154
+ <header class="row head">
164
155
  <div class="col-sm-12">
165
156
  <h3>
166
157
  <b>52</b> dead jobs
@@ -172,27 +163,29 @@
172
163
  </div>
173
164
  <div class="col-sm-12">
174
165
  <div class="col-sm-4">
175
- <div>
166
+
176
167
 
177
- <ul class="pagination pull-right flip">
178
- <li class="disabled">
179
- <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=1">&laquo;</a>
180
- </li>
181
-
182
- <li class="disabled">
183
- <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=1">1</a>
184
- </li>
185
-
186
- <li>
187
- <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=2">2</a>
168
+ <div>
169
+ <ul class="pagination pull-right">
170
+ <li class="disabled">
171
+ <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=1">&laquo;</a>
188
172
  </li>
189
-
190
- <li class="">
191
- <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=2">&raquo;</a>
192
- </li>
193
- </ul>
173
+
174
+ <li class="disabled">
175
+ <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=1">1</a>
176
+ </li>
177
+
178
+ <li>
179
+ <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=2">2</a>
180
+ </li>
181
+
182
+ <li class="">
183
+ <a href="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/1_hour?page=2">&raquo;</a>
184
+ </li>
185
+ </ul>
186
+ </div>
187
+
194
188
 
195
- </div>
196
189
 
197
190
  </div>
198
191
  </div>
@@ -200,7 +193,7 @@
200
193
 
201
194
 
202
195
  <form action="/sidekiq/undertaker/morgue" method="post">
203
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
196
+ <input type='hidden' name='authenticity_token' value=''/>
204
197
  <table class="table table-striped table-bordered table-white">
205
198
  <thead>
206
199
  <tr>
@@ -234,7 +227,7 @@
234
227
  <div class="args">&quot;asdf&quot;, 1234</div>
235
228
  </td>
236
229
  <td>
237
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
230
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
238
231
  </td>
239
232
  </tr>
240
233
 
@@ -255,7 +248,7 @@
255
248
  <div class="args">&quot;asdf&quot;, 1234</div>
256
249
  </td>
257
250
  <td>
258
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
251
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
259
252
  </td>
260
253
  </tr>
261
254
 
@@ -276,7 +269,7 @@
276
269
  <div class="args">&quot;asdf&quot;, 1234</div>
277
270
  </td>
278
271
  <td>
279
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
272
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
280
273
  </td>
281
274
  </tr>
282
275
 
@@ -297,7 +290,7 @@
297
290
  <div class="args">&quot;asdf&quot;, 1234</div>
298
291
  </td>
299
292
  <td>
300
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
293
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
301
294
  </td>
302
295
  </tr>
303
296
 
@@ -318,7 +311,7 @@
318
311
  <div class="args">&quot;asdf&quot;, 1234</div>
319
312
  </td>
320
313
  <td>
321
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
314
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
322
315
  </td>
323
316
  </tr>
324
317
 
@@ -339,7 +332,7 @@
339
332
  <div class="args">&quot;asdf&quot;, 1234</div>
340
333
  </td>
341
334
  <td>
342
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
335
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
343
336
  </td>
344
337
  </tr>
345
338
 
@@ -360,7 +353,7 @@
360
353
  <div class="args">&quot;asdf&quot;, 1234</div>
361
354
  </td>
362
355
  <td>
363
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
356
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
364
357
  </td>
365
358
  </tr>
366
359
 
@@ -381,7 +374,7 @@
381
374
  <div class="args">&quot;asdf&quot;, 1234</div>
382
375
  </td>
383
376
  <td>
384
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
377
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
385
378
  </td>
386
379
  </tr>
387
380
 
@@ -402,7 +395,7 @@
402
395
  <div class="args">&quot;asdf&quot;, 1234</div>
403
396
  </td>
404
397
  <td>
405
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
398
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
406
399
  </td>
407
400
  </tr>
408
401
 
@@ -423,7 +416,7 @@
423
416
  <div class="args">&quot;asdf&quot;, 1234</div>
424
417
  </td>
425
418
  <td>
426
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
419
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
427
420
  </td>
428
421
  </tr>
429
422
 
@@ -444,7 +437,7 @@
444
437
  <div class="args">&quot;asdf&quot;, 1234</div>
445
438
  </td>
446
439
  <td>
447
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
440
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
448
441
  </td>
449
442
  </tr>
450
443
 
@@ -465,7 +458,7 @@
465
458
  <div class="args">&quot;asdf&quot;, 1234</div>
466
459
  </td>
467
460
  <td>
468
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
461
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
469
462
  </td>
470
463
  </tr>
471
464
 
@@ -486,7 +479,7 @@
486
479
  <div class="args">&quot;asdf&quot;, 1234</div>
487
480
  </td>
488
481
  <td>
489
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
482
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
490
483
  </td>
491
484
  </tr>
492
485
 
@@ -507,7 +500,7 @@
507
500
  <div class="args">&quot;asdf&quot;, 1234</div>
508
501
  </td>
509
502
  <td>
510
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
503
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
511
504
  </td>
512
505
  </tr>
513
506
 
@@ -528,7 +521,7 @@
528
521
  <div class="args">&quot;asdf&quot;, 1234</div>
529
522
  </td>
530
523
  <td>
531
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
524
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
532
525
  </td>
533
526
  </tr>
534
527
 
@@ -549,7 +542,7 @@
549
542
  <div class="args">&quot;asdf&quot;, 1234</div>
550
543
  </td>
551
544
  <td>
552
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
545
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
553
546
  </td>
554
547
  </tr>
555
548
 
@@ -570,7 +563,7 @@
570
563
  <div class="args">&quot;asdf&quot;, 1234</div>
571
564
  </td>
572
565
  <td>
573
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
566
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
574
567
  </td>
575
568
  </tr>
576
569
 
@@ -591,7 +584,7 @@
591
584
  <div class="args">&quot;asdf&quot;, 1234</div>
592
585
  </td>
593
586
  <td>
594
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
587
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
595
588
  </td>
596
589
  </tr>
597
590
 
@@ -612,7 +605,7 @@
612
605
  <div class="args">&quot;asdf&quot;, 1234</div>
613
606
  </td>
614
607
  <td>
615
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
608
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
616
609
  </td>
617
610
  </tr>
618
611
 
@@ -633,7 +626,7 @@
633
626
  <div class="args">&quot;asdf&quot;, 1234</div>
634
627
  </td>
635
628
  <td>
636
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
629
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
637
630
  </td>
638
631
  </tr>
639
632
 
@@ -654,7 +647,7 @@
654
647
  <div class="args">&quot;asdf&quot;, 1234</div>
655
648
  </td>
656
649
  <td>
657
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
650
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
658
651
  </td>
659
652
  </tr>
660
653
 
@@ -675,7 +668,7 @@
675
668
  <div class="args">&quot;asdf&quot;, 1234</div>
676
669
  </td>
677
670
  <td>
678
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
671
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
679
672
  </td>
680
673
  </tr>
681
674
 
@@ -696,7 +689,7 @@
696
689
  <div class="args">&quot;asdf&quot;, 1234</div>
697
690
  </td>
698
691
  <td>
699
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
692
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
700
693
  </td>
701
694
  </tr>
702
695
 
@@ -717,7 +710,7 @@
717
710
  <div class="args">&quot;asdf&quot;, 1234</div>
718
711
  </td>
719
712
  <td>
720
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
713
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
721
714
  </td>
722
715
  </tr>
723
716
 
@@ -738,7 +731,7 @@
738
731
  <div class="args">&quot;asdf&quot;, 1234</div>
739
732
  </td>
740
733
  <td>
741
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
734
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
742
735
  </td>
743
736
  </tr>
744
737
 
@@ -759,7 +752,7 @@
759
752
  <div class="args">&quot;asdf&quot;, 1234</div>
760
753
  </td>
761
754
  <td>
762
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
755
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
763
756
  </td>
764
757
  </tr>
765
758
 
@@ -780,7 +773,7 @@
780
773
  <div class="args">&quot;asdf&quot;, 1234</div>
781
774
  </td>
782
775
  <td>
783
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
776
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
784
777
  </td>
785
778
  </tr>
786
779
 
@@ -801,7 +794,7 @@
801
794
  <div class="args">&quot;asdf&quot;, 1234</div>
802
795
  </td>
803
796
  <td>
804
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
797
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
805
798
  </td>
806
799
  </tr>
807
800
 
@@ -822,7 +815,7 @@
822
815
  <div class="args">&quot;asdf&quot;, 1234</div>
823
816
  </td>
824
817
  <td>
825
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
818
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
826
819
  </td>
827
820
  </tr>
828
821
 
@@ -843,7 +836,7 @@
843
836
  <div class="args">&quot;asdf&quot;, 1234</div>
844
837
  </td>
845
838
  <td>
846
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
839
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
847
840
  </td>
848
841
  </tr>
849
842
 
@@ -864,7 +857,7 @@
864
857
  <div class="args">&quot;asdf&quot;, 1234</div>
865
858
  </td>
866
859
  <td>
867
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
860
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
868
861
  </td>
869
862
  </tr>
870
863
 
@@ -885,7 +878,7 @@
885
878
  <div class="args">&quot;asdf&quot;, 1234</div>
886
879
  </td>
887
880
  <td>
888
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
881
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
889
882
  </td>
890
883
  </tr>
891
884
 
@@ -906,7 +899,7 @@
906
899
  <div class="args">&quot;asdf&quot;, 1234</div>
907
900
  </td>
908
901
  <td>
909
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
902
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
910
903
  </td>
911
904
  </tr>
912
905
 
@@ -927,7 +920,7 @@
927
920
  <div class="args">&quot;asdf&quot;, 1234</div>
928
921
  </td>
929
922
  <td>
930
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
923
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
931
924
  </td>
932
925
  </tr>
933
926
 
@@ -948,7 +941,7 @@
948
941
  <div class="args">&quot;asdf&quot;, 1234</div>
949
942
  </td>
950
943
  <td>
951
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
944
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
952
945
  </td>
953
946
  </tr>
954
947
 
@@ -969,7 +962,7 @@
969
962
  <div class="args">&quot;asdf&quot;, 1234</div>
970
963
  </td>
971
964
  <td>
972
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
965
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
973
966
  </td>
974
967
  </tr>
975
968
 
@@ -990,7 +983,7 @@
990
983
  <div class="args">&quot;asdf&quot;, 1234</div>
991
984
  </td>
992
985
  <td>
993
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
986
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
994
987
  </td>
995
988
  </tr>
996
989
 
@@ -1011,7 +1004,7 @@
1011
1004
  <div class="args">&quot;asdf&quot;, 1234</div>
1012
1005
  </td>
1013
1006
  <td>
1014
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1007
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1015
1008
  </td>
1016
1009
  </tr>
1017
1010
 
@@ -1032,7 +1025,7 @@
1032
1025
  <div class="args">&quot;asdf&quot;, 1234</div>
1033
1026
  </td>
1034
1027
  <td>
1035
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1028
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1036
1029
  </td>
1037
1030
  </tr>
1038
1031
 
@@ -1053,7 +1046,7 @@
1053
1046
  <div class="args">&quot;asdf&quot;, 1234</div>
1054
1047
  </td>
1055
1048
  <td>
1056
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1049
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1057
1050
  </td>
1058
1051
  </tr>
1059
1052
 
@@ -1074,7 +1067,7 @@
1074
1067
  <div class="args">&quot;asdf&quot;, 1234</div>
1075
1068
  </td>
1076
1069
  <td>
1077
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1070
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1078
1071
  </td>
1079
1072
  </tr>
1080
1073
 
@@ -1095,7 +1088,7 @@
1095
1088
  <div class="args">&quot;asdf&quot;, 1234</div>
1096
1089
  </td>
1097
1090
  <td>
1098
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1091
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1099
1092
  </td>
1100
1093
  </tr>
1101
1094
 
@@ -1116,7 +1109,7 @@
1116
1109
  <div class="args">&quot;asdf&quot;, 1234</div>
1117
1110
  </td>
1118
1111
  <td>
1119
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1112
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1120
1113
  </td>
1121
1114
  </tr>
1122
1115
 
@@ -1137,7 +1130,7 @@
1137
1130
  <div class="args">&quot;asdf&quot;, 1234</div>
1138
1131
  </td>
1139
1132
  <td>
1140
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1133
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1141
1134
  </td>
1142
1135
  </tr>
1143
1136
 
@@ -1158,7 +1151,7 @@
1158
1151
  <div class="args">&quot;asdf&quot;, 1234</div>
1159
1152
  </td>
1160
1153
  <td>
1161
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1154
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1162
1155
  </td>
1163
1156
  </tr>
1164
1157
 
@@ -1179,7 +1172,7 @@
1179
1172
  <div class="args">&quot;asdf&quot;, 1234</div>
1180
1173
  </td>
1181
1174
  <td>
1182
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1175
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1183
1176
  </td>
1184
1177
  </tr>
1185
1178
 
@@ -1200,7 +1193,7 @@
1200
1193
  <div class="args">&quot;asdf&quot;, 1234</div>
1201
1194
  </td>
1202
1195
  <td>
1203
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1196
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1204
1197
  </td>
1205
1198
  </tr>
1206
1199
 
@@ -1221,7 +1214,7 @@
1221
1214
  <div class="args">&quot;asdf&quot;, 1234</div>
1222
1215
  </td>
1223
1216
  <td>
1224
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1217
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1225
1218
  </td>
1226
1219
  </tr>
1227
1220
 
@@ -1242,7 +1235,7 @@
1242
1235
  <div class="args">&quot;asdf&quot;, 1234</div>
1243
1236
  </td>
1244
1237
  <td>
1245
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1238
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1246
1239
  </td>
1247
1240
  </tr>
1248
1241
 
@@ -1263,7 +1256,7 @@
1263
1256
  <div class="args">&quot;asdf&quot;, 1234</div>
1264
1257
  </td>
1265
1258
  <td>
1266
- <div>RuntimeError: Option &#x27;data&#x2F;file_name&#x27; is required! This is an extra long error message.</div>
1259
+ <div>RuntimeError: Option &#39;data/file_name&#39; is required! This is an extra long error message.</div>
1267
1260
  </td>
1268
1261
  </tr>
1269
1262
 
@@ -1274,48 +1267,169 @@
1274
1267
  </form>
1275
1268
 
1276
1269
  <form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/YWxs/1_hour/delete" method="post">
1277
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
1270
+ <input type='hidden' name='authenticity_token' value=''/>
1278
1271
  <input class="btn btn-danger btn-xs pull-right" type="submit" name="delete" value="Bury All" data-confirm="Are you sure?" />
1279
1272
  </form>
1280
1273
 
1281
1274
  <form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/YWxs/1_hour/export" method="post">
1282
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
1275
+ <input type='hidden' name='authenticity_token' value=''/>
1283
1276
  <input class="btn btn-secondary btn-xs pull-right" type="submit" name="export" value="Export All" />
1284
1277
  </form>
1285
1278
 
1286
1279
  <form action="/sidekiq/undertaker/morgue/HardWorker/RuntimeError/YWxs/1_hour/retry" method="post">
1287
- <input type='hidden' name='authenticity_token' value='stubbed-csrf-token'/>
1280
+ <input type='hidden' name='authenticity_token' value=''/>
1288
1281
  <input class="btn btn-danger btn-xs pull-right" type="submit" name="retry" value="Revive All" data-confirm="Are you sure?" />
1289
1282
  </form>
1290
1283
 
1291
1284
 
1292
- </div>
1293
- </div>
1294
1285
  </div>
1295
- </div>
1296
- <div class="navbar navbar-fixed-bottom navbar-inverse ltr">
1297
- <div class="navbar-inner">
1298
- <div class="container text-center">
1299
- <ul class="nav">
1300
- <li>
1301
- <p class="navbar-text product-version">Sidekiq v*EXCLUDED*</p>
1302
- </li>
1303
- <li>
1304
- <p class="navbar-text redis-url" title="redis://localhost:6379/0">redis://localhost:6379/0</p>
1305
- </li>
1306
- <li>
1307
- <p id="serverUtcTime" class="navbar-text server-utc-time">20:57:00 UTC</p>
1308
- </li>
1309
- <li>
1310
- <p class="navbar-text"><a rel=help href="https://github.com/sidekiq/sidekiq/wiki">docs</a></p>
1311
- </li>
1312
- <li>
1313
- <p class="navbar-text"><a rel=external href="https://github.com/sidekiq/sidekiq/tree/main/web/locales">en</a></p>
1314
- </li>
1315
- </ul>
1316
- </div>
1286
+ </main>
1287
+ <footer>
1288
+ <div class="container">
1289
+ <ul class="nav">
1290
+ <li>
1291
+ <p><b>Sidekiq v*EXCLUDED*</b></p>
1292
+ </li>
1293
+ <li>
1294
+ <p title="redis://localhost:6379">redis://localhost:6379</p>
1295
+ </li>
1296
+ <li>
1297
+ <p id="serverUtcTime">20:57:00 UTC</p>
1298
+ </li>
1299
+ <li>
1300
+ <p><a rel=help href="https://github.com/sidekiq/sidekiq/wiki">docs</a></p>
1301
+ </li>
1302
+ <li>
1303
+ <form id="locale-form" action="/sidekiq/change_locale" method="post">
1304
+ <input type='hidden' name='authenticity_token' value=''/>
1305
+ <select id="locale-select" aria-label="Language" class="form-control" name="locale">
1306
+
1307
+
1308
+ <option value="ar">العربية</option>
1309
+
1310
+
1311
+
1312
+ <option value="cs">Čeština</option>
1313
+
1314
+
1315
+
1316
+ <option value="da">Dansk</option>
1317
+
1318
+
1319
+
1320
+ <option value="de">Deutsch</option>
1321
+
1322
+
1323
+
1324
+ <option value="el">ελληνικά</option>
1325
+
1326
+
1327
+
1328
+ <option selected value="en">English</option>
1329
+
1330
+
1331
+
1332
+ <option value="es">Español</option>
1333
+
1334
+
1335
+
1336
+ <option value="fa">فارسى</option>
1337
+
1338
+
1339
+
1340
+ <option value="fr">Français</option>
1341
+
1342
+
1343
+
1344
+ <option value="gd">Gaeilge</option>
1345
+
1346
+
1347
+
1348
+ <option value="he">עברית</option>
1349
+
1350
+
1351
+
1352
+ <option value="hi">हिन्दी</option>
1353
+
1354
+
1355
+
1356
+ <option value="it">Italiano</option>
1357
+
1358
+
1359
+
1360
+ <option value="ja">日本語</option>
1361
+
1362
+
1363
+
1364
+ <option value="ko">한국어</option>
1365
+
1366
+
1367
+
1368
+ <option value="lt">Lietuvių</option>
1369
+
1370
+
1371
+
1372
+ <option value="nb">Norsk</option>
1373
+
1374
+
1375
+
1376
+ <option value="nl">Nederlands</option>
1377
+
1378
+
1379
+
1380
+ <option value="pl">Polski</option>
1381
+
1382
+
1383
+
1384
+ <option value="pt-BR">Português (Brasil)</option>
1385
+
1386
+
1387
+
1388
+ <option value="pt">Português</option>
1389
+
1390
+
1391
+
1392
+ <option value="ru">Русский</option>
1393
+
1394
+
1395
+
1396
+ <option value="sv">Svenska</option>
1397
+
1398
+
1399
+
1400
+ <option value="ta">தமிழ்</option>
1401
+
1402
+
1403
+
1404
+ <option value="tr">Türkçe</option>
1405
+
1406
+
1407
+
1408
+ <option value="uk">Українська</option>
1409
+
1410
+
1411
+
1412
+ <option value="ur">اردو</option>
1413
+
1414
+
1415
+
1416
+ <option value="vi">Tiếng Việt</option>
1417
+
1418
+
1419
+
1420
+ <option value="zh-CN">中文</option>
1421
+
1422
+
1423
+
1424
+ <option value="zh-TW">臺灣話</option>
1425
+
1426
+
1427
+ </select>
1428
+ </form>
1429
+ </li>
1430
+ </ul>
1317
1431
  </div>
1318
- </div>
1432
+ </footer>
1319
1433
 
1320
1434
  </body>
1321
1435
  </html>