sidekiq 6.0.7 → 6.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/bug_report.md +20 -0
  3. data/.github/workflows/ci.yml +41 -0
  4. data/Changes.md +32 -0
  5. data/Ent-Changes.md +26 -1
  6. data/Gemfile +1 -1
  7. data/Gemfile.lock +96 -112
  8. data/Pro-Changes.md +26 -3
  9. data/README.md +2 -6
  10. data/bin/sidekiq +7 -2
  11. data/lib/sidekiq.rb +5 -3
  12. data/lib/sidekiq/api.rb +6 -3
  13. data/lib/sidekiq/cli.rb +9 -6
  14. data/lib/sidekiq/client.rb +15 -10
  15. data/lib/sidekiq/extensions/action_mailer.rb +3 -2
  16. data/lib/sidekiq/extensions/active_record.rb +4 -3
  17. data/lib/sidekiq/extensions/class_methods.rb +5 -4
  18. data/lib/sidekiq/fetch.rb +20 -20
  19. data/lib/sidekiq/launcher.rb +3 -2
  20. data/lib/sidekiq/manager.rb +4 -4
  21. data/lib/sidekiq/middleware/chain.rb +1 -1
  22. data/lib/sidekiq/processor.rb +4 -4
  23. data/lib/sidekiq/rails.rb +16 -18
  24. data/lib/sidekiq/redis_connection.rb +15 -12
  25. data/lib/sidekiq/sd_notify.rb +1 -1
  26. data/lib/sidekiq/testing.rb +1 -1
  27. data/lib/sidekiq/version.rb +1 -1
  28. data/lib/sidekiq/web.rb +15 -7
  29. data/lib/sidekiq/web/application.rb +1 -3
  30. data/lib/sidekiq/web/csrf_protection.rb +158 -0
  31. data/lib/sidekiq/web/helpers.rb +3 -6
  32. data/lib/sidekiq/web/router.rb +1 -1
  33. data/lib/sidekiq/worker.rb +2 -5
  34. data/sidekiq.gemspec +1 -2
  35. data/web/assets/javascripts/application.js +3 -8
  36. data/web/assets/stylesheets/application-dark.css +54 -33
  37. data/web/assets/stylesheets/application.css +7 -6
  38. data/web/locales/pl.yml +4 -4
  39. data/web/locales/ru.yml +4 -0
  40. data/web/views/busy.erb +2 -2
  41. data/web/views/morgue.erb +1 -1
  42. data/web/views/queues.erb +1 -1
  43. data/web/views/retries.erb +1 -1
  44. data/web/views/scheduled.erb +1 -1
  45. metadata +11 -24
  46. data/.circleci/config.yml +0 -60
  47. data/.github/issue_template.md +0 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3dd5d7a0dd8a7d877484df4ae3b9988f15e9cc4bc0bb4da23224be0049fa733e
4
- data.tar.gz: e2b7ddb4c045817837e996356851648bf32108b37fa1abcfb72795a185b4a238
3
+ metadata.gz: 5a80310735fb458e7332a5ecc86072248e0777e1951f77f14965c06313c5b2f8
4
+ data.tar.gz: bfd09dc57c4506ca9c4d74dd9a38e88ef18700aafaf92814d662c6df4e4b2e5b
5
5
  SHA512:
6
- metadata.gz: 5ce3f911b835b38ce212309bcdf81b4789e24a12898a0f2071b9adb9cbcdfa23a33bb7216c2f7c6dcab26d484f79a1271594d3218f63ed041f0027deab5a26f3
7
- data.tar.gz: 685a6890a43c990b2fd9709c49f9c82c96a487cdcf6fc0607ab15b9dbb47d52c9f797ec5094d3f92ec35c5737e661f966a6b81006ee4b7d99a7f31285180b3db
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,6 +2,32 @@
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
+ 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
14
+ ---------
15
+
16
+ - Jobs are now sorted by age in the Busy Workers table. [#4641]
17
+ - Fix "check all" JS logic in Web UI [#4619]
18
+
19
+ 6.1.0
20
+ ---------
21
+
22
+ - Web UI - Dark Mode fixes [#4543, natematykiewicz]
23
+ - Ensure `Rack::ContentLength` is loaded as middleware for correct Web UI responses [#4541]
24
+ - Avoid exception dumping SSL store in Redis connection logging [#4532]
25
+ - Better error messages in Sidekiq::Client [#4549]
26
+ - Remove rack-protection, reimplement CSRF protection [#4588]
27
+ - Require redis-rb 4.2 [#4591]
28
+ - Update to jquery 1.12.4 [#4593]
29
+ - Refactor internal fetch logic and API [#4602]
30
+
5
31
  6.0.7
6
32
  ---------
7
33
 
@@ -160,6 +186,12 @@ See the [Logging wiki page](https://github.com/mperham/sidekiq/wiki/Logging) for
160
186
  - Integrate the StandardRB code formatter to ensure consistent code
161
187
  styling. [#4114, gearnode]
162
188
 
189
+ 5.2.9
190
+ ---------
191
+
192
+ - Release Rack lock due to a cascade of CVEs. [#4566]
193
+ Pro-tip: don't lock Rack.
194
+
163
195
  5.2.8
164
196
  ---------
165
197
 
@@ -2,7 +2,32 @@
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
- Please see [http://sidekiq.org/](http://sidekiq.org/) for more details and how to buy.
5
+ Please see [sidekiq.org](https://sidekiq.org) for more details and how to buy.
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
+
13
+ 2.1.1
14
+ -------------
15
+
16
+ - Add optional **app preload** in swarm, saves even more memory [#4646]
17
+ - Fix incorrect queue tags in historical metrics [#4377]
18
+
19
+ 2.1.0
20
+ -------------
21
+
22
+ - Move historical metrics to use tags rather than interpolating name [#4377]
23
+ ```
24
+ sidekiq.enqueued.#{name} -> sidekiq.queue.size with tag queue:#{name}
25
+ sidekiq.latency.#{name} -> sidekiq.queue.latency with tag queue:#{name}
26
+ ```
27
+ - Remove `concurrent-ruby` gem dependency [#4586]
28
+ - Add systemd `Type=notify` support for swarm [#4511]
29
+ - Length swarm's boot timeout to 60 sec [#4544]
30
+ - Add NL locale
6
31
 
7
32
  2.0.1
8
33
  -------------
data/Gemfile CHANGED
@@ -11,10 +11,10 @@ gem "activerecord-jdbcsqlite3-adapter", platforms: :jruby
11
11
  group :test do
12
12
  gem "minitest"
13
13
  gem "simplecov"
14
+ gem "codecov", require: false
14
15
  end
15
16
 
16
17
  group :development, :test do
17
- gem "pry-byebug", platforms: :mri
18
18
  gem "standard"
19
19
  end
20
20
 
@@ -1,170 +1,158 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sidekiq (6.0.7)
4
+ sidekiq (6.1.2)
5
5
  connection_pool (>= 2.2.2)
6
6
  rack (~> 2.0)
7
- rack-protection (>= 2.0.0)
8
- redis (>= 4.1.0)
7
+ redis (>= 4.2.0)
9
8
 
10
9
  GEM
11
10
  remote: https://rubygems.org/
12
11
  specs:
13
- actioncable (6.0.2.1)
14
- actionpack (= 6.0.2.1)
12
+ actioncable (6.0.3.2)
13
+ actionpack (= 6.0.3.2)
15
14
  nio4r (~> 2.0)
16
15
  websocket-driver (>= 0.6.1)
17
- actionmailbox (6.0.2.1)
18
- actionpack (= 6.0.2.1)
19
- activejob (= 6.0.2.1)
20
- activerecord (= 6.0.2.1)
21
- activestorage (= 6.0.2.1)
22
- activesupport (= 6.0.2.1)
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)
23
22
  mail (>= 2.7.1)
24
- actionmailer (6.0.2.1)
25
- actionpack (= 6.0.2.1)
26
- actionview (= 6.0.2.1)
27
- activejob (= 6.0.2.1)
23
+ actionmailer (6.0.3.2)
24
+ actionpack (= 6.0.3.2)
25
+ actionview (= 6.0.3.2)
26
+ activejob (= 6.0.3.2)
28
27
  mail (~> 2.5, >= 2.5.4)
29
28
  rails-dom-testing (~> 2.0)
30
- actionpack (6.0.2.1)
31
- actionview (= 6.0.2.1)
32
- activesupport (= 6.0.2.1)
29
+ actionpack (6.0.3.2)
30
+ actionview (= 6.0.3.2)
31
+ activesupport (= 6.0.3.2)
33
32
  rack (~> 2.0, >= 2.0.8)
34
33
  rack-test (>= 0.6.3)
35
34
  rails-dom-testing (~> 2.0)
36
35
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
37
- actiontext (6.0.2.1)
38
- actionpack (= 6.0.2.1)
39
- activerecord (= 6.0.2.1)
40
- activestorage (= 6.0.2.1)
41
- activesupport (= 6.0.2.1)
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)
42
41
  nokogiri (>= 1.8.5)
43
- actionview (6.0.2.1)
44
- activesupport (= 6.0.2.1)
42
+ actionview (6.0.3.2)
43
+ activesupport (= 6.0.3.2)
45
44
  builder (~> 3.1)
46
45
  erubi (~> 1.4)
47
46
  rails-dom-testing (~> 2.0)
48
47
  rails-html-sanitizer (~> 1.1, >= 1.2.0)
49
- activejob (6.0.2.1)
50
- activesupport (= 6.0.2.1)
48
+ activejob (6.0.3.2)
49
+ activesupport (= 6.0.3.2)
51
50
  globalid (>= 0.3.6)
52
- activemodel (6.0.2.1)
53
- activesupport (= 6.0.2.1)
54
- activerecord (6.0.2.1)
55
- activemodel (= 6.0.2.1)
56
- activesupport (= 6.0.2.1)
57
- activerecord-jdbc-adapter (60.1-java)
58
- activerecord (~> 6.0.0)
59
- activerecord-jdbcsqlite3-adapter (60.1-java)
60
- activerecord-jdbc-adapter (= 60.1)
61
- jdbc-sqlite3 (~> 3.8, < 3.30)
62
- activestorage (6.0.2.1)
63
- actionpack (= 6.0.2.1)
64
- activejob (= 6.0.2.1)
65
- activerecord (= 6.0.2.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)
66
60
  marcel (~> 0.3.1)
67
- activesupport (6.0.2.1)
61
+ activesupport (6.0.3.2)
68
62
  concurrent-ruby (~> 1.0, >= 1.0.2)
69
63
  i18n (>= 0.7, < 2)
70
64
  minitest (~> 5.1)
71
65
  tzinfo (~> 1.1)
72
- zeitwerk (~> 2.2)
73
- ast (2.4.0)
66
+ zeitwerk (~> 2.2, >= 2.2.2)
67
+ ast (2.4.1)
74
68
  builder (3.2.4)
75
- byebug (11.1.1)
76
- coderay (1.1.2)
77
- concurrent-ruby (1.1.6)
78
- connection_pool (2.2.2)
69
+ codecov (0.2.8)
70
+ json
71
+ simplecov
72
+ concurrent-ruby (1.1.7)
73
+ connection_pool (2.2.3)
79
74
  crass (1.0.6)
80
75
  docile (1.3.2)
81
76
  erubi (1.9.0)
82
77
  globalid (0.4.2)
83
78
  activesupport (>= 4.2.0)
84
79
  hiredis (0.6.3)
85
- hiredis (0.6.3-java)
86
- i18n (1.8.2)
80
+ i18n (1.8.5)
87
81
  concurrent-ruby (~> 1.0)
88
- jaro_winkler (1.5.4)
89
- jaro_winkler (1.5.4-java)
90
- jdbc-sqlite3 (3.28.0)
91
- loofah (2.4.0)
82
+ json (2.3.1)
83
+ loofah (2.7.0)
92
84
  crass (~> 1.0.2)
93
85
  nokogiri (>= 1.5.9)
94
86
  mail (2.7.1)
95
87
  mini_mime (>= 0.1.1)
96
88
  marcel (0.3.3)
97
89
  mimemagic (~> 0.3.2)
98
- method_source (0.9.2)
99
- mimemagic (0.3.4)
90
+ method_source (1.0.0)
91
+ mimemagic (0.3.5)
100
92
  mini_mime (1.0.2)
101
93
  mini_portile2 (2.4.0)
102
- minitest (5.14.0)
94
+ minitest (5.14.1)
103
95
  nio4r (2.5.2)
104
- nio4r (2.5.2-java)
105
- nokogiri (1.10.8)
96
+ nokogiri (1.10.10)
106
97
  mini_portile2 (~> 2.4.0)
107
- nokogiri (1.10.8-java)
108
- parallel (1.19.1)
109
- parser (2.7.0.4)
110
- ast (~> 2.4.0)
111
- pry (0.12.2)
112
- coderay (~> 1.1.0)
113
- method_source (~> 0.9.0)
114
- pry-byebug (3.8.0)
115
- byebug (~> 11.0)
116
- pry (~> 0.10)
117
- rack (2.2.2)
118
- rack-protection (2.0.8.1)
119
- rack
98
+ parallel (1.19.2)
99
+ parser (2.7.1.4)
100
+ ast (~> 2.4.1)
101
+ rack (2.2.3)
120
102
  rack-test (1.1.0)
121
103
  rack (>= 1.0, < 3)
122
- rails (6.0.2.1)
123
- actioncable (= 6.0.2.1)
124
- actionmailbox (= 6.0.2.1)
125
- actionmailer (= 6.0.2.1)
126
- actionpack (= 6.0.2.1)
127
- actiontext (= 6.0.2.1)
128
- actionview (= 6.0.2.1)
129
- activejob (= 6.0.2.1)
130
- activemodel (= 6.0.2.1)
131
- activerecord (= 6.0.2.1)
132
- activestorage (= 6.0.2.1)
133
- activesupport (= 6.0.2.1)
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)
134
116
  bundler (>= 1.3.0)
135
- railties (= 6.0.2.1)
117
+ railties (= 6.0.3.2)
136
118
  sprockets-rails (>= 2.0.0)
137
119
  rails-dom-testing (2.0.3)
138
120
  activesupport (>= 4.2.0)
139
121
  nokogiri (>= 1.6)
140
122
  rails-html-sanitizer (1.3.0)
141
123
  loofah (~> 2.3)
142
- railties (6.0.2.1)
143
- actionpack (= 6.0.2.1)
144
- activesupport (= 6.0.2.1)
124
+ railties (6.0.3.2)
125
+ actionpack (= 6.0.3.2)
126
+ activesupport (= 6.0.3.2)
145
127
  method_source
146
128
  rake (>= 0.8.7)
147
129
  thor (>= 0.20.3, < 2.0)
148
130
  rainbow (3.0.0)
149
131
  rake (13.0.1)
150
- redis (4.1.3)
151
- redis-namespace (1.7.0)
132
+ redis (4.2.1)
133
+ redis-namespace (1.8.0)
152
134
  redis (>= 3.0.4)
153
- rubocop (0.79.0)
154
- jaro_winkler (~> 1.5.1)
135
+ regexp_parser (1.7.1)
136
+ rexml (3.2.4)
137
+ rubocop (0.89.1)
155
138
  parallel (~> 1.10)
156
- parser (>= 2.7.0.1)
139
+ parser (>= 2.7.1.1)
157
140
  rainbow (>= 2.2.2, < 4.0)
141
+ regexp_parser (>= 1.7)
142
+ rexml
143
+ rubocop-ast (>= 0.3.0, < 1.0)
158
144
  ruby-progressbar (~> 1.7)
159
- unicode-display_width (>= 1.4.0, < 1.7)
160
- rubocop-performance (1.5.2)
161
- rubocop (>= 0.71.0)
145
+ unicode-display_width (>= 1.4.0, < 2.0)
146
+ rubocop-ast (0.3.0)
147
+ parser (>= 2.7.1.4)
148
+ rubocop-performance (1.7.1)
149
+ rubocop (>= 0.82.0)
162
150
  ruby-progressbar (1.10.1)
163
- simplecov (0.18.2)
151
+ simplecov (0.19.0)
164
152
  docile (~> 1.1)
165
153
  simplecov-html (~> 0.11)
166
- simplecov-html (0.12.0)
167
- sprockets (4.0.0)
154
+ simplecov-html (0.12.2)
155
+ sprockets (4.0.2)
168
156
  concurrent-ruby (~> 1.0)
169
157
  rack (> 1, < 3)
170
158
  sprockets-rails (3.2.1)
@@ -172,32 +160,28 @@ GEM
172
160
  activesupport (>= 4.0)
173
161
  sprockets (>= 3.0.0)
174
162
  sqlite3 (1.4.2)
175
- standard (0.2.1)
176
- rubocop (~> 0.79.0)
177
- rubocop-performance (~> 1.5.1)
163
+ standard (0.5.2)
164
+ rubocop (~> 0.89.1)
165
+ rubocop-performance (~> 1.7.1)
178
166
  thor (1.0.1)
179
167
  thread_safe (0.3.6)
180
- thread_safe (0.3.6-java)
181
168
  toxiproxy (1.0.3)
182
- tzinfo (1.2.6)
169
+ tzinfo (1.2.7)
183
170
  thread_safe (~> 0.1)
184
- unicode-display_width (1.6.1)
185
- websocket-driver (0.7.1)
171
+ unicode-display_width (1.7.0)
172
+ websocket-driver (0.7.3)
186
173
  websocket-extensions (>= 0.1.0)
187
- websocket-driver (0.7.1-java)
188
- websocket-extensions (>= 0.1.0)
189
- websocket-extensions (0.1.4)
190
- zeitwerk (2.2.2)
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
197
181
  activerecord-jdbcsqlite3-adapter
182
+ codecov
198
183
  hiredis
199
184
  minitest
200
- pry-byebug
201
185
  rails (>= 6.0.2)
202
186
  rake
203
187
  redis-namespace