sidekiq 4.2.10 → 7.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +5 -5
  2. data/Changes.md +859 -7
  3. data/LICENSE.txt +9 -0
  4. data/README.md +49 -50
  5. data/bin/multi_queue_bench +271 -0
  6. data/bin/sidekiq +22 -3
  7. data/bin/sidekiqload +212 -119
  8. data/bin/sidekiqmon +11 -0
  9. data/lib/generators/sidekiq/job_generator.rb +59 -0
  10. data/lib/generators/sidekiq/templates/{worker.rb.erb → job.rb.erb} +2 -2
  11. data/lib/generators/sidekiq/templates/job_spec.rb.erb +6 -0
  12. data/lib/generators/sidekiq/templates/{worker_test.rb.erb → job_test.rb.erb} +1 -1
  13. data/lib/sidekiq/api.rb +680 -315
  14. data/lib/sidekiq/capsule.rb +132 -0
  15. data/lib/sidekiq/cli.rb +268 -248
  16. data/lib/sidekiq/client.rb +136 -101
  17. data/lib/sidekiq/component.rb +68 -0
  18. data/lib/sidekiq/config.rb +293 -0
  19. data/lib/sidekiq/deploy.rb +64 -0
  20. data/lib/sidekiq/embedded.rb +63 -0
  21. data/lib/sidekiq/fetch.rb +49 -42
  22. data/lib/sidekiq/iterable_job.rb +55 -0
  23. data/lib/sidekiq/job/interrupt_handler.rb +24 -0
  24. data/lib/sidekiq/job/iterable/active_record_enumerator.rb +53 -0
  25. data/lib/sidekiq/job/iterable/csv_enumerator.rb +47 -0
  26. data/lib/sidekiq/job/iterable/enumerators.rb +135 -0
  27. data/lib/sidekiq/job/iterable.rb +231 -0
  28. data/lib/sidekiq/job.rb +385 -0
  29. data/lib/sidekiq/job_logger.rb +62 -0
  30. data/lib/sidekiq/job_retry.rb +305 -0
  31. data/lib/sidekiq/job_util.rb +109 -0
  32. data/lib/sidekiq/launcher.rb +208 -108
  33. data/lib/sidekiq/logger.rb +131 -0
  34. data/lib/sidekiq/manager.rb +43 -47
  35. data/lib/sidekiq/metrics/query.rb +158 -0
  36. data/lib/sidekiq/metrics/shared.rb +97 -0
  37. data/lib/sidekiq/metrics/tracking.rb +148 -0
  38. data/lib/sidekiq/middleware/chain.rb +113 -56
  39. data/lib/sidekiq/middleware/current_attributes.rb +113 -0
  40. data/lib/sidekiq/middleware/i18n.rb +7 -7
  41. data/lib/sidekiq/middleware/modules.rb +23 -0
  42. data/lib/sidekiq/monitor.rb +147 -0
  43. data/lib/sidekiq/paginator.rb +28 -16
  44. data/lib/sidekiq/processor.rb +188 -98
  45. data/lib/sidekiq/rails.rb +46 -97
  46. data/lib/sidekiq/redis_client_adapter.rb +114 -0
  47. data/lib/sidekiq/redis_connection.rb +71 -73
  48. data/lib/sidekiq/ring_buffer.rb +31 -0
  49. data/lib/sidekiq/scheduled.rb +140 -51
  50. data/lib/sidekiq/sd_notify.rb +149 -0
  51. data/lib/sidekiq/systemd.rb +26 -0
  52. data/lib/sidekiq/testing/inline.rb +6 -5
  53. data/lib/sidekiq/testing.rb +95 -85
  54. data/lib/sidekiq/transaction_aware_client.rb +51 -0
  55. data/lib/sidekiq/version.rb +3 -1
  56. data/lib/sidekiq/web/action.rb +22 -16
  57. data/lib/sidekiq/web/application.rb +230 -86
  58. data/lib/sidekiq/web/csrf_protection.rb +183 -0
  59. data/lib/sidekiq/web/helpers.rb +241 -104
  60. data/lib/sidekiq/web/router.rb +23 -19
  61. data/lib/sidekiq/web.rb +118 -110
  62. data/lib/sidekiq/worker_compatibility_alias.rb +13 -0
  63. data/lib/sidekiq.rb +96 -185
  64. data/sidekiq.gemspec +26 -27
  65. data/web/assets/images/apple-touch-icon.png +0 -0
  66. data/web/assets/javascripts/application.js +157 -61
  67. data/web/assets/javascripts/base-charts.js +106 -0
  68. data/web/assets/javascripts/chart.min.js +13 -0
  69. data/web/assets/javascripts/chartjs-plugin-annotation.min.js +7 -0
  70. data/web/assets/javascripts/dashboard-charts.js +192 -0
  71. data/web/assets/javascripts/dashboard.js +37 -280
  72. data/web/assets/javascripts/metrics.js +298 -0
  73. data/web/assets/stylesheets/application-dark.css +147 -0
  74. data/web/assets/stylesheets/application-rtl.css +163 -0
  75. data/web/assets/stylesheets/application.css +173 -198
  76. data/web/assets/stylesheets/bootstrap-rtl.min.css +9 -0
  77. data/web/assets/stylesheets/bootstrap.css +2 -2
  78. data/web/locales/ar.yml +87 -0
  79. data/web/locales/cs.yml +62 -62
  80. data/web/locales/da.yml +60 -53
  81. data/web/locales/de.yml +65 -53
  82. data/web/locales/el.yml +43 -24
  83. data/web/locales/en.yml +86 -64
  84. data/web/locales/es.yml +70 -53
  85. data/web/locales/fa.yml +65 -64
  86. data/web/locales/fr.yml +83 -62
  87. data/web/locales/gd.yml +99 -0
  88. data/web/locales/he.yml +80 -0
  89. data/web/locales/hi.yml +59 -59
  90. data/web/locales/it.yml +53 -53
  91. data/web/locales/ja.yml +75 -62
  92. data/web/locales/ko.yml +52 -52
  93. data/web/locales/lt.yml +83 -0
  94. data/web/locales/nb.yml +61 -61
  95. data/web/locales/nl.yml +52 -52
  96. data/web/locales/pl.yml +45 -45
  97. data/web/locales/pt-br.yml +83 -55
  98. data/web/locales/pt.yml +51 -51
  99. data/web/locales/ru.yml +68 -63
  100. data/web/locales/sv.yml +53 -53
  101. data/web/locales/ta.yml +60 -60
  102. data/web/locales/tr.yml +101 -0
  103. data/web/locales/uk.yml +62 -61
  104. data/web/locales/ur.yml +80 -0
  105. data/web/locales/vi.yml +83 -0
  106. data/web/locales/zh-cn.yml +43 -16
  107. data/web/locales/zh-tw.yml +42 -8
  108. data/web/views/_footer.erb +21 -3
  109. data/web/views/_job_info.erb +21 -4
  110. data/web/views/_metrics_period_select.erb +12 -0
  111. data/web/views/_nav.erb +5 -19
  112. data/web/views/_paging.erb +3 -1
  113. data/web/views/_poll_link.erb +3 -6
  114. data/web/views/_summary.erb +7 -7
  115. data/web/views/busy.erb +85 -31
  116. data/web/views/dashboard.erb +50 -20
  117. data/web/views/dead.erb +3 -3
  118. data/web/views/filtering.erb +7 -0
  119. data/web/views/layout.erb +17 -6
  120. data/web/views/metrics.erb +91 -0
  121. data/web/views/metrics_for_job.erb +59 -0
  122. data/web/views/morgue.erb +14 -15
  123. data/web/views/queue.erb +34 -24
  124. data/web/views/queues.erb +20 -4
  125. data/web/views/retries.erb +19 -16
  126. data/web/views/retry.erb +3 -3
  127. data/web/views/scheduled.erb +19 -17
  128. metadata +91 -198
  129. data/.github/contributing.md +0 -32
  130. data/.github/issue_template.md +0 -9
  131. data/.gitignore +0 -12
  132. data/.travis.yml +0 -18
  133. data/3.0-Upgrade.md +0 -70
  134. data/4.0-Upgrade.md +0 -53
  135. data/COMM-LICENSE +0 -95
  136. data/Ent-Changes.md +0 -173
  137. data/Gemfile +0 -29
  138. data/LICENSE +0 -9
  139. data/Pro-2.0-Upgrade.md +0 -138
  140. data/Pro-3.0-Upgrade.md +0 -44
  141. data/Pro-Changes.md +0 -628
  142. data/Rakefile +0 -12
  143. data/bin/sidekiqctl +0 -99
  144. data/code_of_conduct.md +0 -50
  145. data/lib/generators/sidekiq/templates/worker_spec.rb.erb +0 -6
  146. data/lib/generators/sidekiq/worker_generator.rb +0 -49
  147. data/lib/sidekiq/core_ext.rb +0 -119
  148. data/lib/sidekiq/exception_handler.rb +0 -31
  149. data/lib/sidekiq/extensions/action_mailer.rb +0 -57
  150. data/lib/sidekiq/extensions/active_record.rb +0 -40
  151. data/lib/sidekiq/extensions/class_methods.rb +0 -40
  152. data/lib/sidekiq/extensions/generic_proxy.rb +0 -25
  153. data/lib/sidekiq/logging.rb +0 -106
  154. data/lib/sidekiq/middleware/server/active_record.rb +0 -13
  155. data/lib/sidekiq/middleware/server/logging.rb +0 -31
  156. data/lib/sidekiq/middleware/server/retry_jobs.rb +0 -205
  157. data/lib/sidekiq/util.rb +0 -63
  158. data/lib/sidekiq/worker.rb +0 -121
