gitlab-mail_room 0.0.7 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/.gitlab-ci.yml +7 -7
  3. data/.rubocop.yml +5 -0
  4. data/.rubocop_todo.yml +501 -0
  5. data/.ruby-version +1 -1
  6. data/.travis.yml +12 -5
  7. data/README.md +104 -10
  8. data/Rakefile +1 -1
  9. data/lib/mail_room.rb +2 -0
  10. data/lib/mail_room/arbitration/redis.rb +1 -1
  11. data/lib/mail_room/cli.rb +1 -1
  12. data/lib/mail_room/configuration.rb +11 -1
  13. data/lib/mail_room/connection.rb +6 -182
  14. data/lib/mail_room/coordinator.rb +8 -4
  15. data/lib/mail_room/crash_handler.rb +2 -2
  16. data/lib/mail_room/delivery/letter_opener.rb +1 -1
  17. data/lib/mail_room/health_check.rb +60 -0
  18. data/lib/mail_room/imap.rb +8 -0
  19. data/lib/mail_room/imap/connection.rb +200 -0
  20. data/lib/mail_room/imap/message.rb +19 -0
  21. data/lib/mail_room/logger/structured.rb +15 -1
  22. data/lib/mail_room/mailbox.rb +61 -21
  23. data/lib/mail_room/mailbox_watcher.rb +15 -2
  24. data/lib/mail_room/message.rb +16 -0
  25. data/lib/mail_room/microsoft_graph.rb +7 -0
  26. data/lib/mail_room/microsoft_graph/connection.rb +217 -0
  27. data/lib/mail_room/version.rb +1 -1
  28. data/mail_room.gemspec +6 -0
  29. data/spec/fixtures/test_config.yml +3 -0
  30. data/spec/lib/cli_spec.rb +6 -6
  31. data/spec/lib/configuration_spec.rb +10 -2
  32. data/spec/lib/coordinator_spec.rb +16 -2
  33. data/spec/lib/delivery/letter_opener_spec.rb +2 -2
  34. data/spec/lib/delivery/logger_spec.rb +1 -1
  35. data/spec/lib/delivery/postback_spec.rb +11 -11
  36. data/spec/lib/health_check_spec.rb +57 -0
  37. data/spec/lib/{connection_spec.rb → imap/connection_spec.rb} +12 -8
  38. data/spec/lib/imap/message_spec.rb +36 -0
  39. data/spec/lib/logger/structured_spec.rb +34 -2
  40. data/spec/lib/mailbox_spec.rb +75 -27
  41. data/spec/lib/mailbox_watcher_spec.rb +54 -38
  42. data/spec/lib/message_spec.rb +35 -0
  43. data/spec/lib/microsoft_graph/connection_spec.rb +190 -0
  44. data/spec/spec_helper.rb +14 -3
  45. metadata +92 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e292b944039730eb7a2e51d8f878aba00921a827e11af32a17d1c1bb68e460ed
4
- data.tar.gz: aec54302a613d21a4156bfadcd81beae514a08e8ab137177af8d86cf60e191e3
3
+ metadata.gz: d894cd7c411ae358d57bbf83b19f968283d57bc7a933b08372dfa7f4bdae8c3d
4
+ data.tar.gz: cc58d74e461dd0d727377a0dcb5716270c82f54046cce532bf3b4a4766759fe7
5
5
  SHA512:
6
- metadata.gz: c417220205744707fbe7c8b2bcb837abb1f7fbc07e5ec13fe04656d101f5eb0dbb80146fd5cfa1bbfe936c9dc2b8a4c331de5718ea8a4f0c2505173903713533
7
- data.tar.gz: 7171e962dbf1e20e574bfbb26ad803ffa8dbfaecda7831c3a1f22faa11e9fe33ab093ae48a72ace3342e8bfe833010e3d15b700b869f0e369b6929865a0cd40d
6
+ metadata.gz: c83273f42748dd42813b3614a677de3fdfcaf0939b39a04a2be85208b3ded8e8df274db2c29e9fad6f429f688e5fe42266a98a5b52eae21dfe425d318b8258b0
7
+ data.tar.gz: da92b942d53c0b675b803b251d438556a0fd2bb740a75ccfe748a1068cb035a7462966d3a7bac39e979cee2a2b85ae0d4d210e833f89b53a4a4d032634b5e71c
data/.gitlab-ci.yml CHANGED
@@ -10,7 +10,7 @@ services:
10
10
  variables:
11
11
  REDIS_URL: redis://redis:6379
12
12
  script:
13
- - bundle exec rspec spec
13
+ - bundle exec rspec spec
14
14
  before_script:
15
15
  - apt update && apt install -y libicu-dev
16
16
  - ruby -v # Print out ruby version for debugging
@@ -19,14 +19,14 @@ services:
19
19
  - gem install bundler --no-document # Bundler is not installed with the image
20
20
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
21
21
 
22
- rspec-2.4:
23
- image: "ruby:2.4"
22
+ rspec-2.6:
23
+ image: "ruby:2.6"
24
24
  <<: *test
25
25
 
26
- rspec-2.5:
27
- image: "ruby:2.5"
26
+ rspec-2.7:
27
+ image: "ruby:2.7"
28
28
  <<: *test
29
29
 
30
- rspec-2.6:
31
- image: "ruby:2.6"
30
+ rspec-3.0:
31
+ image: "ruby:3.0"
32
32
  <<: *test
data/.rubocop.yml ADDED
@@ -0,0 +1,5 @@
1
+ inherit_from: .rubocop_todo.yml
2
+
3
+ Style/HashSyntax:
4
+ Enabled: true
5
+ EnforcedStyle: ruby19_no_mixed_keys
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,501 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2021-04-26 06:46:39 UTC using RuboCop version 1.11.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 5
10
+ # Cop supports --auto-correct.
11
+ # Configuration parameters: TreatCommentsAsGroupSeparators, ConsiderPunctuation, Include.
12
+ # Include: **/*.gemspec
13
+ Gemspec/OrderedDependencies:
14
+ Exclude:
15
+ - 'mail_room.gemspec'
16
+
17
+ # Offense count: 1
18
+ # Configuration parameters: Include.
19
+ # Include: **/*.gemspec
20
+ Gemspec/RequiredRubyVersion:
21
+ Exclude:
22
+ - 'mail_room.gemspec'
23
+
24
+ # Offense count: 4
25
+ # Cop supports --auto-correct.
26
+ Layout/BlockEndNewline:
27
+ Exclude:
28
+ - 'spec/lib/delivery/postback_spec.rb'
29
+ - 'spec/lib/delivery/que_spec.rb'
30
+
31
+ # Offense count: 5
32
+ # Cop supports --auto-correct.
33
+ # Configuration parameters: EnforcedStyle, IndentOneStep, IndentationWidth.
34
+ # SupportedStyles: case, end
35
+ Layout/CaseIndentation:
36
+ Exclude:
37
+ - 'lib/mail_room/mailbox.rb'
38
+
39
+ # Offense count: 1
40
+ # Cop supports --auto-correct.
41
+ Layout/EmptyLineAfterMagicComment:
42
+ Exclude:
43
+ - 'mail_room.gemspec'
44
+
45
+ # Offense count: 2
46
+ # Cop supports --auto-correct.
47
+ # Configuration parameters: EnforcedStyle.
48
+ # SupportedStyles: around, only_before
49
+ Layout/EmptyLinesAroundAccessModifier:
50
+ Exclude:
51
+ - 'lib/mail_room/coordinator.rb'
52
+ - 'lib/mail_room/delivery/que.rb'
53
+
54
+ # Offense count: 4
55
+ # Cop supports --auto-correct.
56
+ # Configuration parameters: EnforcedStyle.
57
+ # SupportedStyles: empty_lines, no_empty_lines
58
+ Layout/EmptyLinesAroundBlockBody:
59
+ Exclude:
60
+ - 'spec/lib/crash_handler_spec.rb'
61
+ - 'spec/lib/delivery/sidekiq_spec.rb'
62
+ - 'spec/lib/logger/structured_spec.rb'
63
+
64
+ # Offense count: 1
65
+ # Cop supports --auto-correct.
66
+ # Configuration parameters: EnforcedStyle.
67
+ # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines, beginning_only, ending_only
68
+ Layout/EmptyLinesAroundClassBody:
69
+ Exclude:
70
+ - 'lib/mail_room/logger/structured.rb'
71
+
72
+ # Offense count: 13
73
+ # Cop supports --auto-correct.
74
+ # Configuration parameters: EnforcedStyle, IndentationWidth.
75
+ # SupportedStyles: special_inside_parentheses, consistent, align_braces
76
+ Layout/FirstHashElementIndentation:
77
+ Exclude:
78
+ - 'spec/lib/delivery/postback_spec.rb'
79
+ - 'spec/lib/delivery/que_spec.rb'
80
+ - 'spec/lib/logger/structured_spec.rb'
81
+
82
+ # Offense count: 5
83
+ # Cop supports --auto-correct.
84
+ # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
85
+ # SupportedHashRocketStyles: key, separator, table
86
+ # SupportedColonStyles: key, separator, table
87
+ # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
88
+ Layout/HashAlignment:
89
+ Exclude:
90
+ - 'lib/mail_room/delivery/sidekiq.rb'
91
+
92
+ # Offense count: 2
93
+ # Cop supports --auto-correct.
94
+ # Configuration parameters: AllowDoxygenCommentStyle, AllowGemfileRubyComment.
95
+ Layout/LeadingCommentSpace:
96
+ Exclude:
97
+ - 'lib/mail_room/mailbox.rb'
98
+ - 'spec/lib/arbitration/redis_spec.rb'
99
+
100
+ # Offense count: 4
101
+ # Cop supports --auto-correct.
102
+ Layout/MultilineBlockLayout:
103
+ Exclude:
104
+ - 'spec/lib/delivery/postback_spec.rb'
105
+ - 'spec/lib/delivery/que_spec.rb'
106
+
107
+ # Offense count: 3
108
+ # Cop supports --auto-correct.
109
+ # Configuration parameters: EnforcedStyle.
110
+ # SupportedStyles: space, no_space
111
+ Layout/SpaceAroundEqualsInParameterDefault:
112
+ Exclude:
113
+ - 'lib/mail_room/configuration.rb'
114
+ - 'lib/mail_room/crash_handler.rb'
115
+ - 'lib/mail_room/mailbox.rb'
116
+
117
+ # Offense count: 2
118
+ # Cop supports --auto-correct.
119
+ Layout/SpaceAroundKeyword:
120
+ Exclude:
121
+ - 'lib/mail_room/coordinator.rb'
122
+ - 'lib/mail_room/mailbox_watcher.rb'
123
+
124
+ # Offense count: 2
125
+ # Cop supports --auto-correct.
126
+ # Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
127
+ # SupportedStylesForExponentOperator: space, no_space
128
+ Layout/SpaceAroundOperators:
129
+ Exclude:
130
+ - 'lib/mail_room/mailbox.rb'
131
+ - 'spec/lib/arbitration/redis_spec.rb'
132
+
133
+ # Offense count: 7
134
+ # Cop supports --auto-correct.
135
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
136
+ # SupportedStyles: space, no_space
137
+ # SupportedStylesForEmptyBraces: space, no_space
138
+ Layout/SpaceBeforeBlockBraces:
139
+ Exclude:
140
+ - 'mail_room.gemspec'
141
+ - 'spec/lib/crash_handler_spec.rb'
142
+ - 'spec/lib/mailbox_spec.rb'
143
+
144
+ # Offense count: 50
145
+ # Cop supports --auto-correct.
146
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
147
+ # SupportedStyles: space, no_space
148
+ # SupportedStylesForEmptyBraces: space, no_space
149
+ Layout/SpaceInsideBlockBraces:
150
+ Exclude:
151
+ - 'lib/mail_room/coordinator.rb'
152
+ - 'spec/lib/cli_spec.rb'
153
+ - 'spec/lib/configuration_spec.rb'
154
+ - 'spec/lib/delivery/letter_opener_spec.rb'
155
+ - 'spec/lib/delivery/logger_spec.rb'
156
+ - 'spec/lib/delivery/postback_spec.rb'
157
+ - 'spec/lib/delivery/que_spec.rb'
158
+ - 'spec/lib/imap/connection_spec.rb'
159
+ - 'spec/lib/mailbox_watcher_spec.rb'
160
+
161
+ # Offense count: 34
162
+ # Cop supports --auto-correct.
163
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
164
+ # SupportedStyles: space, no_space, compact
165
+ # SupportedStylesForEmptyBraces: space, no_space
166
+ Layout/SpaceInsideHashLiteralBraces:
167
+ Exclude:
168
+ - 'lib/mail_room/arbitration/redis.rb'
169
+ - 'lib/mail_room/mailbox.rb'
170
+ - 'spec/lib/cli_spec.rb'
171
+ - 'spec/lib/mailbox_spec.rb'
172
+
173
+ # Offense count: 1
174
+ # Cop supports --auto-correct.
175
+ # Configuration parameters: EnforcedStyle.
176
+ # SupportedStyles: space, no_space
177
+ Layout/SpaceInsideParens:
178
+ Exclude:
179
+ - 'spec/lib/logger/structured_spec.rb'
180
+
181
+ # Offense count: 1
182
+ # Cop supports --auto-correct.
183
+ # Configuration parameters: EnforcedStyle.
184
+ # SupportedStyles: final_newline, final_blank_line
185
+ Layout/TrailingEmptyLines:
186
+ Exclude:
187
+ - 'spec/lib/delivery/letter_opener_spec.rb'
188
+
189
+ # Offense count: 7
190
+ # Cop supports --auto-correct.
191
+ # Configuration parameters: AllowInHeredoc.
192
+ Layout/TrailingWhitespace:
193
+ Exclude:
194
+ - 'lib/mail_room/coordinator.rb'
195
+ - 'lib/mail_room/imap.rb'
196
+ - 'spec/lib/coordinator_spec.rb'
197
+ - 'spec/lib/delivery/postback_spec.rb'
198
+
199
+ # Offense count: 5
200
+ # Configuration parameters: AllowedMethods.
201
+ # AllowedMethods: enums
202
+ Lint/ConstantDefinitionInBlock:
203
+ Exclude:
204
+ - 'lib/mail_room/mailbox.rb'
205
+
206
+ # Offense count: 1
207
+ Lint/RescueException:
208
+ Exclude:
209
+ - 'lib/mail_room/cli.rb'
210
+
211
+ # Offense count: 1
212
+ # Cop supports --auto-correct.
213
+ # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods.
214
+ Lint/UnusedMethodArgument:
215
+ Exclude:
216
+ - 'lib/mail_room/logger/structured.rb'
217
+
218
+ # Offense count: 4
219
+ # Configuration parameters: IgnoredMethods, CountRepeatedAttributes.
220
+ Metrics/AbcSize:
221
+ Max: 27
222
+
223
+ # Offense count: 27
224
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
225
+ # IgnoredMethods: refine
226
+ Metrics/BlockLength:
227
+ Max: 145
228
+
229
+ # Offense count: 3
230
+ # Configuration parameters: CountComments, CountAsOne.
231
+ Metrics/ClassLength:
232
+ Max: 151
233
+
234
+ # Offense count: 1
235
+ # Configuration parameters: IgnoredMethods.
236
+ Metrics/CyclomaticComplexity:
237
+ Max: 8
238
+
239
+ # Offense count: 13
240
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
241
+ Metrics/MethodLength:
242
+ Max: 22
243
+
244
+ # Offense count: 1
245
+ # Configuration parameters: CountComments, CountAsOne.
246
+ Metrics/ModuleLength:
247
+ Max: 172
248
+
249
+ # Offense count: 1
250
+ Naming/AccessorMethodName:
251
+ Exclude:
252
+ - 'lib/mail_room/configuration.rb'
253
+
254
+ # Offense count: 1
255
+ # Cop supports --auto-correct.
256
+ Security/YAMLLoad:
257
+ Exclude:
258
+ - 'lib/mail_room/configuration.rb'
259
+
260
+ # Offense count: 2
261
+ # Configuration parameters: EnforcedStyle, AllowModifiersOnSymbols.
262
+ # SupportedStyles: inline, group
263
+ Style/AccessModifierDeclarations:
264
+ Exclude:
265
+ - 'lib/mail_room/arbitration.rb'
266
+ - 'lib/mail_room/delivery.rb'
267
+
268
+ # Offense count: 1
269
+ # Cop supports --auto-correct.
270
+ # Configuration parameters: EnforcedStyle.
271
+ # SupportedStyles: prefer_alias, prefer_alias_method
272
+ Style/Alias:
273
+ Exclude:
274
+ - 'lib/mail_room/coordinator.rb'
275
+
276
+ # Offense count: 14
277
+ # Cop supports --auto-correct.
278
+ # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
279
+ # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
280
+ # ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
281
+ # FunctionalMethods: let, let!, subject, watch
282
+ # IgnoredMethods: lambda, proc, it
283
+ Style/BlockDelimiters:
284
+ Exclude:
285
+ - 'spec/lib/arbitration/redis_spec.rb'
286
+ - 'spec/lib/delivery/postback_spec.rb'
287
+ - 'spec/lib/delivery/que_spec.rb'
288
+ - 'spec/lib/delivery/sidekiq_spec.rb'
289
+
290
+ # Offense count: 12
291
+ Style/Documentation:
292
+ Exclude:
293
+ - 'spec/**/*'
294
+ - 'test/**/*'
295
+ - 'lib/mail_room.rb'
296
+ - 'lib/mail_room/arbitration.rb'
297
+ - 'lib/mail_room/arbitration/noop.rb'
298
+ - 'lib/mail_room/arbitration/redis.rb'
299
+ - 'lib/mail_room/connection.rb'
300
+ - 'lib/mail_room/crash_handler.rb'
301
+ - 'lib/mail_room/delivery.rb'
302
+ - 'lib/mail_room/imap/connection.rb'
303
+ - 'lib/mail_room/imap/message.rb'
304
+ - 'lib/mail_room/logger/structured.rb'
305
+ - 'lib/mail_room/message.rb'
306
+ - 'lib/mail_room/microsoft_graph/connection.rb'
307
+
308
+ # Offense count: 2
309
+ # Cop supports --auto-correct.
310
+ # Configuration parameters: EnforcedStyle.
311
+ # SupportedStyles: compact, expanded
312
+ Style/EmptyMethod:
313
+ Exclude:
314
+ - 'lib/mail_room/arbitration/noop.rb'
315
+ - 'lib/mail_room/delivery/noop.rb'
316
+
317
+ # Offense count: 1
318
+ # Cop supports --auto-correct.
319
+ Style/Encoding:
320
+ Exclude:
321
+ - 'mail_room.gemspec'
322
+
323
+ # Offense count: 2
324
+ # Cop supports --auto-correct.
325
+ Style/ExpandPathArguments:
326
+ Exclude:
327
+ - 'mail_room.gemspec'
328
+ - 'spec/spec_helper.rb'
329
+
330
+ # Offense count: 38
331
+ # Cop supports --auto-correct.
332
+ # Configuration parameters: EnforcedStyle.
333
+ # SupportedStyles: always, always_true, never
334
+ Style/FrozenStringLiteralComment:
335
+ Enabled: false
336
+
337
+ # Offense count: 5
338
+ # Cop supports --auto-correct.
339
+ Style/GlobalStdStream:
340
+ Exclude:
341
+ - 'lib/mail_room/crash_handler.rb'
342
+ - 'lib/mail_room/delivery/logger.rb'
343
+ - 'lib/mail_room/mailbox.rb'
344
+ - 'spec/lib/delivery/logger_spec.rb'
345
+
346
+ # Offense count: 3
347
+ # Configuration parameters: MinBodyLength.
348
+ Style/GuardClause:
349
+ Exclude:
350
+ - 'lib/mail_room/configuration.rb'
351
+ - 'lib/mail_room/imap/connection.rb'
352
+ - 'lib/mail_room/mailbox_watcher.rb'
353
+
354
+ # Offense count: 1
355
+ # Cop supports --auto-correct.
356
+ # Configuration parameters: EnforcedStyle, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
357
+ # SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
358
+ Style/HashSyntax:
359
+ Exclude:
360
+ - 'spec/lib/microsoft_graph/connection_spec.rb'
361
+
362
+ # Offense count: 1
363
+ # Cop supports --auto-correct.
364
+ Style/IfUnlessModifier:
365
+ Exclude:
366
+ - 'lib/mail_room/mailbox_watcher.rb'
367
+
368
+ # Offense count: 5
369
+ # Cop supports --auto-correct.
370
+ # Configuration parameters: EnforcedStyle.
371
+ # SupportedStyles: literals, strict
372
+ Style/MutableConstant:
373
+ Exclude:
374
+ - 'lib/mail_room/crash_handler.rb'
375
+ - 'lib/mail_room/mailbox.rb'
376
+ - 'lib/mail_room/version.rb'
377
+ - 'spec/spec_helper.rb'
378
+
379
+ # Offense count: 1
380
+ # Cop supports --auto-correct.
381
+ # Configuration parameters: EnforcedStyle, IgnoredMethods.
382
+ # SupportedStyles: predicate, comparison
383
+ Style/NumericPredicate:
384
+ Exclude:
385
+ - 'spec/**/*'
386
+ - 'lib/mail_room/imap/connection.rb'
387
+
388
+ # Offense count: 2
389
+ # Cop supports --auto-correct.
390
+ # Configuration parameters: EnforcedStyle.
391
+ # SupportedStyles: short, verbose
392
+ Style/PreferredHashMethods:
393
+ Exclude:
394
+ - 'lib/mail_room/configuration.rb'
395
+ - 'lib/mail_room/mailbox.rb'
396
+
397
+ # Offense count: 1
398
+ # Cop supports --auto-correct.
399
+ # Configuration parameters: EnforcedStyle, AllowedCompactTypes.
400
+ # SupportedStyles: compact, exploded
401
+ Style/RaiseArgs:
402
+ Exclude:
403
+ - 'lib/mail_room/logger/structured.rb'
404
+
405
+ # Offense count: 2
406
+ # Cop supports --auto-correct.
407
+ Style/RedundantPercentQ:
408
+ Exclude:
409
+ - 'mail_room.gemspec'
410
+
411
+ # Offense count: 7
412
+ # Cop supports --auto-correct.
413
+ Style/RedundantSelf:
414
+ Exclude:
415
+ - 'lib/mail_room/configuration.rb'
416
+ - 'lib/mail_room/coordinator.rb'
417
+ - 'lib/mail_room/mailbox.rb'
418
+ - 'lib/mail_room/mailbox_watcher.rb'
419
+
420
+ # Offense count: 1
421
+ # Cop supports --auto-correct.
422
+ # Configuration parameters: EnforcedStyle.
423
+ # SupportedStyles: implicit, explicit
424
+ Style/RescueStandardError:
425
+ Exclude:
426
+ - 'lib/mail_room/configuration.rb'
427
+
428
+ # Offense count: 1
429
+ # Cop supports --auto-correct.
430
+ # Configuration parameters: ConvertCodeThatCanStartToReturnNil, AllowedMethods.
431
+ # AllowedMethods: present?, blank?, presence, try, try!
432
+ Style/SafeNavigation:
433
+ Exclude:
434
+ - 'lib/mail_room/mailbox_watcher.rb'
435
+
436
+ # Offense count: 1
437
+ # Cop supports --auto-correct.
438
+ # Configuration parameters: EnforcedStyle.
439
+ # SupportedStyles: use_perl_names, use_english_names
440
+ Style/SpecialGlobalVars:
441
+ Exclude:
442
+ - 'mail_room.gemspec'
443
+
444
+ # Offense count: 1
445
+ # Cop supports --auto-correct.
446
+ Style/StringConcatenation:
447
+ Exclude:
448
+ - 'lib/mail_room/logger/structured.rb'
449
+
450
+ # Offense count: 135
451
+ # Cop supports --auto-correct.
452
+ # Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
453
+ # SupportedStyles: single_quotes, double_quotes
454
+ Style/StringLiterals:
455
+ Enabled: false
456
+
457
+ # Offense count: 4
458
+ # Cop supports --auto-correct.
459
+ # Configuration parameters: EnforcedStyle, MinSize.
460
+ # SupportedStyles: percent, brackets
461
+ Style/SymbolArray:
462
+ Exclude:
463
+ - 'lib/mail_room/mailbox.rb'
464
+ - 'spec/lib/logger/structured_spec.rb'
465
+
466
+ # Offense count: 2
467
+ # Cop supports --auto-correct.
468
+ # Configuration parameters: EnforcedStyleForMultiline.
469
+ # SupportedStylesForMultiline: comma, consistent_comma, no_comma
470
+ Style/TrailingCommaInHashLiteral:
471
+ Exclude:
472
+ - 'spec/lib/mailbox_spec.rb'
473
+ - 'spec/spec_helper.rb'
474
+
475
+ # Offense count: 1
476
+ # Cop supports --auto-correct.
477
+ Style/WhileUntilDo:
478
+ Exclude:
479
+ - 'lib/mail_room/mailbox_watcher.rb'
480
+
481
+ # Offense count: 2
482
+ # Cop supports --auto-correct.
483
+ Style/WhileUntilModifier:
484
+ Exclude:
485
+ - 'lib/mail_room/coordinator.rb'
486
+ - 'lib/mail_room/mailbox_watcher.rb'
487
+
488
+ # Offense count: 3
489
+ # Cop supports --auto-correct.
490
+ # Configuration parameters: WordRegex.
491
+ # SupportedStyles: percent, brackets
492
+ Style/WordArray:
493
+ EnforcedStyle: percent
494
+ MinSize: 3
495
+
496
+ # Offense count: 6
497
+ # Cop supports --auto-correct.
498
+ # Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
499
+ # URISchemes: http, https
500
+ Layout/LineLength:
501
+ Max: 177