sidekiq 7.3.7 → 8.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/Changes.md +30 -0
  3. data/README.md +16 -13
  4. data/bin/sidekiqload +10 -10
  5. data/bin/webload +69 -0
  6. data/lib/active_job/queue_adapters/sidekiq_adapter.rb +5 -18
  7. data/lib/sidekiq/api.rb +108 -36
  8. data/lib/sidekiq/capsule.rb +1 -1
  9. data/lib/sidekiq/cli.rb +15 -19
  10. data/lib/sidekiq/client.rb +13 -16
  11. data/lib/sidekiq/component.rb +30 -2
  12. data/lib/sidekiq/config.rb +18 -15
  13. data/lib/sidekiq/embedded.rb +1 -0
  14. data/lib/sidekiq/job/iterable.rb +3 -5
  15. data/lib/sidekiq/job_retry.rb +2 -2
  16. data/lib/sidekiq/job_util.rb +5 -1
  17. data/lib/sidekiq/launcher.rb +1 -1
  18. data/lib/sidekiq/logger.rb +6 -10
  19. data/lib/sidekiq/manager.rb +0 -1
  20. data/lib/sidekiq/metrics/query.rb +1 -3
  21. data/lib/sidekiq/middleware/current_attributes.rb +5 -17
  22. data/lib/sidekiq/paginator.rb +14 -1
  23. data/lib/sidekiq/processor.rb +21 -14
  24. data/lib/sidekiq/profiler.rb +59 -0
  25. data/lib/sidekiq/rails.rb +12 -2
  26. data/lib/sidekiq/redis_client_adapter.rb +0 -1
  27. data/lib/sidekiq/testing.rb +2 -2
  28. data/lib/sidekiq/version.rb +2 -2
  29. data/lib/sidekiq/web/action.rb +101 -85
  30. data/lib/sidekiq/web/application.rb +339 -333
  31. data/lib/sidekiq/web/config.rb +116 -0
  32. data/lib/sidekiq/web/helpers.rb +45 -20
  33. data/lib/sidekiq/web/router.rb +60 -76
  34. data/lib/sidekiq/web.rb +51 -156
  35. data/sidekiq.gemspec +6 -4
  36. data/web/assets/javascripts/application.js +6 -13
  37. data/web/assets/javascripts/base-charts.js +30 -18
  38. data/web/assets/javascripts/dashboard-charts.js +2 -0
  39. data/web/assets/javascripts/dashboard.js +6 -0
  40. data/web/assets/javascripts/metrics.js +1 -1
  41. data/web/assets/stylesheets/style.css +750 -0
  42. data/web/locales/ar.yml +1 -0
  43. data/web/locales/cs.yml +1 -0
  44. data/web/locales/da.yml +1 -0
  45. data/web/locales/de.yml +1 -0
  46. data/web/locales/el.yml +1 -0
  47. data/web/locales/en.yml +9 -0
  48. data/web/locales/es.yml +24 -2
  49. data/web/locales/fa.yml +1 -0
  50. data/web/locales/fr.yml +1 -0
  51. data/web/locales/gd.yml +1 -0
  52. data/web/locales/he.yml +1 -0
  53. data/web/locales/hi.yml +1 -0
  54. data/web/locales/it.yml +1 -0
  55. data/web/locales/ja.yml +1 -0
  56. data/web/locales/ko.yml +1 -0
  57. data/web/locales/lt.yml +1 -0
  58. data/web/locales/nb.yml +1 -0
  59. data/web/locales/nl.yml +1 -0
  60. data/web/locales/pl.yml +1 -0
  61. data/web/locales/{pt-br.yml → pt-BR.yml} +2 -1
  62. data/web/locales/pt.yml +1 -0
  63. data/web/locales/ru.yml +1 -0
  64. data/web/locales/sv.yml +1 -0
  65. data/web/locales/ta.yml +1 -0
  66. data/web/locales/tr.yml +1 -0
  67. data/web/locales/uk.yml +1 -0
  68. data/web/locales/ur.yml +1 -0
  69. data/web/locales/vi.yml +1 -0
  70. data/web/locales/{zh-cn.yml → zh-CN.yml} +85 -73
  71. data/web/locales/{zh-tw.yml → zh-TW.yml} +2 -1
  72. data/web/views/_footer.erb +31 -34
  73. data/web/views/_job_info.erb +91 -89
  74. data/web/views/_metrics_period_select.erb +1 -1
  75. data/web/views/_nav.erb +14 -21
  76. data/web/views/_paging.erb +23 -21
  77. data/web/views/_poll_link.erb +2 -2
  78. data/web/views/_summary.erb +16 -16
  79. data/web/views/busy.erb +124 -122
  80. data/web/views/dashboard.erb +62 -64
  81. data/web/views/dead.erb +31 -27
  82. data/web/views/filtering.erb +3 -3
  83. data/web/views/layout.erb +5 -21
  84. data/web/views/metrics.erb +83 -80
  85. data/web/views/metrics_for_job.erb +39 -42
  86. data/web/views/morgue.erb +61 -70
  87. data/web/views/profiles.erb +43 -0
  88. data/web/views/queue.erb +54 -52
  89. data/web/views/queues.erb +43 -41
  90. data/web/views/retries.erb +66 -75
  91. data/web/views/retry.erb +32 -27
  92. data/web/views/scheduled.erb +58 -54
  93. data/web/views/scheduled_job_info.erb +1 -1
  94. metadata +46 -22
  95. data/web/assets/stylesheets/application-dark.css +0 -147
  96. data/web/assets/stylesheets/application-rtl.css +0 -163
  97. data/web/assets/stylesheets/application.css +0 -759
  98. data/web/assets/stylesheets/bootstrap-rtl.min.css +0 -9
  99. data/web/assets/stylesheets/bootstrap.css +0 -5
  100. data/web/views/_status.erb +0 -4