metadata CHANGED
@@ -1,296 +1,174 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.10
4
+ version: 7.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Perham
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-17 00:00:00.000000000 Z
11
+ date: 2024-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: redis
14
+ name: redis-client
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '3.2'
20
17
  - - ">="
21
18
  - !ruby/object:Gem::Version
22
- version: 3.2.1
19
+ version: 0.22.2
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '3.2'
30
24
  - - ">="
31
25
  - !ruby/object:Gem::Version
32
- version: 3.2.1
26
+ version: 0.22.2
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: connection_pool
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '2.2'
40
31
  - - ">="
41
32
  - !ruby/object:Gem::Version
42
- version: 2.2.0
33
+ version: 2.3.0
43
34
  type: :runtime
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
46
37
  requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '2.2'
50
38
  - - ">="
51
39
  - !ruby/object:Gem::Version
52
- version: 2.2.0
40
+ version: 2.3.0
53
41
  - !ruby/object:Gem::Dependency
54
- name: concurrent-ruby
55
- requirement: !ruby/object:Gem::Requirement
56
- requirements:
57
- - - "~>"
58
- - !ruby/object:Gem::Version
59
- version: '1.0'
60
- type: :runtime
61
- prerelease: false
62
- version_requirements: !ruby/object:Gem::Requirement
63
- requirements:
64
- - - "~>"
65
- - !ruby/object:Gem::Version
66
- version: '1.0'
67
- - !ruby/object:Gem::Dependency
68
- name: rack-protection
42
+ name: rack
69
43
  requirement: !ruby/object:Gem::Requirement
