sidekiq-prometheus-exporter 0.1.12 → 0.1.16

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.
Files changed (52) hide show
  1. checksums.yaml +5 -5
  2. data/.github/FUNDING.yml +12 -0
  3. data/.github/workflows/ci.yaml +68 -0
  4. data/.gitignore +3 -1
  5. data/.rubocop.yml +43 -296
  6. data/Appraisals +17 -4
  7. data/README.md +98 -50
  8. data/Rakefile +83 -0
  9. data/docker/Dockerfile +24 -0
  10. data/docker/README.md +61 -0
  11. data/docker/config.ru +41 -0
  12. data/examples/docker-compose.yml +2 -2
  13. data/examples/metrics/config.ru +2 -0
  14. data/examples/screenshot.png +0 -0
  15. data/examples/sidekiq/sidekiq.rb +2 -0
  16. data/examples/{sidekiq.json → sidekiq-dashboard.grafana-6.json} +10 -52
  17. data/examples/sidekiq-dashboard.grafana-7.json +845 -0
  18. data/gemfiles/{sidekiq_3.3.1.gemfile → sidekiq_3.3.1.Gemfile} +2 -1
  19. data/gemfiles/sidekiq_3.3.1.Gemfile.lock +125 -0
  20. data/gemfiles/{sidekiq_3.x.gemfile → sidekiq_3.x.Gemfile} +2 -1
  21. data/gemfiles/{sidekiq_3.x.gemfile.lock → sidekiq_3.x.Gemfile.lock} +63 -61
  22. data/gemfiles/{sidekiq_4.x.gemfile → sidekiq_4.x.Gemfile} +1 -1
  23. data/gemfiles/sidekiq_4.x.Gemfile.lock +101 -0
  24. data/gemfiles/{sidekiq_5.x.gemfile → sidekiq_5.x.Gemfile} +1 -1
  25. data/gemfiles/sidekiq_5.x.Gemfile.lock +100 -0
  26. data/gemfiles/sidekiq_6.x.Gemfile +8 -0
  27. data/gemfiles/sidekiq_6.x.Gemfile.lock +97 -0
  28. data/gemfiles/sidekiq_latest.Gemfile +9 -0
  29. data/gemfiles/sidekiq_latest.Gemfile.lock +113 -0
  30. data/helm/sidekiq-prometheus-exporter/.helmignore +22 -0
  31. data/helm/sidekiq-prometheus-exporter/Chart.yaml +6 -0
  32. data/helm/sidekiq-prometheus-exporter/README.md +87 -0
  33. data/helm/sidekiq-prometheus-exporter/templates/NOTES.txt +15 -0
  34. data/helm/sidekiq-prometheus-exporter/templates/_helpers.tpl +109 -0
  35. data/helm/sidekiq-prometheus-exporter/templates/clusterrole.yaml +20 -0
  36. data/helm/sidekiq-prometheus-exporter/templates/clusterrolebinding.yaml +17 -0
  37. data/helm/sidekiq-prometheus-exporter/templates/deployment.yaml +62 -0
  38. data/helm/sidekiq-prometheus-exporter/templates/service.yaml +17 -0
  39. data/helm/sidekiq-prometheus-exporter/templates/serviceaccount.yaml +9 -0
  40. data/helm/sidekiq-prometheus-exporter/templates/servicemonitor.yaml +26 -0
  41. data/helm/sidekiq-prometheus-exporter/values.yaml +135 -0
  42. data/lib/sidekiq/prometheus/exporter/standard.rb +19 -5
  43. data/lib/sidekiq/prometheus/exporter/templates/standard.erb +13 -1
  44. data/lib/sidekiq/prometheus/exporter/version.rb +1 -1
  45. data/lib/sidekiq/prometheus/exporter.rb +3 -1
  46. data/sidekiq-prometheus-exporter.gemspec +9 -7
  47. metadata +74 -41
  48. data/.codeclimate.yml +0 -16
  49. data/.travis.yml +0 -23
  50. data/gemfiles/sidekiq_3.3.1.gemfile.lock +0 -138
  51. data/gemfiles/sidekiq_4.x.gemfile.lock +0 -101
  52. data/gemfiles/sidekiq_5.x.gemfile.lock +0 -99
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 8465ee046fa10f2c5144bb12fab3a77aa6233253
4
- data.tar.gz: a00265012ab3169bbd9d3eabe8bc4c65b0bc01a3
2
+ SHA256:
3
+ metadata.gz: 35e10d4b151d755705e57fabba8497aceb6d83ebfe042dc09e4dd310e7c62c5a
4
+ data.tar.gz: cbe9fc29d375d66550ff05077dcb00e0fa24c2ffc843e660ef2509e7e39df8f7
5
5
  SHA512:
6
- metadata.gz: 5719faa2d228e1d405fb82e9e803d3f1df88cac8cc0aa123c8d9941c5ecb7ddd16f0ee2c0b6f2dcfa5f20ffaa6ed1aad8cd6c6979bdbc6a9aa26b3407b2b2707
7
- data.tar.gz: 57e38e7abe679694b57dcf36bf60cfd81850c71798b4899a1e0e90c024b4313141f6ff1a71c95c57d8eb43800e8a48ab4c99cb7d8e154817f0b31c1bf1abdfab
6
+ metadata.gz: 29d0f796a65f70debbc1ae73d8e71ba3425b9a16b0b1b8f79fad7c4668941b88f2ef82c004af9e537bf6cbc9d1c17df4095e9ac69a1c1e296342557a94bd79e0
7
+ data.tar.gz: eae4aa3a3326cb67e8e63189e8857bcf21d082c883ef55cd213f4de40b3bd566f7a998a282b3193b992ef2b5df3471ec0b6800f9cdc4b7b8b22e7b47b859f3d4
@@ -0,0 +1,12 @@
1
+ # These are supported funding model platforms
2
+
3
+ github: [Strech]
4
+ patreon: # Replace with a single Patreon username
5
+ open_collective: # Replace with a single Open Collective username
6
+ ko_fi: strech
7
+ tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8
+ community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9
+ liberapay: # Replace with a single Liberapay username
10
+ issuehunt: # Replace with a single IssueHunt username
11
+ otechie: # Replace with a single Otechie username
12
+ custom: ['https://paypal.me/onistrech/eur5.0']
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: CI
3
+ on:
4
+ push:
5
+ branches: ["master"]
6
+ pull_request:
7
+ branches: ["master"]
8
+ jobs:
9
+ rubocop:
10
+ name: Rubocop
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v2
14
+ - uses: ruby/setup-ruby@v1
15
+ with:
16
+ ruby-version: 3.0.2
17
+ - name: rubocop
18
+ uses: reviewdog/action-rubocop@v2
19
+ with:
20
+ github_token: ${{ secrets.GITHUB_TOKEN }}
21
+ rubocop_version: gemfile
22
+ rubocop_extensions: rubocop-rake:gemfile rubocop-rspec:gemfile rubocop-performance:gemfile
23
+ reporter: github-pr-review
24
+ fail_on_error: true
25
+
26
+ test:
27
+ needs: rubocop
28
+ runs-on: ubuntu-latest
29
+ name: Ruby ${{ matrix.ruby }} / Sidekiq ${{ matrix.sidekiq }}
30
+ strategy:
31
+ matrix:
32
+ # Always keep a window of "5 most recent" including (or on top with) HEAD
33
+ ruby: ["2.5.9", "2.6.8", "2.7.4", "3.0.2", "latest"]
34
+ sidekiq: ["3.3.1", "3.x", "4.x", "5.x", "6.x", "latest"]
35
+ # Allow failures ... kind-a
36
+ exclude:
37
+ - ruby: "2.5.9"
38
+ sidekiq: "latest"
39
+ - ruby: "2.6.8"
40
+ sidekiq: "latest"
41
+ - ruby: "2.7.4"
42
+ sidekiq: "latest"
43
+ - ruby: "3.0.2"
44
+ sidekiq: "latest"
45
+
46
+ container:
47
+ image: ruby:${{ matrix.ruby }}
48
+
49
+ steps:
50
+ - uses: actions/checkout@v2
51
+
52
+ - uses: actions/cache@v2
53
+ id: vendor-cache
54
+ with:
55
+ path: vendor
56
+ key: bundle-${{ matrix.ruby }}-sidekiq-${{ matrix.sidekiq }}-${{ hashFiles('**/*.gemspec') }}-${{ hashFiles('**/.*Gemfile.lock') }}
57
+
58
+ - name: Upgrade Bundler to 2.x (for older Ruby versions)
59
+ run: gem install bundler -v '~> 2.1'
60
+
61
+ - name: Bundle install
62
+ run: |
63
+ bundle config path vendor/bundle
64
+ bundle config gemfile gemfiles/sidekiq_${{ matrix.sidekiq }}.Gemfile
65
+ bundle install
66
+
67
+ - name: Run RSpec
68
+ run: bundle exec rake spec
data/.gitignore CHANGED
@@ -1,4 +1,3 @@
1
- /.bundle/
2
1
  /.yardoc
