sidekiq 4.2.10 → 7.3.2
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.
- checksums.yaml +5 -5
- data/Changes.md +859 -7
- data/LICENSE.txt +9 -0
- data/README.md +49 -50
- data/bin/multi_queue_bench +271 -0
- data/bin/sidekiq +22 -3
- data/bin/sidekiqload +212 -119
- data/bin/sidekiqmon +11 -0
- data/lib/generators/sidekiq/job_generator.rb +59 -0
- data/lib/generators/sidekiq/templates/{worker.rb.erb → job.rb.erb} +2 -2
- data/lib/generators/sidekiq/templates/job_spec.rb.erb +6 -0
- data/lib/generators/sidekiq/templates/{worker_test.rb.erb → job_test.rb.erb} +1 -1
- data/lib/sidekiq/api.rb +680 -315
- data/lib/sidekiq/capsule.rb +132 -0
- data/lib/sidekiq/cli.rb +268 -248
- data/lib/sidekiq/client.rb +136 -101
- data/lib/sidekiq/component.rb +68 -0
- data/lib/sidekiq/config.rb +293 -0
- data/lib/sidekiq/deploy.rb +64 -0
- data/lib/sidekiq/embedded.rb +63 -0
- data/lib/sidekiq/fetch.rb +49 -42
- data/lib/sidekiq/iterable_job.rb +55 -0
- data/lib/sidekiq/job/interrupt_handler.rb +24 -0
- data/lib/sidekiq/job/iterable/active_record_enumerator.rb +53 -0
- data/lib/sidekiq/job/iterable/csv_enumerator.rb +47 -0
- data/lib/sidekiq/job/iterable/enumerators.rb +135 -0
- data/lib/sidekiq/job/iterable.rb +231 -0
- data/lib/sidekiq/job.rb +385 -0
- data/lib/sidekiq/job_logger.rb +62 -0
- data/lib/sidekiq/job_retry.rb +305 -0
- data/lib/sidekiq/job_util.rb +109 -0
- data/lib/sidekiq/launcher.rb +208 -108
- data/lib/sidekiq/logger.rb +131 -0
- data/lib/sidekiq/manager.rb +43 -47
- data/lib/sidekiq/metrics/query.rb +158 -0
- data/lib/sidekiq/metrics/shared.rb +97 -0
- data/lib/sidekiq/metrics/tracking.rb +148 -0
- data/lib/sidekiq/middleware/chain.rb +113 -56
- data/lib/sidekiq/middleware/current_attributes.rb +113 -0
- data/lib/sidekiq/middleware/i18n.rb +7 -7
- data/lib/sidekiq/middleware/modules.rb +23 -0
- data/lib/sidekiq/monitor.rb +147 -0
- data/lib/sidekiq/paginator.rb +28 -16
- data/lib/sidekiq/processor.rb +188 -98
- data/lib/sidekiq/rails.rb +46 -97
- data/lib/sidekiq/redis_client_adapter.rb +114 -0
- data/lib/sidekiq/redis_connection.rb +71 -73
- data/lib/sidekiq/ring_buffer.rb +31 -0
- data/lib/sidekiq/scheduled.rb +140 -51
- data/lib/sidekiq/sd_notify.rb +149 -0
- data/lib/sidekiq/systemd.rb +26 -0
- data/lib/sidekiq/testing/inline.rb +6 -5
- data/lib/sidekiq/testing.rb +95 -85
- data/lib/sidekiq/transaction_aware_client.rb +51 -0
- data/lib/sidekiq/version.rb +3 -1
- data/lib/sidekiq/web/action.rb +22 -16
- data/lib/sidekiq/web/application.rb +230 -86
- data/lib/sidekiq/web/csrf_protection.rb +183 -0
- data/lib/sidekiq/web/helpers.rb +241 -104
- data/lib/sidekiq/web/router.rb +23 -19
- data/lib/sidekiq/web.rb +118 -110
- data/lib/sidekiq/worker_compatibility_alias.rb +13 -0
- data/lib/sidekiq.rb +96 -185
- data/sidekiq.gemspec +26 -27
- data/web/assets/images/apple-touch-icon.png +0 -0
- data/web/assets/javascripts/application.js +157 -61
- data/web/assets/javascripts/base-charts.js +106 -0
- data/web/assets/javascripts/chart.min.js +13 -0
- data/web/assets/javascripts/chartjs-plugin-annotation.min.js +7 -0
- data/web/assets/javascripts/dashboard-charts.js +192 -0
- data/web/assets/javascripts/dashboard.js +37 -280
- data/web/assets/javascripts/metrics.js +298 -0
- data/web/assets/stylesheets/application-dark.css +147 -0
- data/web/assets/stylesheets/application-rtl.css +163 -0
- data/web/assets/stylesheets/application.css +173 -198
- data/web/assets/stylesheets/bootstrap-rtl.min.css +9 -0
- data/web/assets/stylesheets/bootstrap.css +2 -2
- data/web/locales/ar.yml +87 -0
- data/web/locales/cs.yml +62 -62
- data/web/locales/da.yml +60 -53
- data/web/locales/de.yml +65 -53
- data/web/locales/el.yml +43 -24
- data/web/locales/en.yml +86 -64
- data/web/locales/es.yml +70 -53
- data/web/locales/fa.yml +65 -64
- data/web/locales/fr.yml +83 -62
- data/web/locales/gd.yml +99 -0
- data/web/locales/he.yml +80 -0
- data/web/locales/hi.yml +59 -59
- data/web/locales/it.yml +53 -53
- data/web/locales/ja.yml +75 -62
- data/web/locales/ko.yml +52 -52
- data/web/locales/lt.yml +83 -0
- data/web/locales/nb.yml +61 -61
- data/web/locales/nl.yml +52 -52
- data/web/locales/pl.yml +45 -45
- data/web/locales/pt-br.yml +83 -55
- data/web/locales/pt.yml +51 -51
- data/web/locales/ru.yml +68 -63
- data/web/locales/sv.yml +53 -53
- data/web/locales/ta.yml +60 -60
- data/web/locales/tr.yml +101 -0
- data/web/locales/uk.yml +62 -61
- data/web/locales/ur.yml +80 -0
- data/web/locales/vi.yml +83 -0
- data/web/locales/zh-cn.yml +43 -16
- data/web/locales/zh-tw.yml +42 -8
- data/web/views/_footer.erb +21 -3
- data/web/views/_job_info.erb +21 -4
- data/web/views/_metrics_period_select.erb +12 -0
- data/web/views/_nav.erb +5 -19
- data/web/views/_paging.erb +3 -1
- data/web/views/_poll_link.erb +3 -6
- data/web/views/_summary.erb +7 -7
- data/web/views/busy.erb +85 -31
- data/web/views/dashboard.erb +50 -20
- data/web/views/dead.erb +3 -3
- data/web/views/filtering.erb +7 -0
- data/web/views/layout.erb +17 -6
- data/web/views/metrics.erb +91 -0
- data/web/views/metrics_for_job.erb +59 -0
- data/web/views/morgue.erb +14 -15
- data/web/views/queue.erb +34 -24
- data/web/views/queues.erb +20 -4
- data/web/views/retries.erb +19 -16
- data/web/views/retry.erb +3 -3
- data/web/views/scheduled.erb +19 -17
- metadata +91 -198
- data/.github/contributing.md +0 -32
- data/.github/issue_template.md +0 -9
- data/.gitignore +0 -12
- data/.travis.yml +0 -18
- data/3.0-Upgrade.md +0 -70
- data/4.0-Upgrade.md +0 -53
- data/COMM-LICENSE +0 -95
- data/Ent-Changes.md +0 -173
- data/Gemfile +0 -29
- data/LICENSE +0 -9
- data/Pro-2.0-Upgrade.md +0 -138
- data/Pro-3.0-Upgrade.md +0 -44
- data/Pro-Changes.md +0 -628
- data/Rakefile +0 -12
- data/bin/sidekiqctl +0 -99
- data/code_of_conduct.md +0 -50
- data/lib/generators/sidekiq/templates/worker_spec.rb.erb +0 -6
- data/lib/generators/sidekiq/worker_generator.rb +0 -49
- data/lib/sidekiq/core_ext.rb +0 -119
- data/lib/sidekiq/exception_handler.rb +0 -31
- data/lib/sidekiq/extensions/action_mailer.rb +0 -57
- data/lib/sidekiq/extensions/active_record.rb +0 -40
- data/lib/sidekiq/extensions/class_methods.rb +0 -40
- data/lib/sidekiq/extensions/generic_proxy.rb +0 -25
- data/lib/sidekiq/logging.rb +0 -106
- data/lib/sidekiq/middleware/server/active_record.rb +0 -13
- data/lib/sidekiq/middleware/server/logging.rb +0 -31
- data/lib/sidekiq/middleware/server/retry_jobs.rb +0 -205
- data/lib/sidekiq/util.rb +0 -63
- 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
|
+
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:
|
|
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:
|
|
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:
|
|
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.
|
|
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.
|
|
40
|
+
version: 2.3.0
|
|
53
41
|
- !ruby/object:Gem::Dependency
|
|
54
|
-
name:
|
|
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:
|
|
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:
|
|
54
|
+
version: 2.2.4
|
|
81
55
|
- !ruby/object:Gem::Dependency
|
|
82
|
-
name:
|
|
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: '
|
|
128
|
-
type: :
|
|
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: '
|
|
68
|
+
version: '2'
|
|
135
69
|
- !ruby/object:Gem::Dependency
|
|
136
|
-
name:
|
|
70
|
+
name: logger
|
|
137
71
|
requirement: !ruby/object:Gem::Requirement
|
|
138
72
|
requirements:
|
|
139
73
|
- - ">="
|
|
140
74
|
- !ruby/object:Gem::Version
|
|
141
|
-
version:
|
|
142
|
-
type: :
|
|
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:
|
|
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
|
-
-
|
|
85
|
+
- info@contribsys.com
|
|
222
86
|
executables:
|
|
223
87
|
- sidekiq
|
|
224
|
-
-
|
|
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
|
-
-
|
|
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
|
-
-
|
|
95
|
+
- bin/multi_queue_bench
|
|
244
96
|
- bin/sidekiq
|
|
245
|
-
- bin/sidekiqctl
|
|
246
97
|
- bin/sidekiqload
|
|
247
|
-
-
|
|
248
|
-
- lib/generators/sidekiq/
|
|
249
|
-
- lib/generators/sidekiq/templates/
|
|
250
|
-
- lib/generators/sidekiq/templates/
|
|
251
|
-
- lib/generators/sidekiq/
|
|
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/
|
|
257
|
-
- lib/sidekiq/
|
|
258
|
-
- lib/sidekiq/
|
|
259
|
-
- lib/sidekiq/
|
|
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/
|
|
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/
|
|
269
|
-
- lib/sidekiq/
|
|
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/
|
|
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/
|
|
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:
|
|
223
|
+
homepage: https://sidekiq.org
|
|
336
224
|
licenses:
|
|
337
225
|
- LGPL-3.0
|
|
338
|
-
metadata:
|
|
339
|
-
|
|
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:
|
|
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
|
-
|
|
355
|
-
|
|
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: []
|
data/.github/contributing.md
DELETED
|
@@ -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.
|
data/.github/issue_template.md
DELETED
|
@@ -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
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
|
-
```
|