70
44
  requirements:
71
45
  - - ">="
72
46
  - !ruby/object:Gem::Version
73
- version: 1.5.0
47
+ version: 2.2.4
74
48
  type: :runtime
75
49
  prerelease: false
76
50
  version_requirements: !ruby/object:Gem::Requirement
77
51
  requirements:
78
52
  - - ">="
79
53
  - !ruby/object:Gem::Version
80
- version: 1.5.0
54
+ version: 2.2.4
81
55
  - !ruby/object:Gem::Dependency
82
- name: redis-namespace
83
- requirement: !ruby/object:Gem::Requirement
84
- requirements:
85
- - - "~>"
86
- - !ruby/object:Gem::Version
87
- version: '1.5'
88
- - - ">="
89
- - !ruby/object:Gem::Version
90
- version: 1.5.2
91
- type: :development
92
- prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - "~>"
96
- - !ruby/object:Gem::Version
97
- version: '1.5'
98
- - - ">="
99
- - !ruby/object:Gem::Version
100
- version: 1.5.2
101
- - !ruby/object:Gem::Dependency
102
- name: minitest
103
- requirement: !ruby/object:Gem::Requirement
104
- requirements:
105
- - - "~>"
106
- - !ruby/object:Gem::Version
107
- version: '5.10'
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: 5.10.1
111
- type: :development
112
- prerelease: false
113
- version_requirements: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '5.10'
118
- - - ">="
119
- - !ruby/object:Gem::Version
120
- version: 5.10.1
121
- - !ruby/object:Gem::Dependency
122
- name: rake
56
+ name: concurrent-ruby
123
57
  requirement: !ruby/object:Gem::Requirement
124
58
  requirements:
125
- - - "~>"
59
+ - - "<"
126
60
  - !ruby/object:Gem::Version
127
- version: '10.0'
128
- type: :development
61
+ version: '2'
62
+ type: :runtime
129
63
  prerelease: false