3
2
  /_yardoc/
4
3
  /coverage/
@@ -9,6 +8,9 @@
9
8
  /Gemfile.lock
10
9
  /.ruby-version
11
10
 
11
+ # Global ignore of bundler config
12
+ .bundle/
13
+
12
14
  # rspec failure tracking
13
15
  .rspec_status
14
16
 
data/.rubocop.yml CHANGED
@@ -1,46 +1,24 @@
1
1
  ---
2
- require: rubocop-rspec
2
+ require:
3
+ - rubocop-rake
4
+ - rubocop-rspec
5
+ - rubocop-performance
3
6
 
4
7
  AllCops:
5
- TargetRubyVersion: 2.2
6
-
7
- Style/Alias:
8
- EnforcedStyle: prefer_alias_method
9
-
10
- Style/AndOr:
11
- # Whether `and` and `or` are banned only in conditionals (conditionals)
12
- # or completely (always).
13
- EnforcedStyle: conditionals
14
-
15
- # Use ` or %x around command literals.
16
- Style/CommandLiteral:
17
- EnforcedStyle: mixed
18
- # backticks: Always use backticks.
19
- # percent_x: Always use %x.
20
- # mixed: Use backticks on single-line commands, and %x on multi-line commands.
21
- SupportedStyles:
22
- - backticks
23
- - percent_x
24
- - mixed
25
- # If false, the cop will always recommend using %x if one or more backticks
26
- # are found in the command string.
27
- AllowInnerBackticks: false
8
+ NewCops: enable
9
+ SuggestExtensions: false
10
+ TargetRubyVersion: ~
11
+
12
+ Gemspec/RequiredRubyVersion:
13
+ Enabled: false
28
14
 
29
15
  Style/Documentation:
30
16
  Enabled: false
31
17
 
32
18
  Style/FrozenStringLiteralComment:
33
- EnforcedStyle: when_needed
34
- SupportedStyles:
35
- # `when_needed` will add the frozen string literal comment to files
36
- # only when the `TargetRubyVersion` is set to 2.3+.
37
- - when_needed
38
- # `always` will always add the frozen string literal comment to a file
39
- # regardless of the Ruby version or if `freeze` or `<<` are called on a
40
- # string literal. If you run code against multiple versions of Ruby, it is
41
- # possible that this will create errors in Ruby 2.3.0+.
42
- - always
19
+ EnforcedStyle: always
43
20
  Exclude:
21
+ - "Appraisals"
44
22
  - "Gemfile"
45
23
  - "Rakefile"
46
24
  - "bin/*"
@@ -49,199 +27,31 @@ Style/FrozenStringLiteralComment:
49
27
  - "**/*.gemspec"
50
28
  - "**/*.rake"
51
29
 
52
- # Enable when it will respect line length rules
53
- Style/IfUnlessModifier:
30
+ Style/PercentLiteralDelimiters:
31
+ PreferredDelimiters:
32
+ "%i": "()"
33
+ "%w": "()"
34
+
35
+ Style/TernaryParentheses:
36
+ EnforcedStyle: require_parentheses_when_complex
37
+
38
+ Style/RedundantFreeze:
54
39
  Enabled: false
55
40
 
56
- Style/Lambda:
57
- EnforcedStyle: literal
58
- SupportedStyles:
59
- - line_count_dependent
60
- - lambda
61
- - literal
62
-
63
- Style/Next:
64
- # With `always` all conditions at the end of an iteration needs to be
65
- # replaced by next - with `skip_modifier_ifs` the modifier if like this one
66
- # are ignored: [1, 2].each { |a| return 'yes' if a == 1 }
67
- EnforcedStyle: skip_modifier_ifs
68
- # `MinBodyLength` defines the number of lines of the a body of an if / unless
69
- # needs to have to trigger this cop
70
- MinBodyLength: 3
71
- SupportedStyles:
72
- - skip_modifier_ifs
73
- - always
74
-
75
- Style/NonNilCheck:
76
- # With `IncludeSemanticChanges` set to `true`, this cop reports offenses for
77
- # `!x.nil?` and autocorrects that and `x != nil` to solely `x`, which is
78
- # **usually** OK, but might change behavior.
79
- #
80
- # With `IncludeSemanticChanges` set to `false`, this cop does not report
81
- # offenses for `!x.nil?` and does no changes that might change behavior.
82
- IncludeSemanticChanges: false
41
+ Style/IfUnlessModifier:
42
+ Enabled: false
83
43
 
84
44
  Style/NumericPredicate:
85
45
  EnforcedStyle: predicate
86
- SupportedStyles:
87
- - predicate
88
- - comparison
89
- # Exclude RSpec specs because assertions like `expect(1).to be > 0` cause
90
- # false positives.
91
46
  Exclude:
92
- - 'spec/**/*'
47
+ - "spec/**/*"
93
48
 