@@ -1,147 +0,0 @@
1
- html, body {
2
- background-color: #171717 !important;
3
- color: #DEDEDE;
4
- }
5
-
6
- a,
7
- .title,
8
- .summary_bar ul .count,
9
- span.current-interval,
10
- .navbar .navbar-brand {
11
- color: #d04;
12
- }
13
-
14
- .history-graph.active,
15
- .beacon .dot {
16
- background-color: #d04;
17
- }
18
-
19
- .navbar .navbar-brand:hover {
20
- color: #ddd;
21
- }
22
-
23
- .navbar .navbar-brand .status {
24
- color: #ddd;
25
- }
26
-
27
- .navbar-default .navbar-nav > li > a {
28
- color: #ddd;
29
- }
30
-
31
- .navbar-inverse {
32
- background-color: #222;
33
- border-color: #444;
34
- }
35
-
36
- table {
37
- background-color: #1D1D1D;
38
- }
39
-
40
- .table-striped > tbody > tr:nth-of-type(odd) {
41
- background-color: #2E2E2E;
42
- }
43
-
44
- .table-bordered,
45
- .table-bordered > tbody > tr > td,
46
- .table-bordered > tbody > tr > th,
47
- .table-bordered > tfoot > tr > td,
48
- .table-bordered > tfoot > tr > th,
49
- .table-bordered > thead > tr > td,
50
- .table-bordered > thead > tr > th {
51
- border: 1px solid #444;
52
- }
53
-
54
- .table-hover > tbody > tr:hover {
55
- background-color: #444;
56
- }
57
-
58
- .alert {
59
- border: none;
60
- color: #ddd;
61
- }
62
-
63
- .alert-success {
64
- background-color: #484;
65
- }
66
-
67
- .alert-danger {
68
- background-color: #980035;
69
- }
70
-
71
- .alert-info {
72
- background-color: #31708f;
73
- }
74
-
75
- .alert-warning {
76
- background-color: #c47612;
77
- }
78
-
79
- a:link, a:active, a:hover, a:visited {
80
- color: #ddd;
81
- }
82
-
83
- input {
84
- background-color: #444;
85
- color: #ccc;
86
- padding: 3px;
87
- }
88
-
89
- .summary_bar .summary {
90
- background-color: #232323;
91
- border: 1px solid #444;
92
- }
93
-
94
- .navbar-default {
95
- background-color: #0F0F0F;
96
- border-color: #444;
97
- }
98
-
99
- .navbar-default .navbar-nav > .active > a,
100
- .navbar-default .navbar-nav > .active > a:focus,
101
- .navbar-default .navbar-nav > .active > a:hover {
102
- color: #ddd;
103
- background-color: #333;
104
- }
105
-
106
- .navbar-default .navbar-nav > li > a:hover {
107
- color: #ddd;
108
- }
109
-
110
- .pagination > li > a,
111
- .pagination > li > a:hover,
112
- .pagination > li > span {
113
- color: #ddd;
114
- background-color: #333;
115
- border-color: #444;
116
- }
117
- .pagination > .disabled > a,
118
- .pagination > .disabled > a:focus,
119
- .pagination > .disabled > a:hover,
120
- .pagination > .disabled > span,
121
- .pagination > .disabled > span:focus,
122
- .pagination > .disabled > span:hover {
123
- color: #ddd;
124
- background-color: #333;
125
- border-color: #444;
126
- }
127
-
128
- .stat {
129
- border: 1px solid #888;
130
- }
131
-
132
- .rickshaw_graph .detail {
133
- background: #888;
134
- }
135
- .rickshaw_graph .x_tick {
136
- border-color: #888;
137
- }
138
-
139
- .rickshaw_graph .y_ticks.glow text {
140
- fill: #ddd;
141
- color: #ddd;
142
- }
143
-
144
- .info-circle {
145
- color: #222;
146
- background-color: #888;
147
- }
@@ -1,163 +0,0 @@
1
- .navbar-right {
2
- float: left !important;
3
- }
4
-
5
- footer .edits {
6
- margin-right: unset;
7
- margin-left: 40px;
8
- }
9
-
10
- .summary_bar .status {
11
- margin-left: unset;
12
- margin-right: 10px;
13
- }
14
- @media (max-width: 767px) and (min-width: 400px) {
15
- .summary_bar ul .desc {
16
- text-align: right;
17
- }
18
- .summary_bar ul .count {
19
- text-align: left;
20
- }
21
- }
22
- @media (max-width: 979px) and (min-width: 768px) {
23
- }
24
- .summary_bar ul .count {
25
- float: left;
26
- }
27
-
28
- form .btn {
29
- margin-right: unset;
30
- margin-left: 5px;
31
- }
32
-
33
- form .btn-group .btn {
34
- margin-right: unset;
35
- margin-left: 1px;
36
- }
37
-
38
- @media (max-width: 768px) {
39
- .navbar.navbar-fixed-top ul {
40
- margin-right: unset;
41
- margin-left: -15px!important;
42
- }
43
- }
44
-
45
- @media (width: 768px) {
46
- .navbar .poll-wrapper {
47
- margin: 4px 0 0 4px;
48
- }
49
- }
50
-
51
- .navbar-footer .navbar ul.nav a.navbar-brand {
52
- padding: 0 0 0 15px;
53
- }
54
-
55
- .navbar-fixed-bottom li {
56
- margin-right: unset;
57
- margin-left: 20px;
58
- }
59
-
60
- .status-active {
61
- background-position: 100% 0;
62
- }
63
-
64
- .status-idle {
65
- background-position: 100% -54px;
66
- }
67
-
68
- .stat {
69
- float: right;
70
- margin-right: unset;
71
- margin-left: 20px;
72
- }
73
-
74
- .stat:last-child {
75
- margin-left: 0;
76
- }
77
-
78
- @media (max-width: 767px) {
79
- .stat {
80
- float: right;
81
- margin-right: unset;
82
- margin-left: 10px;
83
- text-align: right;
84
- }
85
- .stat h3{
86
- float: left;
87
- margin: 5px 5px 5px 10px;
88
- }
89
- .stat p{
90
- font-size: 1em;
91
- margin: 5px 10px 5px 5px;
92
- }
93
- }
94
-
95
- /* Dashboard
96
- ********************************** */
97
- div.dashboard h3 {
98
- float: right;
99
- }
100
-
101
- div.interval-slider {
102
- float: left;
103
- }
104
-
105
- #realtime-legend {
106
- justify-content: start;
107
- }
108
-
109
- /* Beacon
110
- ********************************** */
111
-
112
- .beacon .dot,
113
- .beacon .ring {
114
- right: 50%;
115
- }
116
-
117
- .beacon .dot {
118
- margin: -5px -5px 0 0;
119
- }
120
-
121
- .beacon .ring {
122
- margin: -14px -14px 0 0;
123
- }
124
-
125
- .history-heading {
126
- padding-right: unset;
127
- padding-left: 15px;
128
- }
129
-
130
- @media (max-width: 767px) {
131
- .navbar.navbar-fixed-top ul {
132
- margin-left: 0;
133
- }
134
-
135
- .navbar.navbar-fixed-top li {
136
- margin-left: 0;
137
- }
138
-
139
- .navbar.navbar-fixed-bottom ul {
140
- margin-left: 0;
141
- }
142
-
143
- .navbar.navbar-fixed-bottom li {
144
- margin-left: 0;
145
- }
146
- }
147
-
148
- @media (max-width: 500px) {
149
- .navbar-footer .navbar ul.nav a.navbar-brand {
150
- padding-right: unset;
151
- padding-left: 5px;
152
- }
153
- }
154
-
155
- #locale-select {
156
- float: right;
157
- }
158
-
159
- @media (max-width: 767px) {
160
- #locale-select {
161
- float: none;
162
- }
163
- }