130
64
  version_requirements: !ruby/object:Gem::Requirement
131
65
  requirements:
132
- - - "~>"
66
+ - - "<"
133
67
  - !ruby/object:Gem::Version
134
- version: '10.0'
68
+ version: '2'
135
69
  - !ruby/object:Gem::Dependency
136
- name: rails
70
+ name: logger
137
71
  requirement: !ruby/object:Gem::Requirement
138
72
  requirements:
139
73
  - - ">="
140
74
  - !ruby/object:Gem::Version
141
- version: 3.2.0
142
- type: :development
75
+ version: '0'
76
+ type: :runtime
143
77
  prerelease: false
144
78
  version_requirements: !ruby/object:Gem::Requirement
145
79
  requirements:
146
80
  - - ">="
147
81
  - !ruby/object:Gem::Version
148
- version: 3.2.0
149
- - !ruby/object:Gem::Dependency
150
- name: capybara
151
- requirement: !ruby/object:Gem::Requirement
152
- requirements:
153
- - - "~>"
154
- - !ruby/object:Gem::Version
155
- version: '2.11'
156
- type: :development
157
- prerelease: false
158
- version_requirements: !ruby/object:Gem::Requirement
159
- requirements:
160
- - - "~>"
161
- - !ruby/object:Gem::Version
162
- version: '2.11'
163
- - !ruby/object:Gem::Dependency
164
- name: poltergeist
165
- requirement: !ruby/object:Gem::Requirement
166
- requirements:
167
- - - "~>"
168
- - !ruby/object:Gem::Version
169
- version: '1.12'
170
- type: :development
171
- prerelease: false
172
- version_requirements: !ruby/object:Gem::Requirement
173
- requirements:
174
- - - "~>"
175
- - !ruby/object:Gem::Version
176
- version: '1.12'
177
- - !ruby/object:Gem::Dependency
178
- name: percy-capybara
179
- requirement: !ruby/object:Gem::Requirement
180
- requirements:
181
- - - "~>"
182
- - !ruby/object:Gem::Version
183
- version: '2.3'
184
- type: :development
185
- prerelease: false
186
- version_requirements: !ruby/object:Gem::Requirement
187
- requirements:
188
- - - "~>"
189
- - !ruby/object:Gem::Version
190
- version: '2.3'
191
- - !ruby/object:Gem::Dependency
192
- name: timecop
193
- requirement: !ruby/object:Gem::Requirement
194
- requirements:
195
- - - "~>"
196
- - !ruby/object:Gem::Version
197
- version: '0.8'
198
- type: :development
199
- prerelease: false
200
- version_requirements: !ruby/object:Gem::Requirement
201
- requirements:
202
- - - "~>"
203
- - !ruby/object:Gem::Version
204
- version: '0.8'
205
- - !ruby/object:Gem::Dependency
206
- name: mocha
207
- requirement: !ruby/object:Gem::Requirement
208
- requirements:
209
- - - "~>"
210
- - !ruby/object:Gem::Version
211
- version: '1.1'
212
- type: :development
213
- prerelease: false
214
- version_requirements: !ruby/object:Gem::Requirement
215
- requirements:
216
- - - "~>"
217
- - !ruby/object:Gem::Version
218
- version: '1.1'
82
+ version: '0'
219
83
  description: Simple, efficient background processing for Ruby.
220
84
  email:
221
- - mperham@gmail.com
85
+ - info@contribsys.com
222
86
  executables:
223
87
  - sidekiq
224
- - sidekiqctl
88
+ - sidekiqmon
225
89
  extensions: []
226
90
  extra_rdoc_files: []
227
91
  files:
228
- - ".github/contributing.md"
229
- - ".github/issue_template.md"
230
- - ".gitignore"
231
- - ".travis.yml"
232
- - 3.0-Upgrade.md
233
- - 4.0-Upgrade.md
234
- - COMM-LICENSE
235
92
  - Changes.md
236
- - Ent-Changes.md
237
- - Gemfile
238
- - LICENSE
239
- - Pro-2.0-Upgrade.md
240
- - Pro-3.0-Upgrade.md
241
- - Pro-Changes.md
93
+ - LICENSE.txt
242
94
  - README.md
243
- - Rakefile
95
+ - bin/multi_queue_bench
244
96
  - bin/sidekiq
245
- - bin/sidekiqctl
246
97
  - bin/sidekiqload