94
- Style/MethodCalledOnDoEndBlock:
95
- Description: 'Avoid chaining a method call on a do...end block.'
96
- StyleGuide: '#single-line-blocks'
97
- Enabled: true
98
-
99
- Style/PercentLiteralDelimiters:
100
- PreferredDelimiters:
101
- '%': ()
102
- '%i': ()
103
- '%I': ()
104
- '%q': ()
105
- '%Q': ()
106
- '%r': '{}'
107
- '%s': ()
108
- '%w': ()
109
- '%W': ()
110
- '%x': '{}'
111
-
112
- Style/SpecialGlobalVars:
113
- EnforcedStyle: use_english_names
114
- SupportedStyles:
115
- - use_perl_names
116
- - use_english_names
117
-
118
- Style/StabbyLambdaParentheses:
119
- EnforcedStyle: require_parentheses
120
- SupportedStyles:
121
- - require_parentheses
122
- - require_no_parentheses
123
-
124
- Style/StringLiterals:
125
- EnforcedStyle: single_quotes
126
- SupportedStyles:
127
- - single_quotes
128
- - double_quotes
129
- # If true, strings which span multiple lines using \ for continuation must
130
- # use the same type of quotes on each line.
131
- ConsistentQuotesInMultiline: false
132
-
133
- Style/StringLiteralsInInterpolation:
134
- EnforcedStyle: single_quotes
135
- SupportedStyles:
136
- - single_quotes
137
- - double_quotes
138
-
139
- Style/StringMethods:
140
- # Mapping from undesired method to desired_method
141
- # e.g. to use `to_sym` over `intern`:
142
- #
143
- # StringMethods:
144
- # PreferredMethods:
145
- # intern: to_sym
146
- PreferredMethods:
147
- intern: to_sym
148
-
149
- Style/TernaryParentheses:
150
- EnforcedStyle: require_parentheses_when_complex
151
- SupportedStyles:
152
- - require_parentheses
153
- - require_no_parentheses
154
- - require_parentheses_when_complex
155
- AllowSafeAssignment: true
156
-
157
- #################### Naming ####################################
158
-
159
- Naming/AccessorMethodName:
160
- Description: Check the naming of accessor methods for get_/set_.
161
- StyleGuide: '#accessor_mutator_method_names'
162
-
163
- # https://rubocop.readthedocs.io/en/latest/cops_naming/#naminguncommunicativemethodparamname
164
- Naming/UncommunicativeMethodParamName:
165
- AllowedNames:
166
- - _
167
- - io
168
- - id
169
- - to
170
- - by
171
- - on
172
- - in
173
- - at
174
-
175
- #################### Layout ####################################
176
-
177
- Layout/AlignParameters:
178
- # Alignment of parameters in multi-line method calls.
179
- #
180
- # The `with_first_parameter` style aligns the following lines along the same
181
- # column as the first parameter.
182
- #
183
- # method_call(a,
184
- # b)
185
- #
186
- # The `with_fixed_indentation` style aligns the following lines with one
187
- # level of indentation relative to the start of the line with the method call.
188
- #
189
- # method_call(a,
190
- # b)
191
- EnforcedStyle: with_fixed_indentation
192
- SupportedStyles:
193
- - with_first_parameter
194
- - with_fixed_indentation
195
-
196
- # Checks the indentation of the first element in an array literal.
197
- Layout/IndentArray:
198
- # The value `special_inside_parentheses` means that array literals with
199
- # brackets that have their opening bracket on the same line as a surrounding
200
- # opening round parenthesis, shall have their first element indented relative
201
- # to the first position inside the parenthesis.
202
- #
203
- # The value `consistent` means that the indentation of the first element shall
204
- # always be relative to the first position of the line where the opening
205
- # bracket is.
206
- #
207
- # The value `align_brackets` means that the indentation of the first element
208
- # shall always be relative to the position of the opening bracket.
209
- EnforcedStyle: consistent
210
- SupportedStyles:
211
- - special_inside_parentheses
212
- - consistent
213
- - align_brackets
214
- # By default, the indentation width from Style/IndentationWidth is used
215
- # But it can be overridden by setting this parameter
216
- IndentationWidth: ~
217
-
218
- # Checks the indentation of the first key in a hash literal.
219
- Layout/IndentHash:
220
- # The value `special_inside_parentheses` means that hash literals with braces
221
- # that have their opening brace on the same line as a surrounding opening
222
- # round parenthesis, shall have their first key indented relative to the
223
- # first position inside the parenthesis.
224
- #
225
- # The value `consistent` means that the indentation of the first key shall
226
- # always be relative to the first position of the line where the opening
227
- # brace is.
228
- #
229
- # The value `align_braces` means that the indentation of the first key shall
230
- # always be relative to the position of the opening brace.
231
- EnforcedStyle: consistent
232
- SupportedStyles:
233
- - special_inside_parentheses
234
- - consistent
235
- - align_braces
236
- # By default, the indentation width from Style/IndentationWidth is used
237
- # But it can be overridden by setting this parameter
238
- IndentationWidth: ~
49
+ Style/NumericLiterals:
50
+ Exclude:
51
+ - "spec/**/*"
239
52
 
