sidekiq 6.1.1 → 6.1.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of sidekiq might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.github/ISSUE_TEMPLATE/bug_report.md +20 -0
- data/.github/workflows/ci.yml +41 -0
- data/Changes.md +9 -1
- data/Ent-Changes.md +6 -0
- data/Gemfile.lock +78 -94
- data/Pro-Changes.md +10 -0
- data/README.md +1 -2
- data/lib/sidekiq.rb +1 -1
- data/lib/sidekiq/cli.rb +1 -1
- data/lib/sidekiq/extensions/action_mailer.rb +3 -2
- data/lib/sidekiq/extensions/active_record.rb +1 -1
- data/lib/sidekiq/manager.rb +1 -1
- data/lib/sidekiq/middleware/chain.rb +1 -1
- data/lib/sidekiq/version.rb +1 -1
- data/lib/sidekiq/web/application.rb +1 -3
- data/lib/sidekiq/web/csrf_protection.rb +7 -2
- data/web/assets/stylesheets/application-dark.css +42 -32
- data/web/assets/stylesheets/application.css +2 -6
- data/web/locales/ru.yml +4 -0
- data/web/views/busy.erb +2 -2
- data/web/views/morgue.erb +1 -1
- data/web/views/queues.erb +1 -1
- data/web/views/retries.erb +1 -1
- data/web/views/scheduled.erb +1 -1
- metadata +7 -7
- data/.circleci/config.yml +0 -71
- data/.github/issue_template.md +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a80310735fb458e7332a5ecc86072248e0777e1951f77f14965c06313c5b2f8
|
4
|
+
data.tar.gz: bfd09dc57c4506ca9c4d74dd9a38e88ef18700aafaf92814d662c6df4e4b2e5b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c0e416fe575874c2051e88c64a6cbb30ad2ba4929ca33487ca1323b1963101d3d08ed43b8edbe874bccfa677521b0745baf589b451c7c56ff41b7bc70ee4f88d
|
7
|
+
data.tar.gz: 4d1cd6d03768f9844bd8edd9bdb545a743084322f4edc01682e04b0990b0fb6aa3f1c6ad4f9a87c1b810a07e03b08eae0405ad2291b42d58eebb257bed7a60f4
|
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
name: Bug report
|
3
|
+
about: Create a report to help us improve
|
4
|
+
title: ''
|
5
|
+
labels: ''
|
6
|
+
assignees: ''
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
Ruby version:
|
11
|
+
Rails version:
|
12
|
+
Sidekiq / Pro / Enterprise version(s):
|
13
|
+
|
14
|
+
Please include your initializer, sidekiq.yml, and any error message with the full backtrace.
|
15
|
+
|
16
|
+
If you are using an old version, have you checked the changelogs to see if your issue has been fixed in a later version?
|
17
|
+
|
18
|
+
https://github.com/mperham/sidekiq/blob/master/Changes.md
|
19
|
+
https://github.com/mperham/sidekiq/blob/master/Pro-Changes.md
|
20
|
+
https://github.com/mperham/sidekiq/blob/master/Ent-Changes.md
|
@@ -0,0 +1,41 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
test:
|
11
|
+
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
|
14
|
+
strategy:
|
15
|
+
fail-fast: false
|
16
|
+
matrix:
|
17
|
+
ruby: [2.5, 2.6, 2.7]
|
18
|
+
services:
|
19
|
+
redis:
|
20
|
+
image: redis
|
21
|
+
options: >-
|
22
|
+
--health-cmd "redis-cli ping"
|
23
|
+
--health-interval 10s
|
24
|
+
--health-timeout 5s
|
25
|
+
--health-retries 5
|
26
|
+
ports:
|
27
|
+
- 6379:6379
|
28
|
+
|
29
|
+
steps:
|
30
|
+
- uses: actions/checkout@v2
|
31
|
+
- name: Set up Ruby
|
32
|
+
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
|
33
|
+
# change this to (see https://github.com/ruby/setup-ruby#versioning):
|
34
|
+
uses: ruby/setup-ruby@v1
|
35
|
+
with:
|
36
|
+
bundler-cache: true
|
37
|
+
ruby-version: ${{ matrix.ruby }}
|
38
|
+
- name: Install dependencies
|
39
|
+
run: bundle install
|
40
|
+
- name: Run tests
|
41
|
+
run: bundle exec rake
|
data/Changes.md
CHANGED
@@ -2,7 +2,15 @@
|
|
2
2
|
|
3
3
|
[Sidekiq Changes](https://github.com/mperham/sidekiq/blob/master/Changes.md) | [Sidekiq Pro Changes](https://github.com/mperham/sidekiq/blob/master/Pro-Changes.md) | [Sidekiq Enterprise Changes](https://github.com/mperham/sidekiq/blob/master/Ent-Changes.md)
|
4
4
|
|
5
|
-
|
5
|
+
6.1.2
|
6
|
+
---------
|
7
|
+
|
8
|
+
- Improve readability in dark mode Web UI [#4674]
|
9
|
+
- Fix Web UI crash with corrupt session [#4672]
|
10
|
+
- Allow middleware to yield arguments [#4673, @eugeneius]
|
11
|
+
- Migrate CI from CircleCI to GitHub Actions [#4677]
|
12
|
+
|
13
|
+
6.1.1
|
6
14
|
---------
|
7
15
|
|
8
16
|
- Jobs are now sorted by age in the Busy Workers table. [#4641]
|
data/Ent-Changes.md
CHANGED
@@ -4,6 +4,12 @@
|
|
4
4
|
|
5
5
|
Please see [sidekiq.org](https://sidekiq.org) for more details and how to buy.
|
6
6
|
|
7
|
+
2.1.2
|
8
|
+
-------------
|
9
|
+
|
10
|
+
- The Sidekiq Pro and Enterprise gem servers now `bundle install` much faster with **Bundler 2.2+** [#4158]
|
11
|
+
- Now that ActiveJobs support `sidekiq_options`, add support for uniqueness in AJs [#4667]
|
12
|
+
|
7
13
|
2.1.1
|
8
14
|
-------------
|
9
15
|
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
sidekiq (6.1.
|
4
|
+
sidekiq (6.1.2)
|
5
5
|
connection_pool (>= 2.2.2)
|
6
6
|
rack (~> 2.0)
|
7
7
|
redis (>= 4.2.0)
|
@@ -9,61 +9,56 @@ PATH
|
|
9
9
|
GEM
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
|
-
actioncable (6.0.3.
|
13
|
-
actionpack (= 6.0.3.
|
12
|
+
actioncable (6.0.3.2)
|
13
|
+
actionpack (= 6.0.3.2)
|
14
14
|
nio4r (~> 2.0)
|
15
15
|
websocket-driver (>= 0.6.1)
|
16
|
-
actionmailbox (6.0.3.
|
17
|
-
actionpack (= 6.0.3.
|
18
|
-
activejob (= 6.0.3.
|
19
|
-
activerecord (= 6.0.3.
|
20
|
-
activestorage (= 6.0.3.
|
21
|
-
activesupport (= 6.0.3.
|
16
|
+
actionmailbox (6.0.3.2)
|
17
|
+
actionpack (= 6.0.3.2)
|
18
|
+
activejob (= 6.0.3.2)
|
19
|
+
activerecord (= 6.0.3.2)
|
20
|
+
activestorage (= 6.0.3.2)
|
21
|
+
activesupport (= 6.0.3.2)
|
22
22
|
mail (>= 2.7.1)
|
23
|
-
actionmailer (6.0.3.
|
24
|
-
actionpack (= 6.0.3.
|
25
|
-
actionview (= 6.0.3.
|
26
|
-
activejob (= 6.0.3.
|
23
|
+
actionmailer (6.0.3.2)
|
24
|
+
actionpack (= 6.0.3.2)
|
25
|
+
actionview (= 6.0.3.2)
|
26
|
+
activejob (= 6.0.3.2)
|
27
27
|
mail (~> 2.5, >= 2.5.4)
|
28
28
|
rails-dom-testing (~> 2.0)
|
29
|
-
actionpack (6.0.3.
|
30
|
-
actionview (= 6.0.3.
|
31
|
-
activesupport (= 6.0.3.
|
29
|
+
actionpack (6.0.3.2)
|
30
|
+
actionview (= 6.0.3.2)
|
31
|
+
activesupport (= 6.0.3.2)
|
32
32
|
rack (~> 2.0, >= 2.0.8)
|
33
33
|
rack-test (>= 0.6.3)
|
34
34
|
rails-dom-testing (~> 2.0)
|
35
35
|
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
36
|
-
actiontext (6.0.3.
|
37
|
-
actionpack (= 6.0.3.
|
38
|
-
activerecord (= 6.0.3.
|
39
|
-
activestorage (= 6.0.3.
|
40
|
-
activesupport (= 6.0.3.
|
36
|
+
actiontext (6.0.3.2)
|
37
|
+
actionpack (= 6.0.3.2)
|
38
|
+
activerecord (= 6.0.3.2)
|
39
|
+
activestorage (= 6.0.3.2)
|
40
|
+
activesupport (= 6.0.3.2)
|
41
41
|
nokogiri (>= 1.8.5)
|
42
|
-
actionview (6.0.3.
|
43
|
-
activesupport (= 6.0.3.
|
42
|
+
actionview (6.0.3.2)
|
43
|
+
activesupport (= 6.0.3.2)
|
44
44
|
builder (~> 3.1)
|
45
45
|
erubi (~> 1.4)
|
46
46
|
rails-dom-testing (~> 2.0)
|
47
47
|
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
48
|
-
activejob (6.0.3.
|
49
|
-
activesupport (= 6.0.3.
|
48
|
+
activejob (6.0.3.2)
|
49
|
+
activesupport (= 6.0.3.2)
|
50
50
|
globalid (>= 0.3.6)
|
51
|
-
activemodel (6.0.3.
|
52
|
-
activesupport (= 6.0.3.
|
53
|
-
activerecord (6.0.3.
|
54
|
-
activemodel (= 6.0.3.
|
55
|
-
activesupport (= 6.0.3.
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
activerecord
|
60
|
-
jdbc-sqlite3 (~> 3.8, < 3.30)
|
61
|
-
activestorage (6.0.3.1)
|
62
|
-
actionpack (= 6.0.3.1)
|
63
|
-
activejob (= 6.0.3.1)
|
64
|
-
activerecord (= 6.0.3.1)
|
51
|
+
activemodel (6.0.3.2)
|
52
|
+
activesupport (= 6.0.3.2)
|
53
|
+
activerecord (6.0.3.2)
|
54
|
+
activemodel (= 6.0.3.2)
|
55
|
+
activesupport (= 6.0.3.2)
|
56
|
+
activestorage (6.0.3.2)
|
57
|
+
actionpack (= 6.0.3.2)
|
58
|
+
activejob (= 6.0.3.2)
|
59
|
+
activerecord (= 6.0.3.2)
|
65
60
|
marcel (~> 0.3.1)
|
66
|
-
activesupport (6.0.3.
|
61
|
+
activesupport (6.0.3.2)
|
67
62
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
68
63
|
i18n (>= 0.7, < 2)
|
69
64
|
minitest (~> 5.1)
|
@@ -71,11 +66,10 @@ GEM
|
|
71
66
|
zeitwerk (~> 2.2, >= 2.2.2)
|
72
67
|
ast (2.4.1)
|
73
68
|
builder (3.2.4)
|
74
|
-
codecov (0.
|
69
|
+
codecov (0.2.8)
|
75
70
|
json
|
76
71
|
simplecov
|
77
|
-
|
78
|
-
concurrent-ruby (1.1.6)
|
72
|
+
concurrent-ruby (1.1.7)
|
79
73
|
connection_pool (2.2.3)
|
80
74
|
crass (1.0.6)
|
81
75
|
docile (1.3.2)
|
@@ -83,87 +77,82 @@ GEM
|
|
83
77
|
globalid (0.4.2)
|
84
78
|
activesupport (>= 4.2.0)
|
85
79
|
hiredis (0.6.3)
|
86
|
-
|
87
|
-
i18n (1.8.2)
|
80
|
+
i18n (1.8.5)
|
88
81
|
concurrent-ruby (~> 1.0)
|
89
|
-
|
90
|
-
|
91
|
-
json (2.3.0-java)
|
92
|
-
loofah (2.5.0)
|
82
|
+
json (2.3.1)
|
83
|
+
loofah (2.7.0)
|
93
84
|
crass (~> 1.0.2)
|
94
85
|
nokogiri (>= 1.5.9)
|
95
86
|
mail (2.7.1)
|
96
87
|
mini_mime (>= 0.1.1)
|
97
88
|
marcel (0.3.3)
|
98
89
|
mimemagic (~> 0.3.2)
|
99
|
-
method_source (0.
|
90
|
+
method_source (1.0.0)
|
100
91
|
mimemagic (0.3.5)
|
101
92
|
mini_mime (1.0.2)
|
102
93
|
mini_portile2 (2.4.0)
|
103
94
|
minitest (5.14.1)
|
104
95
|
nio4r (2.5.2)
|
105
|
-
|
106
|
-
nokogiri (1.10.9)
|
96
|
+
nokogiri (1.10.10)
|
107
97
|
mini_portile2 (~> 2.4.0)
|
108
|
-
nokogiri (1.10.9-java)
|
109
98
|
parallel (1.19.2)
|
110
|
-
parser (2.7.1.
|
111
|
-
ast (~> 2.4.
|
112
|
-
rack (2.2.
|
99
|
+
parser (2.7.1.4)
|
100
|
+
ast (~> 2.4.1)
|
101
|
+
rack (2.2.3)
|
113
102
|
rack-test (1.1.0)
|
114
103
|
rack (>= 1.0, < 3)
|
115
|
-
rails (6.0.3.
|
116
|
-
actioncable (= 6.0.3.
|
117
|
-
actionmailbox (= 6.0.3.
|
118
|
-
actionmailer (= 6.0.3.
|
119
|
-
actionpack (= 6.0.3.
|
120
|
-
actiontext (= 6.0.3.
|
121
|
-
actionview (= 6.0.3.
|
122
|
-
activejob (= 6.0.3.
|
123
|
-
activemodel (= 6.0.3.
|
124
|
-
activerecord (= 6.0.3.
|
125
|
-
activestorage (= 6.0.3.
|
126
|
-
activesupport (= 6.0.3.
|
104
|
+
rails (6.0.3.2)
|
105
|
+
actioncable (= 6.0.3.2)
|
106
|
+
actionmailbox (= 6.0.3.2)
|
107
|
+
actionmailer (= 6.0.3.2)
|
108
|
+
actionpack (= 6.0.3.2)
|
109
|
+
actiontext (= 6.0.3.2)
|
110
|
+
actionview (= 6.0.3.2)
|
111
|
+
activejob (= 6.0.3.2)
|
112
|
+
activemodel (= 6.0.3.2)
|
113
|
+
activerecord (= 6.0.3.2)
|
114
|
+
activestorage (= 6.0.3.2)
|
115
|
+
activesupport (= 6.0.3.2)
|
127
116
|
bundler (>= 1.3.0)
|
128
|
-
railties (= 6.0.3.
|
117
|
+
railties (= 6.0.3.2)
|
129
118
|
sprockets-rails (>= 2.0.0)
|
130
119
|
rails-dom-testing (2.0.3)
|
131
120
|
activesupport (>= 4.2.0)
|
132
121
|
nokogiri (>= 1.6)
|
133
122
|
rails-html-sanitizer (1.3.0)
|
134
123
|
loofah (~> 2.3)
|
135
|
-
railties (6.0.3.
|
136
|
-
actionpack (= 6.0.3.
|
137
|
-
activesupport (= 6.0.3.
|
124
|
+
railties (6.0.3.2)
|
125
|
+
actionpack (= 6.0.3.2)
|
126
|
+
activesupport (= 6.0.3.2)
|
138
127
|
method_source
|
139
128
|
rake (>= 0.8.7)
|
140
129
|
thor (>= 0.20.3, < 2.0)
|
141
130
|
rainbow (3.0.0)
|
142
131
|
rake (13.0.1)
|
143
|
-
redis (4.2.
|
144
|
-
redis-namespace (1.
|
132
|
+
redis (4.2.1)
|
133
|
+
redis-namespace (1.8.0)
|
145
134
|
redis (>= 3.0.4)
|
146
135
|
regexp_parser (1.7.1)
|
147
136
|
rexml (3.2.4)
|
148
|
-
rubocop (0.
|
137
|
+
rubocop (0.89.1)
|
149
138
|
parallel (~> 1.10)
|
150
|
-
parser (>= 2.7.
|
139
|
+
parser (>= 2.7.1.1)
|
151
140
|
rainbow (>= 2.2.2, < 4.0)
|
152
141
|
regexp_parser (>= 1.7)
|
153
142
|
rexml
|
154
|
-
rubocop-ast (>= 0.0.
|
143
|
+
rubocop-ast (>= 0.3.0, < 1.0)
|
155
144
|
ruby-progressbar (~> 1.7)
|
156
145
|
unicode-display_width (>= 1.4.0, < 2.0)
|
157
|
-
rubocop-ast (0.0
|
158
|
-
parser (>= 2.7.
|
159
|
-
rubocop-performance (1.
|
160
|
-
rubocop (>= 0.
|
146
|
+
rubocop-ast (0.3.0)
|
147
|
+
parser (>= 2.7.1.4)
|
148
|
+
rubocop-performance (1.7.1)
|
149
|
+
rubocop (>= 0.82.0)
|
161
150
|
ruby-progressbar (1.10.1)
|
162
|
-
simplecov (0.
|
151
|
+
simplecov (0.19.0)
|
163
152
|
docile (~> 1.1)
|
164
153
|
simplecov-html (~> 0.11)
|
165
154
|
simplecov-html (0.12.2)
|
166
|
-
sprockets (4.0.
|
155
|
+
sprockets (4.0.2)
|
167
156
|
concurrent-ruby (~> 1.0)
|
168
157
|
rack (> 1, < 3)
|
169
158
|
sprockets-rails (3.2.1)
|
@@ -171,26 +160,21 @@ GEM
|
|
171
160
|
activesupport (>= 4.0)
|
172
161
|
sprockets (>= 3.0.0)
|
173
162
|
sqlite3 (1.4.2)
|
174
|
-
standard (0.
|
175
|
-
rubocop (~> 0.
|
176
|
-
rubocop-performance (~> 1.
|
163
|
+
standard (0.5.2)
|
164
|
+
rubocop (~> 0.89.1)
|
165
|
+
rubocop-performance (~> 1.7.1)
|
177
166
|
thor (1.0.1)
|
178
167
|
thread_safe (0.3.6)
|
179
|
-
thread_safe (0.3.6-java)
|
180
168
|
toxiproxy (1.0.3)
|
181
169
|
tzinfo (1.2.7)
|
182
170
|
thread_safe (~> 0.1)
|
183
171
|
unicode-display_width (1.7.0)
|
184
|
-
|
185
|
-
websocket-driver (0.7.2)
|
172
|
+
websocket-driver (0.7.3)
|
186
173
|
websocket-extensions (>= 0.1.0)
|
187
|
-
websocket-
|
188
|
-
|
189
|
-
websocket-extensions (0.1.4)
|
190
|
-
zeitwerk (2.3.0)
|
174
|
+
websocket-extensions (0.1.5)
|
175
|
+
zeitwerk (2.4.0)
|
191
176
|
|
192
177
|
PLATFORMS
|
193
|
-
java
|
194
178
|
ruby
|
195
179
|
|
196
180
|
DEPENDENCIES
|
data/Pro-Changes.md
CHANGED
@@ -4,6 +4,16 @@
|
|
4
4
|
|
5
5
|
Please see [sidekiq.org](https://sidekiq.org/) for more details and how to buy.
|
6
6
|
|
7
|
+
5.2.0
|
8
|
+
---------
|
9
|
+
|
10
|
+
- The Sidekiq Pro and Enterprise gem servers now `bundle install` much faster with **Bundler 2.2+** [#4158]
|
11
|
+
- Fix issue with reliable push and multiple shards [#4669]
|
12
|
+
- Fix Pro memory leak due to fetch refactoring in Sidekiq 6.1 [#4652]
|
13
|
+
- Gracefully handle poison pill jobs [#4633]
|
14
|
+
- Remove support for multi-shard batches [#4642]
|
15
|
+
- Rename `Sidekiq::Rack::BatchStatus` to `Sidekiq::Pro::BatchStatus` [#4655]
|
16
|
+
|
7
17
|
5.1.1
|
8
18
|
---------
|
9
19
|
|
data/README.md
CHANGED
@@ -2,8 +2,7 @@ Sidekiq
|
|
2
2
|
==============
|
3
3
|
|
4
4
|
[![Gem Version](https://badge.fury.io/rb/sidekiq.svg)](https://rubygems.org/gems/sidekiq)
|
5
|
-
|
6
|
-
[![Build Status](https://circleci.com/gh/mperham/sidekiq/tree/master.svg?style=svg)](https://circleci.com/gh/mperham/sidekiq/tree/master)
|
5
|
+
![Build](https://github.com/mperham/sidekiq/workflows/CI/badge.svg)
|
7
6
|
|
8
7
|
Simple, efficient background processing for Ruby.
|
9
8
|
|
data/lib/sidekiq.rb
CHANGED
data/lib/sidekiq/cli.rb
CHANGED
@@ -44,7 +44,7 @@ module Sidekiq
|
|
44
44
|
self_read, self_write = IO.pipe
|
45
45
|
sigs = %w[INT TERM TTIN TSTP]
|
46
46
|
# USR1 and USR2 don't work on the JVM
|
47
|
-
sigs << "USR2"
|
47
|
+
sigs << "USR2" if Sidekiq.pro? && !jruby?
|
48
48
|
sigs.each do |sig|
|
49
49
|
trap sig do
|
50
50
|
self_write.puts(sig)
|
@@ -5,9 +5,10 @@ require "sidekiq/extensions/generic_proxy"
|
|
5
5
|
module Sidekiq
|
6
6
|
module Extensions
|
7
7
|
##
|
8
|
-
# Adds
|
9
|
-
# delivery to Sidekiq.
|
8
|
+
# Adds +delay+, +delay_for+ and +delay_until+ methods to ActionMailer to offload arbitrary email
|
9
|
+
# delivery to Sidekiq.
|
10
10
|
#
|
11
|
+
# @example
|
11
12
|
# UserMailer.delay.send_welcome_email(new_user)
|
12
13
|
# UserMailer.delay_for(5.days).send_welcome_email(new_user)
|
13
14
|
# UserMailer.delay_until(5.days.from_now).send_welcome_email(new_user)
|
@@ -5,7 +5,7 @@ require "sidekiq/extensions/generic_proxy"
|
|
5
5
|
module Sidekiq
|
6
6
|
module Extensions
|
7
7
|
##
|
8
|
-
# Adds
|
8
|
+
# Adds +delay+, +delay_for+ and +delay_until+ methods to ActiveRecord to offload instance method
|
9
9
|
# execution to Sidekiq.
|
10
10
|
#
|
11
11
|
# @example
|
data/lib/sidekiq/manager.rb
CHANGED
data/lib/sidekiq/version.rb
CHANGED
@@ -298,7 +298,7 @@ module Sidekiq
|
|
298
298
|
self.class.run_afters(app, action)
|
299
299
|
end
|
300
300
|
|
301
|
-
|
301
|
+
case resp
|
302
302
|
when Array
|
303
303
|
# redirects go here
|
304
304
|
resp
|
@@ -313,8 +313,6 @@ module Sidekiq
|
|
313
313
|
# we'll let Rack calculate Content-Length for us.
|
314
314
|
[200, headers, [resp]]
|
315
315
|
end
|
316
|
-
|
317
|
-
resp
|
318
316
|
end
|
319
317
|
|
320
318
|
def self.helpers(mod = nil, &block)
|
@@ -72,7 +72,7 @@ module Sidekiq
|
|
72
72
|
def accept?(env)
|
73
73
|
return true if safe?(env)
|
74
74
|
|
75
|
-
giventoken = Rack::Request.new(env).params["authenticity_token"]
|
75
|
+
giventoken = ::Rack::Request.new(env).params["authenticity_token"]
|
76
76
|
valid_token?(env, giventoken)
|
77
77
|
end
|
78
78
|
|
@@ -90,6 +90,11 @@ module Sidekiq
|
|
90
90
|
end
|
91
91
|
|
92
92
|
sess = session(env)
|
93
|
+
|
94
|
+
# Checks that Rack::Session::Cookie did not return empty session
|
95
|
+
# object in case the digest verification failed
|
96
|
+
return false if sess.empty?
|
97
|
+
|
93
98
|
localtoken = sess[:csrf]
|
94
99
|
|
95
100
|
# Rotate the session token after every use
|
@@ -138,7 +143,7 @@ module Sidekiq
|
|
138
143
|
end
|
139
144
|
|
140
145
|
def compare_with_real_token(token, local)
|
141
|
-
Rack::Utils.secure_compare(token.to_s, decode_token(local).to_s)
|
146
|
+
::Rack::Utils.secure_compare(token.to_s, decode_token(local).to_s)
|
142
147
|
end
|
143
148
|
|
144
149
|
def decode_token(token)
|
@@ -1,34 +1,44 @@
|
|
1
1
|
html, body {
|
2
|
-
background-color: #
|
3
|
-
color: #
|
2
|
+
background-color: #333 !important;
|
3
|
+
color: #ddd;
|
4
4
|
}
|
5
5
|
|
6
6
|
a,
|
7
7
|
.title,
|
8
8
|
.summary_bar ul .count,
|
9
|
+
span.current-interval,
|
9
10
|
.navbar .navbar-brand {
|
10
|
-
color: #
|
11
|
+
color: #c04;
|
12
|
+
}
|
13
|
+
|
14
|
+
.history-graph + .active,
|
15
|
+
.beacon .dot {
|
16
|
+
background-color: #c04;
|
11
17
|
}
|
12
18
|
|
13
19
|
.navbar .navbar-brand:hover {
|
14
|
-
color: #
|
20
|
+
color: #ddd;
|
15
21
|
}
|
16
22
|
|
17
23
|
.navbar .navbar-brand .status {
|
18
|
-
color: #
|
24
|
+
color: #ddd;
|
25
|
+
}
|
26
|
+
|
27
|
+
.navbar-default .navbar-nav > li > a {
|
28
|
+
color: #ddd;
|
19
29
|
}
|
20
30
|
|
21
31
|
.navbar-inverse {
|
22
|
-
background-color: #
|
23
|
-
border-color: #
|
32
|
+
background-color: #222;
|
33
|
+
border-color: #555;
|
24
34
|
}
|
25
35
|
|
26
|
-
table
|
27
|
-
background-color: #
|
36
|
+
table {
|
37
|
+
background-color: #282828;
|
28
38
|
}
|
29
39
|
|
30
40
|
.table-striped > tbody > tr:nth-of-type(odd) {
|
31
|
-
background-color: #
|
41
|
+
background-color: #333;
|
32
42
|
}
|
33
43
|
|
34
44
|
.table-bordered,
|
@@ -38,27 +48,27 @@ table.table-white {
|
|
38
48
|
.table-bordered > tfoot > tr > th,
|
39
49
|
.table-bordered > thead > tr > td,
|
40
50
|
.table-bordered > thead > tr > th {
|
41
|
-
border: 1px solid #
|
51
|
+
border: 1px solid #555;
|
42
52
|
}
|
43
53
|
|
44
54
|
.table-hover > tbody > tr:hover {
|
45
|
-
background-color: #
|
55
|
+
background-color: #444;
|
46
56
|
}
|
47
57
|
|
48
58
|
.alert {
|
49
59
|
border: none;
|
50
|
-
color: #
|
60
|
+
color: #ddd;
|
51
61
|
}
|
52
62
|
|
53
63
|
.alert-success {
|
54
|
-
background-color: #
|
64
|
+
background-color: #484;
|
55
65
|
}
|
56
66
|
|
57
67
|
a:link,
|
58
68
|
a:active,
|
59
69
|
a:hover,
|
60
70
|
a:visited {
|
61
|
-
color: #
|
71
|
+
color: #ddd;
|
62
72
|
}
|
63
73
|
|
64
74
|
a.btn {
|
@@ -66,8 +76,8 @@ a.btn {
|
|
66
76
|
}
|
67
77
|
|
68
78
|
.summary_bar .summary {
|
69
|
-
background-color: #
|
70
|
-
border: 1px solid #
|
79
|
+
background-color: #222;
|
80
|
+
border: 1px solid #555;
|
71
81
|
|
72
82
|
-webkit-box-shadow: 0 0 5px rgba(255, 255, 255, 0.1);
|
73
83
|
-moz-box-shadow: 0 0 5px rgba(255, 255, 255, 0.1);
|
@@ -75,27 +85,27 @@ a.btn {
|
|
75
85
|
}
|
76
86
|
|
77
87
|
.navbar-default {
|
78
|
-
background-color: #
|
79
|
-
border-color: #
|
88
|
+
background-color: #222;
|
89
|
+
border-color: #555;
|
80
90
|
}
|
81
91
|
|
82
92
|
.navbar-default .navbar-nav > .active > a,
|
83
93
|
.navbar-default .navbar-nav > .active > a:focus,
|
84
94
|
.navbar-default .navbar-nav > .active > a:hover {
|
85
|
-
color: #
|
86
|
-
background-color: #
|
95
|
+
color: #ddd;
|
96
|
+
background-color: #333;
|
87
97
|
}
|
88
98
|
|
89
99
|
.navbar-default .navbar-nav > li > a:hover {
|
90
|
-
color: #
|
100
|
+
color: #ddd;
|
91
101
|
}
|
92
102
|
|
93
103
|
.pagination > li > a,
|
94
104
|
.pagination > li > a:hover,
|
95
105
|
.pagination > li > span {
|
96
|
-
color: #
|
97
|
-
background-color: #
|
98
|
-
border-color: #
|
106
|
+
color: #ddd;
|
107
|
+
background-color: #333;
|
108
|
+
border-color: #555;
|
99
109
|
}
|
100
110
|
.pagination > .disabled > a,
|
101
111
|
.pagination > .disabled > a:focus,
|
@@ -103,9 +113,9 @@ a.btn {
|
|
103
113
|
.pagination > .disabled > span,
|
104
114
|
.pagination > .disabled > span:focus,
|
105
115
|
.pagination > .disabled > span:hover {
|
106
|
-
color: #
|
107
|
-
background-color: #
|
108
|
-
border-color: #
|
116
|
+
color: #ddd;
|
117
|
+
background-color: #333;
|
118
|
+
border-color: #555;
|
109
119
|
}
|
110
120
|
|
111
121
|
.stat {
|
@@ -113,11 +123,11 @@ a.btn {
|
|
113
123
|
}
|
114
124
|
|
115
125
|
#live-poll {
|
116
|
-
color: #
|
126
|
+
color: #ddd;
|
117
127
|
}
|
118
128
|
|
119
129
|
.btn-warn {
|
120
|
-
color: #
|
130
|
+
color: #444;
|
121
131
|
}
|
122
132
|
|
123
133
|
.rickshaw_graph .detail {
|
@@ -128,6 +138,6 @@ a.btn {
|
|
128
138
|
}
|
129
139
|
|
130
140
|
.rickshaw_graph .y_ticks.glow text {
|
131
|
-
fill: #
|
132
|
-
color: #
|
141
|
+
fill: #ddd;
|
142
|
+
color: #ddd;
|
133
143
|
}
|
@@ -177,10 +177,6 @@ header.row .pagination {
|
|
177
177
|
overflow: overlay;
|
178
178
|
}
|
179
179
|
|
180
|
-
table.table-white {
|
181
|
-
background-color: #fff;
|
182
|
-
}
|
183
|
-
|
184
180
|
.queues form {
|
185
181
|
margin: 0;
|
186
182
|
}
|
@@ -762,7 +758,7 @@ div.interval-slider input {
|
|
762
758
|
font-family: Arial, sans-serif;
|
763
759
|
border-radius: 3px;
|
764
760
|
padding: 6px;
|
765
|
-
opacity: .
|
761
|
+
opacity: .7;
|
766
762
|
border: 1px solid #e0e0e0;
|
767
763
|
font-size: 12px;
|
768
764
|
position: absolute;
|
@@ -977,7 +973,7 @@ div.interval-slider input {
|
|
977
973
|
}
|
978
974
|
.rickshaw_graph .y_ticks text,
|
979
975
|
.rickshaw_graph .x_ticks_d3 text {
|
980
|
-
opacity: .
|
976
|
+
opacity: .7;
|
981
977
|
font-size: 12px;
|
982
978
|
pointer-events: none
|
983
979
|
}
|
data/web/locales/ru.yml
CHANGED
@@ -38,6 +38,7 @@ ru:
|
|
38
38
|
AreYouSure: Вы уверены?
|
39
39
|
DeleteAll: Удалить все
|
40
40
|
RetryAll: Повторить все
|
41
|
+
KillAll: Убить всё
|
41
42
|
NoRetriesFound: Нет попыток
|
42
43
|
Error: Ошибка
|
43
44
|
ErrorClass: Класс ошибки
|
@@ -76,3 +77,6 @@ ru:
|
|
76
77
|
NotYetEnqueued: Пока не в очереди
|
77
78
|
CreatedAt: Создан
|
78
79
|
BackToApp: Назад
|
80
|
+
Latency: Задержка
|
81
|
+
Pause: Пауза
|
82
|
+
Unpause: Возобновить
|
data/web/views/busy.erb
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
</div>
|
15
15
|
|
16
16
|
<div class="table_container">
|
17
|
-
<table class="processes table table-hover table-bordered table-striped
|
17
|
+
<table class="processes table table-hover table-bordered table-striped">
|
18
18
|
<thead>
|
19
19
|
<th><%= t('Name') %></th>
|
20
20
|
<th><%= t('Started') %></th>
|
@@ -68,7 +68,7 @@
|
|
68
68
|
</div>
|
69
69
|
|
70
70
|
<div class="table_container">
|
71
|
-
<table class="workers table table-hover table-bordered table-striped
|
71
|
+
<table class="workers table table-hover table-bordered table-striped">
|
72
72
|
<thead>
|
73
73
|
<th><%= t('Process') %></th>
|
74
74
|
<th><%= t('TID') %></th>
|
data/web/views/morgue.erb
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
<form action="<%= root_path %>morgue" method="post">
|
15
15
|
<%= csrf_tag %>
|
16
16
|
<div class="table_container">
|
17
|
-
<table class="table table-striped table-bordered
|
17
|
+
<table class="table table-striped table-bordered">
|
18
18
|
<thead>
|
19
19
|
<tr>
|
20
20
|
<th class="table-checkbox checkbox-column">
|
data/web/views/queues.erb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
<h3><%= t('Queues') %></h3>
|
2
2
|
|
3
3
|
<div class="table_container">
|
4
|
-
<table class="queues table table-hover table-bordered table-striped
|
4
|
+
<table class="queues table table-hover table-bordered table-striped">
|
5
5
|
<thead>
|
6
6
|
<th><%= t('Queue') %></th>
|
7
7
|
<th><%= t('Size') %></th>
|
data/web/views/retries.erb
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
<form action="<%= root_path %>retries" method="post">
|
15
15
|
<%= csrf_tag %>
|
16
16
|
<div class="table_container">
|
17
|
-
<table class="table table-striped table-bordered
|
17
|
+
<table class="table table-striped table-bordered">
|
18
18
|
<thead>
|
19
19
|
<tr>
|
20
20
|
<th class="table-checkbox checkbox-column">
|
data/web/views/scheduled.erb
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
<form action="<%= root_path %>scheduled" method="post">
|
16
16
|
<%= csrf_tag %>
|
17
17
|
<div class="table_container">
|
18
|
-
<table class="table table-striped table-bordered
|
18
|
+
<table class="table table-striped table-bordered">
|
19
19
|
<thead>
|
20
20
|
<tr>
|
21
21
|
<th class="checkbox-column">
|
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.1.
|
4
|
+
version: 6.1.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: 2020-07
|
11
|
+
date: 2020-09-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: redis
|
@@ -61,9 +61,9 @@ executables:
|
|
61
61
|
extensions: []
|
62
62
|
extra_rdoc_files: []
|
63
63
|
files:
|
64
|
-
- ".
|
64
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
65
65
|
- ".github/contributing.md"
|
66
|
-
- ".github/
|
66
|
+
- ".github/workflows/ci.yml"
|
67
67
|
- ".gitignore"
|
68
68
|
- ".standard.yml"
|
69
69
|
- 3.0-Upgrade.md
|
@@ -190,7 +190,7 @@ homepage: http://sidekiq.org
|
|
190
190
|
licenses:
|
191
191
|
- LGPL-3.0
|
192
192
|
metadata: {}
|
193
|
-
post_install_message:
|
193
|
+
post_install_message:
|
194
194
|
rdoc_options: []
|
195
195
|
require_paths:
|
196
196
|
- lib
|
@@ -206,7 +206,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
206
206
|
version: '0'
|
207
207
|
requirements: []
|
208
208
|
rubygems_version: 3.1.2
|
209
|
-
signing_key:
|
209
|
+
signing_key:
|
210
210
|
specification_version: 4
|
211
211
|
summary: Simple, efficient background processing for Ruby
|
212
212
|
test_files: []
|
data/.circleci/config.yml
DELETED
@@ -1,71 +0,0 @@
|
|
1
|
-
version: 2
|
2
|
-
references:
|
3
|
-
unit: &unit
|
4
|
-
run:
|
5
|
-
name: Run test suite
|
6
|
-
command: bundle exec rake COVERAGE=1
|
7
|
-
restore: &restore
|
8
|
-
restore_cache:
|
9
|
-
keys:
|
10
|
-
- v1-dependencies-{{ checksum "Gemfile.lock" }}
|
11
|
-
# fallback to using the latest cache if no exact match is found
|
12
|
-
- v1-dependencies-
|
13
|
-
bundle: &bundle
|
14
|
-
run:
|
15
|
-
name: install dependencies
|
16
|
-
command: |
|
17
|
-
bundle install --jobs=4 --retry=3 --path vendor/bundle
|
18
|
-
save: &save
|
19
|
-
save_cache:
|
20
|
-
paths:
|
21
|
-
- ./vendor/bundle
|
22
|
-
key: v1-dependencies-{{ checksum "Gemfile.lock" }}
|
23
|
-
jobs:
|
24
|
-
"ruby-2.5":
|
25
|
-
docker:
|
26
|
-
- image: circleci/ruby:2.5
|
27
|
-
- image: circleci/redis:4.0
|
28
|
-
steps:
|
29
|
-
- checkout
|
30
|
-
- <<: *restore
|
31
|
-
- <<: *bundle
|
32
|
-
- <<: *save
|
33
|
-
- <<: *unit
|
34
|
-
"ruby-2.6":
|
35
|
-
docker:
|
36
|
-
- image: circleci/ruby:2.6
|
37
|
-
- image: circleci/redis:5.0
|
38
|
-
steps:
|
39
|
-
- checkout
|
40
|
-
- <<: *restore
|
41
|
-
- <<: *bundle
|
42
|
-
- <<: *save
|
43
|
-
- <<: *unit
|
44
|
-
"ruby-2.7":
|
45
|
-
docker:
|
46
|
-
- image: circleci/ruby:2.7
|
47
|
-
- image: circleci/redis:6.0
|
48
|
-
steps:
|
49
|
-
- checkout
|
50
|
-
- <<: *restore
|
51
|
-
- <<: *bundle
|
52
|
-
- <<: *save
|
53
|
-
- <<: *unit
|
54
|
-
"jruby":
|
55
|
-
docker:
|
56
|
-
- image: circleci/jruby:latest
|
57
|
-
- image: circleci/redis:4.0
|
58
|
-
steps:
|
59
|
-
- checkout
|
60
|
-
- <<: *restore
|
61
|
-
- <<: *bundle
|
62
|
-
- <<: *save
|
63
|
-
- <<: *unit
|
64
|
-
|
65
|
-
workflows:
|
66
|
-
version: 2
|
67
|
-
build:
|
68
|
-
jobs:
|
69
|
-
- "ruby-2.5"
|
70
|
-
- "ruby-2.6"
|
71
|
-
- "ruby-2.7"
|
data/.github/issue_template.md
DELETED
@@ -1,11 +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 changelogs to see if your issue has been fixed in a later version?
|
8
|
-
|
9
|
-
https://github.com/mperham/sidekiq/blob/master/Changes.md
|
10
|
-
https://github.com/mperham/sidekiq/blob/master/Pro-Changes.md
|
11
|
-
https://github.com/mperham/sidekiq/blob/master/Ent-Changes.md
|