247
- - code_of_conduct.md
248
- - lib/generators/sidekiq/templates/worker.rb.erb
249
- - lib/generators/sidekiq/templates/worker_spec.rb.erb
250
- - lib/generators/sidekiq/templates/worker_test.rb.erb
251
- - lib/generators/sidekiq/worker_generator.rb
98
+ - bin/sidekiqmon
99
+ - lib/generators/sidekiq/job_generator.rb
100
+ - lib/generators/sidekiq/templates/job.rb.erb
101
+ - lib/generators/sidekiq/templates/job_spec.rb.erb
102
+ - lib/generators/sidekiq/templates/job_test.rb.erb
252
103
  - lib/sidekiq.rb
253
104
  - lib/sidekiq/api.rb
105
+ - lib/sidekiq/capsule.rb
254
106
  - lib/sidekiq/cli.rb
255
107
  - lib/sidekiq/client.rb
256
- - lib/sidekiq/core_ext.rb
257
- - lib/sidekiq/exception_handler.rb
258
- - lib/sidekiq/extensions/action_mailer.rb
259
- - lib/sidekiq/extensions/active_record.rb
260
- - lib/sidekiq/extensions/class_methods.rb
261
- - lib/sidekiq/extensions/generic_proxy.rb
108
+ - lib/sidekiq/component.rb
109
+ - lib/sidekiq/config.rb
110
+ - lib/sidekiq/deploy.rb
111
+ - lib/sidekiq/embedded.rb
262
112
  - lib/sidekiq/fetch.rb
113
+ - lib/sidekiq/iterable_job.rb
114
+ - lib/sidekiq/job.rb
115
+ - lib/sidekiq/job/interrupt_handler.rb
116
+ - lib/sidekiq/job/iterable.rb
117
+ - lib/sidekiq/job/iterable/active_record_enumerator.rb
118
+ - lib/sidekiq/job/iterable/csv_enumerator.rb
119
+ - lib/sidekiq/job/iterable/enumerators.rb
120
+ - lib/sidekiq/job_logger.rb
121
+ - lib/sidekiq/job_retry.rb
122
+ - lib/sidekiq/job_util.rb
263
123
  - lib/sidekiq/launcher.rb
264
- - lib/sidekiq/logging.rb
124
+ - lib/sidekiq/logger.rb
265
125
  - lib/sidekiq/manager.rb
126
+ - lib/sidekiq/metrics/query.rb
127
+ - lib/sidekiq/metrics/shared.rb
128
+ - lib/sidekiq/metrics/tracking.rb
266
129
  - lib/sidekiq/middleware/chain.rb
130
+ - lib/sidekiq/middleware/current_attributes.rb
267
131
  - lib/sidekiq/middleware/i18n.rb
268
- - lib/sidekiq/middleware/server/active_record.rb
269
- - lib/sidekiq/middleware/server/logging.rb
270
- - lib/sidekiq/middleware/server/retry_jobs.rb
132
+ - lib/sidekiq/middleware/modules.rb
133
+ - lib/sidekiq/monitor.rb
271
134
  - lib/sidekiq/paginator.rb
272
135
  - lib/sidekiq/processor.rb
273
136
  - lib/sidekiq/rails.rb
137
+ - lib/sidekiq/redis_client_adapter.rb
274
138
  - lib/sidekiq/redis_connection.rb
139
+ - lib/sidekiq/ring_buffer.rb
275
140
  - lib/sidekiq/scheduled.rb
141
+ - lib/sidekiq/sd_notify.rb
142
+ - lib/sidekiq/systemd.rb
276
143
  - lib/sidekiq/testing.rb
277
144
  - lib/sidekiq/testing/inline.rb
278
- - lib/sidekiq/util.rb
145
+ - lib/sidekiq/transaction_aware_client.rb
279
146
  - lib/sidekiq/version.rb
280
147
  - lib/sidekiq/web.rb
281
148
  - lib/sidekiq/web/action.rb
282
149
  - lib/sidekiq/web/application.rb
150
+ - lib/sidekiq/web/csrf_protection.rb
283
151
  - lib/sidekiq/web/helpers.rb
284
152
  - lib/sidekiq/web/router.rb
285
- - lib/sidekiq/worker.rb
153
+ - lib/sidekiq/worker_compatibility_alias.rb
286
154
  - sidekiq.gemspec
155
+ - web/assets/images/apple-touch-icon.png
287
156
  - web/assets/images/favicon.ico
288
157
  - web/assets/images/logo.png
