sidekiq 6.2.2 → 6.5.5
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.
Potentially problematic release.
This version of sidekiq might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Changes.md +150 -1
- data/LICENSE +3 -3
- data/README.md +9 -4
- data/bin/sidekiq +3 -3
- data/bin/sidekiqload +70 -66
- data/bin/sidekiqmon +1 -1
- data/lib/generators/sidekiq/job_generator.rb +57 -0
- data/lib/generators/sidekiq/templates/{worker.rb.erb → job.rb.erb} +2 -2
- data/lib/generators/sidekiq/templates/{worker_spec.rb.erb → job_spec.rb.erb} +1 -1
- data/lib/generators/sidekiq/templates/{worker_test.rb.erb → job_test.rb.erb} +1 -1
- data/lib/sidekiq/api.rb +232 -94
- data/lib/sidekiq/cli.rb +60 -40
- data/lib/sidekiq/client.rb +46 -66
- data/lib/sidekiq/{util.rb → component.rb} +12 -42
- data/lib/sidekiq/delay.rb +3 -1
- data/lib/sidekiq/extensions/generic_proxy.rb +1 -1
- data/lib/sidekiq/fetch.rb +22 -19
- data/lib/sidekiq/job.rb +8 -3
- data/lib/sidekiq/job_logger.rb +15 -27
- data/lib/sidekiq/job_retry.rb +78 -55
- data/lib/sidekiq/job_util.rb +71 -0
- data/lib/sidekiq/launcher.rb +62 -54
- data/lib/sidekiq/logger.rb +8 -18
- data/lib/sidekiq/manager.rb +35 -34
- data/lib/sidekiq/metrics/deploy.rb +47 -0
- data/lib/sidekiq/metrics/query.rb +153 -0
- data/lib/sidekiq/metrics/shared.rb +94 -0
- data/lib/sidekiq/metrics/tracking.rb +134 -0
- data/lib/sidekiq/middleware/chain.rb +82 -38
- data/lib/sidekiq/middleware/current_attributes.rb +63 -0
- data/lib/sidekiq/middleware/i18n.rb +6 -4
- data/lib/sidekiq/middleware/modules.rb +21 -0
- data/lib/sidekiq/monitor.rb +1 -1
- data/lib/sidekiq/paginator.rb +8 -8
- data/lib/sidekiq/processor.rb +47 -41
- data/lib/sidekiq/rails.rb +22 -4
- data/lib/sidekiq/redis_client_adapter.rb +154 -0
- data/lib/sidekiq/redis_connection.rb +85 -54
- data/lib/sidekiq/ring_buffer.rb +29 -0
- data/lib/sidekiq/scheduled.rb +54 -30
- data/lib/sidekiq/testing/inline.rb +4 -4
- data/lib/sidekiq/testing.rb +37 -36
- data/lib/sidekiq/transaction_aware_client.rb +45 -0
- data/lib/sidekiq/version.rb +1 -1
- data/lib/sidekiq/web/action.rb +3 -3
- data/lib/sidekiq/web/application.rb +25 -9
- data/lib/sidekiq/web/csrf_protection.rb +2 -2
- data/lib/sidekiq/web/helpers.rb +30 -18
- data/lib/sidekiq/web.rb +8 -4
- data/lib/sidekiq/worker.rb +136 -13
- data/lib/sidekiq.rb +114 -31
- data/sidekiq.gemspec +2 -2
- data/web/assets/javascripts/application.js +113 -60
- 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.js +50 -67
- data/web/assets/javascripts/graph.js +16 -0
- data/web/assets/javascripts/metrics.js +262 -0
- data/web/assets/stylesheets/application-dark.css +19 -23
- data/web/assets/stylesheets/application-rtl.css +0 -4
- data/web/assets/stylesheets/application.css +55 -109
- data/web/locales/el.yml +43 -19
- data/web/locales/en.yml +8 -1
- data/web/locales/pt-br.yml +27 -9
- data/web/views/_footer.erb +1 -1
- data/web/views/_nav.erb +1 -1
- data/web/views/_poll_link.erb +2 -5
- data/web/views/_summary.erb +7 -7
- data/web/views/busy.erb +4 -4
- data/web/views/dashboard.erb +9 -8
- data/web/views/layout.erb +1 -1
- data/web/views/metrics.erb +69 -0
- data/web/views/metrics_for_job.erb +87 -0
- data/web/views/queue.erb +14 -10
- data/web/views/queues.erb +1 -1
- metadata +27 -12
- data/lib/generators/sidekiq/worker_generator.rb +0 -57
- data/lib/sidekiq/exception_handler.rb +0 -27
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Perham
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-08-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: redis
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 4.
|
19
|
+
version: 4.5.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 4.
|
26
|
+
version: 4.5.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: connection_pool
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,16 +67,16 @@ files:
|
|
67
67
|
- bin/sidekiq
|
68
68
|
- bin/sidekiqload
|
69
69
|
- bin/sidekiqmon
|
70
|
-
- lib/generators/sidekiq/
|
71
|
-
- lib/generators/sidekiq/templates/
|
72
|
-
- lib/generators/sidekiq/templates/
|
73
|
-
- lib/generators/sidekiq/
|
70
|
+
- lib/generators/sidekiq/job_generator.rb
|
71
|
+
- lib/generators/sidekiq/templates/job.rb.erb
|
72
|
+
- lib/generators/sidekiq/templates/job_spec.rb.erb
|
73
|
+
- lib/generators/sidekiq/templates/job_test.rb.erb
|
74
74
|
- lib/sidekiq.rb
|
75
75
|
- lib/sidekiq/api.rb
|
76
76
|
- lib/sidekiq/cli.rb
|
77
77
|
- lib/sidekiq/client.rb
|
78
|
+
- lib/sidekiq/component.rb
|
78
79
|
- lib/sidekiq/delay.rb
|
79
|
-
- lib/sidekiq/exception_handler.rb
|
80
80
|
- lib/sidekiq/extensions/action_mailer.rb
|
81
81
|
- lib/sidekiq/extensions/active_record.rb
|
82
82
|
- lib/sidekiq/extensions/class_methods.rb
|
@@ -85,22 +85,31 @@ files:
|
|
85
85
|
- lib/sidekiq/job.rb
|
86
86
|
- lib/sidekiq/job_logger.rb
|
87
87
|
- lib/sidekiq/job_retry.rb
|
88
|
+
- lib/sidekiq/job_util.rb
|
88
89
|
- lib/sidekiq/launcher.rb
|
89
90
|
- lib/sidekiq/logger.rb
|
90
91
|
- lib/sidekiq/manager.rb
|
92
|
+
- lib/sidekiq/metrics/deploy.rb
|
93
|
+
- lib/sidekiq/metrics/query.rb
|
94
|
+
- lib/sidekiq/metrics/shared.rb
|
95
|
+
- lib/sidekiq/metrics/tracking.rb
|
91
96
|
- lib/sidekiq/middleware/chain.rb
|
97
|
+
- lib/sidekiq/middleware/current_attributes.rb
|
92
98
|
- lib/sidekiq/middleware/i18n.rb
|
99
|
+
- lib/sidekiq/middleware/modules.rb
|
93
100
|
- lib/sidekiq/monitor.rb
|
94
101
|
- lib/sidekiq/paginator.rb
|
95
102
|
- lib/sidekiq/processor.rb
|
96
103
|
- lib/sidekiq/rails.rb
|
104
|
+
- lib/sidekiq/redis_client_adapter.rb
|
97
105
|
- lib/sidekiq/redis_connection.rb
|
106
|
+
- lib/sidekiq/ring_buffer.rb
|
98
107
|
- lib/sidekiq/scheduled.rb
|
99
108
|
- lib/sidekiq/sd_notify.rb
|
100
109
|
- lib/sidekiq/systemd.rb
|
101
110
|
- lib/sidekiq/testing.rb
|
102
111
|
- lib/sidekiq/testing/inline.rb
|
103
|
-
- lib/sidekiq/
|
112
|
+
- lib/sidekiq/transaction_aware_client.rb
|
104
113
|
- lib/sidekiq/version.rb
|
105
114
|
- lib/sidekiq/web.rb
|
106
115
|
- lib/sidekiq/web/action.rb
|
@@ -115,7 +124,11 @@ files:
|
|
115
124
|
- web/assets/images/logo.png
|
116
125
|
- web/assets/images/status.png
|
117
126
|
- web/assets/javascripts/application.js
|
127
|
+
- web/assets/javascripts/chart.min.js
|
128
|
+
- web/assets/javascripts/chartjs-plugin-annotation.min.js
|
118
129
|
- web/assets/javascripts/dashboard.js
|
130
|
+
- web/assets/javascripts/graph.js
|
131
|
+
- web/assets/javascripts/metrics.js
|
119
132
|
- web/assets/stylesheets/application-dark.css
|
120
133
|
- web/assets/stylesheets/application-rtl.css
|
121
134
|
- web/assets/stylesheets/application.css
|
@@ -160,6 +173,8 @@ files:
|
|
160
173
|
- web/views/dashboard.erb
|
161
174
|
- web/views/dead.erb
|
162
175
|
- web/views/layout.erb
|
176
|
+
- web/views/metrics.erb
|
177
|
+
- web/views/metrics_for_job.erb
|
163
178
|
- web/views/morgue.erb
|
164
179
|
- web/views/queue.erb
|
165
180
|
- web/views/queues.erb
|
@@ -174,7 +189,7 @@ metadata:
|
|
174
189
|
homepage_uri: https://sidekiq.org
|
175
190
|
bug_tracker_uri: https://github.com/mperham/sidekiq/issues
|
176
191
|
documentation_uri: https://github.com/mperham/sidekiq/wiki
|
177
|
-
changelog_uri: https://github.com/mperham/sidekiq/blob/
|
192
|
+
changelog_uri: https://github.com/mperham/sidekiq/blob/main/Changes.md
|
178
193
|
source_code_uri: https://github.com/mperham/sidekiq
|
179
194
|
post_install_message:
|
180
195
|
rdoc_options: []
|
@@ -191,7 +206,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
191
206
|
- !ruby/object:Gem::Version
|
192
207
|
version: '0'
|
193
208
|
requirements: []
|
194
|
-
rubygems_version: 3.
|
209
|
+
rubygems_version: 3.2.32
|
195
210
|
signing_key:
|
196
211
|
specification_version: 4
|
197
212
|
summary: Simple, efficient background processing for Ruby
|
@@ -1,57 +0,0 @@
|
|
1
|
-
require "rails/generators/named_base"
|
2
|
-
|
3
|
-
module Sidekiq
|
4
|
-
module Generators # :nodoc:
|
5
|
-
class WorkerGenerator < ::Rails::Generators::NamedBase # :nodoc:
|
6
|
-
desc "This generator creates a Sidekiq Worker in app/workers and a corresponding test"
|
7
|
-
|
8
|
-
check_class_collision suffix: "Worker"
|
9
|
-
|
10
|
-
def self.default_generator_root
|
11
|
-
File.dirname(__FILE__)
|
12
|
-
end
|
13
|
-
|
14
|
-
def create_worker_file
|
15
|
-
template "worker.rb.erb", File.join("app/workers", class_path, "#{file_name}_worker.rb")
|
16
|
-
end
|
17
|
-
|
18
|
-
def create_test_file
|
19
|
-
return unless test_framework
|
20
|
-
|
21
|
-
if test_framework == :rspec
|
22
|
-
create_worker_spec
|
23
|
-
else
|
24
|
-
create_worker_test
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
private
|
29
|
-
|
30
|
-
def create_worker_spec
|
31
|
-
template_file = File.join(
|
32
|
-
"spec/workers",
|
33
|
-
class_path,
|
34
|
-
"#{file_name}_worker_spec.rb"
|
35
|
-
)
|
36
|
-
template "worker_spec.rb.erb", template_file
|
37
|
-
end
|
38
|
-
|
39
|
-
def create_worker_test
|
40
|
-
template_file = File.join(
|
41
|
-
"test/workers",
|
42
|
-
class_path,
|
43
|
-
"#{file_name}_worker_test.rb"
|
44
|
-
)
|
45
|
-
template "worker_test.rb.erb", template_file
|
46
|
-
end
|
47
|
-
|
48
|
-
def file_name
|
49
|
-
@_file_name ||= super.sub(/_?worker\z/i, "")
|
50
|
-
end
|
51
|
-
|
52
|
-
def test_framework
|
53
|
-
::Rails.application.config.generators.options[:rails][:test_framework]
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "sidekiq"
|
4
|
-
|
5
|
-
module Sidekiq
|
6
|
-
module ExceptionHandler
|
7
|
-
class Logger
|
8
|
-
def call(ex, ctx)
|
9
|
-
Sidekiq.logger.warn(Sidekiq.dump_json(ctx)) unless ctx.empty?
|
10
|
-
Sidekiq.logger.warn("#{ex.class.name}: #{ex.message}")
|
11
|
-
Sidekiq.logger.warn(ex.backtrace.join("\n")) unless ex.backtrace.nil?
|
12
|
-
end
|
13
|
-
|
14
|
-
Sidekiq.error_handlers << Sidekiq::ExceptionHandler::Logger.new
|
15
|
-
end
|
16
|
-
|
17
|
-
def handle_exception(ex, ctx = {})
|
18
|
-
Sidekiq.error_handlers.each do |handler|
|
19
|
-
handler.call(ex, ctx)
|
20
|
-
rescue => ex
|
21
|
-
Sidekiq.logger.error "!!! ERROR HANDLER THREW AN ERROR !!!"
|
22
|
-
Sidekiq.logger.error ex
|
23
|
-
Sidekiq.logger.error ex.backtrace.join("\n") unless ex.backtrace.nil?
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|