240
- Layout/SpaceBeforeFirstArg:
241
- # When true, allows most uses of extra spacing if the intent is to align
242
- # things with the previous or next line, not counting empty lines or comment
243
- # lines.
244
- AllowForAlignment: false
53
+ Layout/LineLength:
54
+ Max: 120
245
55
 
246
56
  Layout/SpaceAroundBlockParameters:
247
57
  EnforcedStyleInsidePipes: no_space
@@ -249,137 +59,74 @@ Layout/SpaceAroundBlockParameters:
249
59
  Layout/SpaceInsideHashLiteralBraces:
250
60
  EnforcedStyle: no_space
251
61
  EnforcedStyleForEmptyBraces: no_space
252
- SupportedStyles:
253
- - space
254
- - no_space
255
- # 'compact' normally requires a space inside hash braces, with the exception
256
- # that successive left braces or right braces are collapsed together
257
- - compact
258
62
 
259
63
  Layout/MultilineMethodCallIndentation:
260
64
  EnforcedStyle: indented
261
- SupportedStyles:
262
- - aligned
263
- - indented
264
- - indented_relative_to_receiver
265
- # By default, the indentation width from Layout/IndentationWidth is used
266
- # But it can be overridden by setting this parameter
267
65
  IndentationWidth: ~
268
66
 
269
67
  Layout/MultilineOperationIndentation:
270
68
  EnforcedStyle: indented
271
- SupportedStyles:
272
- - aligned
273
- - indented
274
- # By default, the indentation width from Style/IndentationWidth is used
275
- # But it can be overridden by setting this parameter
276
69
  IndentationWidth: ~
277
70
 
278
- ##################### Metrics ##################################
279
-
280
- Metrics/LineLength:
281
- # Default: 80
282
- Max: 120
71
+ Metrics/AbcSize:
72
+ Max: 25
73
+ CountRepeatedAttributes: false
283
74
 
284
75
  Metrics/MethodLength:
285
- # Default: 10
286
76
  Max: 15
287
77
 
288
78
  Metrics/BlockLength:
289
79
  Exclude:
290
- - 'Rakefile'
291
- - '**/*.gemspec'
292
- - '**/*.rake'
293
- - 'spec/**/*.rb'
294
-
295
- ##################### Lint ##################################
80
+ - "Rakefile"
81
+ - "**/*.gemspec"
82
+ - "**/*.rake"
83
+ - "spec/**/*.rb"
296
84
 
297
- # https://rubocop.readthedocs.io/en/latest/cops_lint/#lintambiguousblockassociation
298
85
  Lint/AmbiguousBlockAssociation:
299
86
  Enabled: false
300
87
 
301
- Lint/InheritException:
302
- # The default base class in favour of `Exception`.
303
- EnforcedStyle: standard_error
304
- SupportedStyles:
305
- - runtime_error
306
- - standard_error
307
-
308
- ##################### Rails ##################################
309
-
310
- # NOT IMPLEMENTED YET
311
- # Rails/EnumUniqueness:
312
- # Include:
313
- # - app/models/**/*.rb
314
-
315
- ##################### RSpec ##################################
88
+ Lint/StructNewOverride:
89
+ Exclude:
90
+ - "lib/sidekiq/prometheus/exporter/standard.rb"
316
91
 
317
- # Disabled because we want to adjust it and allow to use it
318
92
  RSpec/AnyInstance:
319
93
  Enabled: false
320
94
 
321
- # Allow only `when` prefix
322
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L51
323
95
  RSpec/ContextWording:
324
96
  Prefixes:
325
97
  - when
326
98
 
327
- Layout/DefEndAlignment:
328
- # The value `def` means that `end` should be aligned with the def keyword.
329
- # The value `start_of_line` means that `end` should be aligned with method
330
- # calls like `private`, `public`, etc, if present in front of the `def`
331
- # keyword on the same line.
332
- EnforcedStyleAlignWith: start_of_line
333
- AutoCorrect: false
334
-
335
- # Disabled because we want to adjust it and allow to use it
336
- # and allow just to write a normal description
337
99
  RSpec/DescribeMethod:
338
100
  Enabled: false
339
101
 
340
- # Allow only for inline test cases
341
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L122
342
102
  RSpec/ExampleWithoutDescription:
343
103
  EnforcedStyle: single_line_only
344
104
 
345
- # Disabled because we want to adjust it and allow to use it with
346
- # better names, not everything is squashed
347
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L169
348
105
  RSpec/FilePath:
349
106
  Enabled: false
350
107
 
351
- # Don't run check because no implicit expectations are allowed
352
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L193
353
108
  RSpec/ImplicitExpect:
354
109
  Enabled: false
355
110
 
356
- # Disabled because we want to adjust it and allow to use it with the
357
- # option to check that it's the latest item in the context `let`s
358
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L227
359
111
  RSpec/LeadingSubject:
360
112
  Enabled: false
361
113
 
362
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L247
363
114
  RSpec/MessageExpectation:
364
115
  Enabled: true
365
116
 
366
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L275
367
117
  RSpec/MultipleExpectations:
368
118
  Enabled: true
369
- # Default: 1
370
119
  Max: 5
371
120
 
372
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L292
121
+ RSpec/MultipleMemoizedHelpers:
122
+ Max: 7
123
+
373
124
  RSpec/NestedGroups:
374
- Description: Checks for nested example groups.
375
125
  Enabled: true
376
- # Default: 3
377
126
  Max: 4
378
127
 
379
- # https://github.com/rubocop-hq/rubocop-rspec/blob/c1fd129a59e650b8af518ae2e62848aa7eb8498e/config/default.yml#L366
380
128
  RSpec/ScatteredSetup:
381
129
  Enabled: true
382
130
 
383
- # Enable in future
384
- FactoryBot/AttributeDefinedStatically:
131
+ Rake/Desc:
385
132
  Enabled: false
data/Appraisals CHANGED
@@ -1,6 +1,7 @@
1
1
  appraise 'sidekiq-3.3.1' do
2
2
  gem 'slim'
3
- gem 'redis', '>= 3.3.5'
3
+ gem 'redis', '~> 3.3'
4
+ gem 'redis-namespace', '< 1.7.0'
4
5
  gem 'sinatra'
5
6
  gem 'concurrent-ruby'
6
7
  gem 'sidekiq', '= 3.3.1'
@@ -8,18 +9,30 @@ end
8
9
 
9
10
  appraise 'sidekiq-3.x' do
10
11
  gem 'slim'
11
- gem 'redis', '>= 3.3.5'
12
+ gem 'redis', '~> 3.3'
13
+ gem 'redis-namespace', '< 1.7.0'
12
14
  gem 'sinatra'
13
15
  gem 'concurrent-ruby'
14
16
  gem 'sidekiq', '~> 3.0'
15
17
  end
16
18
 
17
19
  appraise 'sidekiq-4.x' do
18
- gem 'redis', '>= 3.3.5'
20
+ gem 'redis', '~> 3.3'
19
21
  gem 'sidekiq', '~> 4.0'
20
22
  end
21
23
 
22
24
  appraise 'sidekiq-5.x' do
23
- gem 'redis', '>= 3.3.5'
25
+ gem 'redis', '~> 3.3'
24
26
  gem 'sidekiq', '~> 5.0'
25
27
  end
28
+
29
+ appraise 'sidekiq-6.x' do
30
+ gem 'redis', '~> 4.1'
31
+ gem 'sidekiq', '~> 6.0'
32
+ end
33
+
34
+ appraise 'sidekiq-latest' do
35
+ gem 'rack', '>= 2', github: 'rack/rack'
36
+ gem 'redis', '>= 4', github: 'redis/redis-rb'
37
+ gem 'sidekiq', '>= 6', github: 'mperham/sidekiq'
38
+ end