289
158
  - web/assets/images/status.png
290
159
  - web/assets/javascripts/application.js
160
+ - web/assets/javascripts/base-charts.js
161
+ - web/assets/javascripts/chart.min.js
162
+ - web/assets/javascripts/chartjs-plugin-annotation.min.js
163
+ - web/assets/javascripts/dashboard-charts.js
291
164
  - web/assets/javascripts/dashboard.js
165
+ - web/assets/javascripts/metrics.js
166
+ - web/assets/stylesheets/application-dark.css
167
+ - web/assets/stylesheets/application-rtl.css
292
168
  - web/assets/stylesheets/application.css
169
+ - web/assets/stylesheets/bootstrap-rtl.min.css
293
170
  - web/assets/stylesheets/bootstrap.css
171
+ - web/locales/ar.yml
294
172
  - web/locales/cs.yml
295
173
  - web/locales/da.yml
296
174
  - web/locales/de.yml
@@ -299,10 +177,13 @@ files:
299
177
  - web/locales/es.yml
300
178
  - web/locales/fa.yml
301
179
  - web/locales/fr.yml
180
+ - web/locales/gd.yml
181
+ - web/locales/he.yml
302
182
  - web/locales/hi.yml
303
183
  - web/locales/it.yml
304
184
  - web/locales/ja.yml
305
185
  - web/locales/ko.yml
186
+ - web/locales/lt.yml
306
187
  - web/locales/nb.yml
307
188
  - web/locales/nl.yml
308
189
  - web/locales/pl.yml
@@ -311,11 +192,15 @@ files:
311
192
  - web/locales/ru.yml
312
193
  - web/locales/sv.yml
313
194
  - web/locales/ta.yml
195
+ - web/locales/tr.yml
314
196
  - web/locales/uk.yml
197
+ - web/locales/ur.yml
198
+ - web/locales/vi.yml
315
199
  - web/locales/zh-cn.yml
316
200
  - web/locales/zh-tw.yml
317
201
  - web/views/_footer.erb
318
202
  - web/views/_job_info.erb
203
+ - web/views/_metrics_period_select.erb
319
204
  - web/views/_nav.erb
320
205
  - web/views/_paging.erb
321
206
  - web/views/_poll_link.erb
@@ -324,7 +209,10 @@ files:
324
209
  - web/views/busy.erb
325
210
  - web/views/dashboard.erb
326
211
  - web/views/dead.erb
212
+ - web/views/filtering.erb
327
213
  - web/views/layout.erb
214
+ - web/views/metrics.erb
215
+ - web/views/metrics_for_job.erb
328
216
  - web/views/morgue.erb
329
217
  - web/views/queue.erb
330
218
  - web/views/queues.erb
@@ -332,11 +220,17 @@ files:
332
220
  - web/views/retry.erb
333
221
  - web/views/scheduled.erb
334
222
  - web/views/scheduled_job_info.erb
335
- homepage: http://sidekiq.org
223
+ homepage: https://sidekiq.org
336
224
  licenses:
337
225
  - LGPL-3.0
338
- metadata: {}
339
- post_install_message:
226
+ metadata:
227
+ homepage_uri: https://sidekiq.org
228
+ bug_tracker_uri: https://github.com/sidekiq/sidekiq/issues
229
+ documentation_uri: https://github.com/sidekiq/sidekiq/wiki
230
+ changelog_uri: https://github.com/sidekiq/sidekiq/blob/main/Changes.md
231
+ source_code_uri: https://github.com/sidekiq/sidekiq
232
+ rubygems_mfa_required: 'true'
233
+ post_install_message:
340
234
  rdoc_options: []
341
235
  require_paths:
342
236
  - lib
@@ -344,16 +238,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
344
238
  requirements:
345
239
  - - ">="
346
240
  - !ruby/object:Gem::Version
347
- version: '0'
241
+ version: 2.7.0
348
242
  required_rubygems_version: !ruby/object:Gem::Requirement
349
243
  requirements:
350
244
  - - ">="
351
245
  - !ruby/object:Gem::Version
352
246
  version: '0'
353
247
  requirements: []
354
- rubyforge_project:
355
- rubygems_version: 2.5.2
356
- signing_key:
248
+ rubygems_version: 3.5.11
249
+ signing_key:
357
250
  specification_version: 4
358
251
  summary: Simple, efficient background processing for Ruby
359
252
  test_files: []
@@ -1,32 +0,0 @@
1
- # Contributing
2
-
3
- ## Issues
4
-
5
- When opening an issue:
6
-
7
- * include the full **backtrace** with your error
8
- * include your Sidekiq initializer
9
- * list versions you are using: Ruby, Rails, Sidekiq, OS, etc.
10
-
11
- It's always better to include more info rather than less.
12
-
13
- ## Code
14
-
15
- It's always best to open an issue before investing a lot of time into a
16
- fix or new functionality. Functionality must meet my design goals and
17
- vision for the project to be accepted; I would be happy to discuss how
18
- your idea can best fit into Sidekiq.
19
-
20
- ## Legal
21
-
22
- By submitting a Pull Request, you disavow any rights or claims to any changes
23
- submitted to the Sidekiq project and assign the copyright of
24
- those changes to Contributed Systems LLC.
25
-
26
- If you cannot or do not want to reassign those rights (your employment
27
- contract for your employer may not allow this), you should not submit a PR.
28
- Open an issue and someone else can do the work.
29
-
30
- This is a legal way of saying "If you submit a PR to us, that code becomes ours".
31
- 99.9% of the time that's what you intend anyways; we hope it doesn't scare you
32
- away from contributing.
@@ -1,9 +0,0 @@
1
- Ruby version:
2
- Sidekiq / Pro / Enterprise version(s):
3
-
4
- Please include your initializer and any error message with the full backtrace.
5
-
6
- Are you using an old version?
7
- Have you checked the changelog to see if your issue has been fixed in a later version?
8
-
9
- https://github.com/mperham/sidekiq/blob/master/Changes.md
data/.gitignore DELETED
@@ -1,12 +0,0 @@
1
- .rvmrc
2
- .ruby-version
3
- tags
4
- Gemfile.lock
5
- *.swp
6
- dump.rdb
7
- .rbx
8
- coverage/
9
- vendor/
10
- .bundle/
11
- .sass-cache/
12
- tmp/
data/.travis.yml DELETED
@@ -1,18 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- cache: bundler
4
- services:
5
- - redis-server
6
- before_install:
7
- - gem install bundler
8
- - gem update bundler
9
- matrix:
10
- include:
11
- - rvm: 2.2.4
12
- env: "PERCY_ENABLE=0"
13
- - rvm: 2.3.0
14
- env: "PERCY_ENABLE=0"
15
- - rvm: 2.4.0
16
- env: "PERCY_ENABLE=1"
17
- - rvm: jruby-9.1.6.0
18
- env: "PERCY_ENABLE=0"
data/3.0-Upgrade.md DELETED
@@ -1,70 +0,0 @@
1
- # Upgrading to Sidekiq 3.0
2
-
3
- Sidekiq 3.0 brings several new features but also removes old APIs and
4
- changes a few data elements in Redis. To upgrade cleanly:
5
-
6
- * Upgrade to the latest Sidekiq 2.x and run it for a few weeks.
7
- `gem 'sidekiq', '< 3'`
8
- This is only needed if you have retries pending.
9
- * 3rd party gems which use **client-side middleware** will need to update
10
- due to an API change. The Redis connection for a particular job is
11
- passed thru the middleware to handle sharding where jobs can
12
- be pushed to different redis server instances.
13
-
14
- `def call(worker_class, msg, queue, redis_pool)`
15
-
16
- Client-side middleware should use `redis_pool.with { |conn| ... }` to
17
- perform Redis operations and **not** `Sidekiq.redis`.
18
- * If you used the capistrano integration, you'll need to pull in the
19
- new [capistrano-sidekiq](https://github.com/seuros/capistrano-sidekiq)
20
- gem and use it in your deploy.rb.
21
- * API changes:
22
- - `Sidekiq::Client.registered_workers` replaced by `Sidekiq::Workers.new`
23
- - `Sidekiq::Client.registered_queues` replaced by `Sidekiq::Queue.all`
24
- - `Sidekiq::Worker#retries_exhausted` replaced by `Sidekiq::Worker.sidekiq_retries_exhausted`
25
- - `Sidekiq::Workers#each` has changed significantly with a reworking
26
- of Sidekiq's internal process/thread data model.
27
- * `sidekiq/api` is no longer automatically required. If your code uses
28
- the API, you will need to require it.
29
- * Redis-to-Go is no longer transparently activated on Heroku so as to not play
30
- favorites with any particular Redis service. You need to set a config option
31
- for your app:
32
- `heroku config:set REDIS_PROVIDER=REDISTOGO_URL`. You may also use
33
- the generic `REDIS_URL`. See
34
- [Advanced Options: Setting the Location of your Redis server][1]
35
- for details.
36
- * Anyone using Airbrake, Honeybadger, Exceptional or ExceptionNotifier
37
- will need to update their error gem version to the latest to pull in
38
- Sidekiq support. Sidekiq will not provide explicit support for these
39
- services so as to not play favorites with any particular error service.
40
- * MRI 1.9 is no longer officially supported. Sidekiq's official
41
- support policy is to support the current and previous major releases
42
- of MRI and Rails. As of February 2014, that's MRI 2.1, MRI 2.0, JRuby 1.7, Rails 4.0
43
- and Rails 3.2. I will consider PRs to fix issues found by users for
44
- other platforms/versions.
45
-
46
- ## Error Service Providers
47
-
48
- If you previously provided a middleware to capture job errors, you
49
- should instead provide a global error handler with Sidekiq 3.0. This
50
- ensures **any** error within Sidekiq will be logged appropriately, not
51
- just during job execution.
52
-
53
- ```ruby
54
- if Sidekiq::VERSION < '3'
55
- # old behavior
56
- Sidekiq.configure_server do |config|
57
- config.server_middleware do |chain|
58
- chain.add MyErrorService::Middleware
59
- end
60
- end
61
- else
62
- Sidekiq.configure_server do |config|
63
- config.error_handlers << proc {|ex,context| MyErrorService.notify(ex, context) }
64
- end
65
- end
66
- ```
67
-
68
- Your error handler must respond to `call(exception, context_hash)`.
69
-
70
- [1]: https://github.com/mperham/sidekiq/wiki/Advanced-Options#via-env-variable
data/4.0-Upgrade.md DELETED
@@ -1,53 +0,0 @@
1
- # Welcome to Sidekiq 4.0!
2
-
3
- Sidekiq 4.0 contains a redesigned, more efficient core with less overhead per job.
4
- See my blog for [an overview of Sidekiq 4's higher performance](http://www.mikeperham.com/2015/10/14/optimizing-sidekiq/).
5
-
6
- ## What's New
7
-
8
- * Sidekiq no longer uses Celluloid. If your application code uses Celluloid,
9
- you will need to pull it in yourself.
10
-
11
- * `redis-namespace` has been removed from Sidekiq's gem dependencies. If
12
- you want to use namespacing ([and I strongly urge you not to](http://www.mikeperham.com/2015/09/24/storing-data-with-redis/)), you'll need to add the gem to your Gemfile:
13
- ```ruby
14
- gem 'redis-namespace'
15
- ```
16
-
17
- * **Redis 2.8.0 or greater is required.** Redis 2.8 was released two years
18
- ago and contains **many** useful features which Sidekiq couldn't
19
- leverage until now. **Redis 3.0.3 or greater is recommended** for large
20
- scale use [#2431](https://github.com/mperham/sidekiq/issues/2431).
21
-
22
- * Jobs are now fetched from Redis in parallel, making Sidekiq more
23
- resilient to high network latency. This means that Sidekiq requires
24
- more Redis connections per process. You must have a minimum of
25
- `concurrency + 2` connections in your pool or Sidekiq will exit.
26
- When in doubt, let Sidekiq size the connection pool for you.
27
-
28
- * Worker data is no longer updated in real-time but rather upon every
29
- heartbeat. Don't expect the `Sidekiq::Workers` API to be millisecond-precise.
30
-
31
- * There's a new testing API based off the `Sidekiq::Queues` namespace. All
32
- assertions made against the Worker class still work as expected.
33
- ```ruby
34
- assert_equal 0, Sidekiq::Queues["default"].size
35
- HardWorker.perform_async("log")
36
- assert_equal 1, Sidekiq::Queues["default"].size
37
- assert_equal "log", Sidekiq::Queues["default"].first['args'][0]
38
- Sidekiq::Queues.clear_all
39
- ```
40
-
41
- ## Upgrade
42
-
43
- First, make sure you are using Redis 2.8 or greater. Next:
44
-
45
- * Upgrade to the latest Sidekiq 3.x.
46
- ```ruby
47
- gem 'sidekiq', '< 4'
48
- ```
49
- * Fix any deprecation warnings you see.
50
- * Upgrade to 4.x.
51
- ```ruby
52
- gem 'sidekiq', '< 5'
53
- ```