word_search 0.1.0

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 (66) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +29 -0
  3. data/.gitignore +11 -0
  4. data/.rspec +3 -0
  5. data/.rubocop.yml +1166 -0
  6. data/.ruby-version +1 -0
  7. data/.travis.yml +5 -0
  8. data/Gemfile +3 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +61 -0
  11. data/Rakefile +14 -0
  12. data/bin/console +8 -0
  13. data/bin/coverage +1 -0
  14. data/bin/setup +6 -0
  15. data/lib/word_search/generator/base.rb +28 -0
  16. data/lib/word_search/generator.rb +60 -0
  17. data/lib/word_search/plane/base.rb +52 -0
  18. data/lib/word_search/plane.rb +22 -0
  19. data/lib/word_search/position_word/base.rb +98 -0
  20. data/lib/word_search/solver.rb +15 -0
  21. data/lib/word_search/three_dimensional/direction.rb +37 -0
  22. data/lib/word_search/three_dimensional/generator.rb +35 -0
  23. data/lib/word_search/three_dimensional/plane.rb +89 -0
  24. data/lib/word_search/three_dimensional/point.rb +15 -0
  25. data/lib/word_search/three_dimensional/position_word.rb +29 -0
  26. data/lib/word_search/two_dimensional/direction.rb +17 -0
  27. data/lib/word_search/two_dimensional/generator.rb +35 -0
  28. data/lib/word_search/two_dimensional/plane.rb +57 -0
  29. data/lib/word_search/two_dimensional/point.rb +14 -0
  30. data/lib/word_search/two_dimensional/position_word.rb +28 -0
  31. data/lib/word_search/version.rb +3 -0
  32. data/lib/word_search/word_bank.rb +45 -0
  33. data/lib/word_search.rb +30 -0
  34. data/vendor/cache/activemodel-5.0.0.1.gem +0 -0
  35. data/vendor/cache/activesupport-5.0.0.1.gem +0 -0
  36. data/vendor/cache/ast-2.2.0.gem +0 -0
  37. data/vendor/cache/codeclimate-test-reporter-0.6.0.gem +0 -0
  38. data/vendor/cache/coderay-1.1.1.gem +0 -0
  39. data/vendor/cache/concurrent-ruby-1.0.2.gem +0 -0
  40. data/vendor/cache/diff-lcs-1.2.5.gem +0 -0
  41. data/vendor/cache/docile-1.1.5.gem +0 -0
  42. data/vendor/cache/i18n-0.7.0.gem +0 -0
  43. data/vendor/cache/json-2.0.2.gem +0 -0
  44. data/vendor/cache/method_source-0.8.2.gem +0 -0
  45. data/vendor/cache/minitest-5.9.0.gem +0 -0
  46. data/vendor/cache/parser-2.3.1.2.gem +0 -0
  47. data/vendor/cache/powerpack-0.1.1.gem +0 -0
  48. data/vendor/cache/pry-0.10.4.gem +0 -0
  49. data/vendor/cache/rainbow-2.1.0.gem +0 -0
  50. data/vendor/cache/rake-10.5.0.gem +0 -0
  51. data/vendor/cache/rspec-3.5.0.gem +0 -0
  52. data/vendor/cache/rspec-core-3.5.2.gem +0 -0
  53. data/vendor/cache/rspec-expectations-3.5.0.gem +0 -0
  54. data/vendor/cache/rspec-mocks-3.5.0.gem +0 -0
  55. data/vendor/cache/rspec-support-3.5.0.gem +0 -0
  56. data/vendor/cache/rubocop-0.42.0.gem +0 -0
  57. data/vendor/cache/ruby-enum-0.5.0.gem +0 -0
  58. data/vendor/cache/ruby-progressbar-1.8.1.gem +0 -0
  59. data/vendor/cache/simplecov-0.12.0.gem +0 -0
  60. data/vendor/cache/simplecov-html-0.10.0.gem +0 -0
  61. data/vendor/cache/slop-3.6.0.gem +0 -0
  62. data/vendor/cache/thread_safe-0.3.5.gem +0 -0
  63. data/vendor/cache/tzinfo-1.2.2.gem +0 -0
  64. data/vendor/cache/unicode-display_width-1.0.5.gem +0 -0
  65. data/word_search.gemspec +35 -0
  66. metadata +248 -0
data/.rubocop.yml ADDED
@@ -0,0 +1,1166 @@
1
+ AllCops:
2
+ DisabledByDefault: true
3
+
4
+ #################### Lint ################################
5
+
6
+ Lint/AmbiguousOperator:
7
+ Description: >-
8
+ Checks for ambiguous operators in the first argument of a
9
+ method invocation without parentheses.
10
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parens-as-args'
11
+ Enabled: true
12
+
13
+ Lint/AmbiguousRegexpLiteral:
14
+ Description: >-
15
+ Checks for ambiguous regexp literals in the first argument of
16
+ a method invocation without parenthesis.
17
+ Enabled: true
18
+
19
+ Lint/AssignmentInCondition:
20
+ Description: "Don't use assignment in conditions."
21
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#safe-assignment-in-condition'
22
+ Enabled: true
23
+
24
+ Lint/BlockAlignment:
25
+ Description: 'Align block ends correctly.'
26
+ Enabled: true
27
+
28
+ Lint/CircularArgumentReference:
29
+ Description: "Don't refer to the keyword argument in the default value."
30
+ Enabled: true
31
+
32
+ Lint/ConditionPosition:
33
+ Description: >-
34
+ Checks for condition placed in a confusing position relative to
35
+ the keyword.
36
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#same-line-condition'
37
+ Enabled: true
38
+
39
+ Lint/Debugger:
40
+ Description: 'Check for debugger calls.'
41
+ Enabled: true
42
+
43
+ Lint/DefEndAlignment:
44
+ Description: 'Align ends corresponding to defs correctly.'
45
+ Enabled: true
46
+
47
+ Lint/DeprecatedClassMethods:
48
+ Description: 'Check for deprecated class method calls.'
49
+ Enabled: true
50
+
51
+ Lint/DuplicateMethods:
52
+ Description: 'Check for duplicate methods calls.'
53
+ Enabled: true
54
+
55
+ Lint/EachWithObjectArgument:
56
+ Description: 'Check for immutable argument given to each_with_object.'
57
+ Enabled: true
58
+
59
+ Lint/ElseLayout:
60
+ Description: 'Check for odd code arrangement in an else block.'
61
+ Enabled: true
62
+
63
+ Lint/EmptyEnsure:
64
+ Description: 'Checks for empty ensure block.'
65
+ Enabled: true
66
+
67
+ Lint/EmptyInterpolation:
68
+ Description: 'Checks for empty string interpolation.'
69
+ Enabled: true
70
+
71
+ Lint/EndAlignment:
72
+ Description: 'Align ends correctly.'
73
+ Enabled: true
74
+
75
+ Lint/EndInMethod:
76
+ Description: 'END blocks should not be placed inside method definitions.'
77
+ Enabled: true
78
+
79
+ Lint/EnsureReturn:
80
+ Description: 'Do not use return in an ensure block.'
81
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-return-ensure'
82
+ Enabled: true
83
+
84
+ Lint/Eval:
85
+ Description: 'The use of eval represents a serious security risk.'
86
+ Enabled: true
87
+
88
+ Lint/FormatParameterMismatch:
89
+ Description: 'The number of parameters to format/sprint must match the fields.'
90
+ Enabled: true
91
+
92
+ Lint/HandleExceptions:
93
+ Description: "Don't suppress exception."
94
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions'
95
+ Enabled: true
96
+
97
+ Lint/InvalidCharacterLiteral:
98
+ Description: >-
99
+ Checks for invalid character literals with a non-escaped
100
+ whitespace character.
101
+ Enabled: true
102
+
103
+ Lint/LiteralInCondition:
104
+ Description: 'Checks of literals used in conditions.'
105
+ Enabled: true
106
+
107
+ Lint/LiteralInInterpolation:
108
+ Description: 'Checks for literals used in interpolation.'
109
+ Enabled: true
110
+
111
+ Lint/Loop:
112
+ Description: >-
113
+ Use Kernel#loop with break rather than begin/end/until or
114
+ begin/end/while for post-loop tests.
115
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#loop-with-break'
116
+ Enabled: true
117
+
118
+ Lint/NestedMethodDefinition:
119
+ Description: 'Do not use nested method definitions.'
120
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-methods'
121
+ Enabled: true
122
+
123
+ Lint/NonLocalExitFromIterator:
124
+ Description: 'Do not use return in iterator to cause non-local exit.'
125
+ Enabled: true
126
+
127
+ Lint/ParenthesesAsGroupedExpression:
128
+ Description: >-
129
+ Checks for method calls with a space before the opening
130
+ parenthesis.
131
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parens-no-spaces'
132
+ Enabled: true
133
+
134
+ Lint/RequireParentheses:
135
+ Description: >-
136
+ Use parentheses in the method call to avoid confusion
137
+ about precedence.
138
+ Enabled: true
139
+
140
+ Lint/RescueException:
141
+ Description: 'Avoid rescuing the Exception class.'
142
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-blind-rescues'
143
+ Enabled: true
144
+
145
+ Lint/ShadowingOuterLocalVariable:
146
+ Description: >-
147
+ Do not use the same name as outer local variable
148
+ for block arguments or block local variables.
149
+ Enabled: true
150
+
151
+ Lint/StringConversionInInterpolation:
152
+ Description: 'Checks for Object#to_s usage in string interpolation.'
153
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-to-s'
154
+ Enabled: true
155
+
156
+ Lint/UnderscorePrefixedVariableName:
157
+ Description: 'Do not use prefix `_` for a variable that is used.'
158
+ Enabled: true
159
+
160
+ Lint/UnneededDisable:
161
+ Description: >-
162
+ Checks for rubocop:disable comments that can be removed.
163
+ Note: this cop is not disabled when disabling all cops.
164
+ It must be explicitly disabled.
165
+ Enabled: true
166
+
167
+ Lint/UnusedBlockArgument:
168
+ Description: 'Checks for unused block arguments.'
169
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars'
170
+ Enabled: true
171
+
172
+ Lint/UnusedMethodArgument:
173
+ Description: 'Checks for unused method arguments.'
174
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars'
175
+ Enabled: true
176
+
177
+ Lint/UnreachableCode:
178
+ Description: 'Unreachable code.'
179
+ Enabled: true
180
+
181
+ Lint/UselessAccessModifier:
182
+ Description: 'Checks for useless access modifiers.'
183
+ Enabled: true
184
+
185
+ Lint/UselessAssignment:
186
+ Description: 'Checks for useless assignment to a local variable.'
187
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars'
188
+ Enabled: true
189
+
190
+ Lint/UselessComparison:
191
+ Description: 'Checks for comparison of something with itself.'
192
+ Enabled: true
193
+
194
+ Lint/UselessElseWithoutRescue:
195
+ Description: 'Checks for useless `else` in `begin..end` without `rescue`.'
196
+ Enabled: true
197
+
198
+ Lint/UselessSetterCall:
199
+ Description: 'Checks for useless setter call to a local variable.'
200
+ Enabled: true
201
+
202
+ Lint/Void:
203
+ Description: 'Possible use of operator/literal/variable in void context.'
204
+ Enabled: true
205
+
206
+ ###################### Metrics ####################################
207
+
208
+ Metrics/AbcSize:
209
+ Description: >-
210
+ A calculated magnitude based on number of assignments,
211
+ branches, and conditions.
212
+ Reference: 'http://c2.com/cgi/wiki?AbcMetric'
213
+ Enabled: true
214
+ Max: 15
215
+
216
+ Metrics/BlockNesting:
217
+ Description: 'Avoid excessive block nesting'
218
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#three-is-the-number-thou-shalt-count'
219
+ Enabled: true
220
+ Max: 4
221
+
222
+ Metrics/ClassLength:
223
+ Description: 'Avoid classes longer than 100 lines of code.'
224
+ Enabled: true
225
+ Max: 100
226
+
227
+ Metrics/CyclomaticComplexity:
228
+ Description: >-
229
+ A complexity metric that is strongly correlated to the number
230
+ of test cases needed to validate a method.
231
+ Enabled: true
232
+
233
+ Metrics/LineLength:
234
+ Description: 'Limit lines to 80 characters.'
235
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#80-character-limits'
236
+ Enabled: true
237
+
238
+ Metrics/MethodLength:
239
+ Description: 'Avoid methods longer than 10 lines of code.'
240
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#short-methods'
241
+ Enabled: true
242
+ Max: 10
243
+
244
+ Metrics/ModuleLength:
245
+ Description: 'Avoid modules longer than 100 lines of code.'
246
+ Enabled: true
247
+ Max: 100
248
+
249
+ Metrics/ParameterLists:
250
+ Description: 'Avoid parameter lists longer than three or four parameters.'
251
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#too-many-params'
252
+ Enabled: false
253
+
254
+ Metrics/PerceivedComplexity:
255
+ Description: >-
256
+ A complexity metric geared towards measuring complexity for a
257
+ human reader.
258
+ Enabled: true
259
+
260
+ ##################### Performance #############################
261
+
262
+ Performance/Count:
263
+ Description: >-
264
+ Use `count` instead of `select...size`, `reject...size`,
265
+ `select...count`, `reject...count`, `select...length`,
266
+ and `reject...length`.
267
+ Enabled: true
268
+
269
+ Performance/Detect:
270
+ Description: >-
271
+ Use `detect` instead of `select.first`, `find_all.first`,
272
+ `select.last`, and `find_all.last`.
273
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#enumerabledetect-vs-enumerableselectfirst-code'
274
+ Enabled: true
275
+
276
+ Performance/FlatMap:
277
+ Description: >-
278
+ Use `Enumerable#flat_map`
279
+ instead of `Enumerable#map...Array#flatten(1)`
280
+ or `Enumberable#collect..Array#flatten(1)`
281
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#enumerablemaparrayflatten-vs-enumerableflat_map-code'
282
+ Enabled: true
283
+ EnabledForFlattenWithoutParams: false
284
+ # If enabled, this cop will warn about usages of
285
+ # `flatten` being called without any parameters.
286
+ # This can be dangerous since `flat_map` will only flatten 1 level, and
287
+ # `flatten` without any parameters can flatten multiple levels.
288
+
289
+ Performance/ReverseEach:
290
+ Description: 'Use `reverse_each` instead of `reverse.each`.'
291
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#enumerablereverseeach-vs-enumerablereverse_each-code'
292
+ Enabled: true
293
+
294
+ Performance/Sample:
295
+ Description: >-
296
+ Use `sample` instead of `shuffle.first`,
297
+ `shuffle.last`, and `shuffle[Fixnum]`.
298
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#arrayshufflefirst-vs-arraysample-code'
299
+ Enabled: true
300
+
301
+ Performance/Size:
302
+ Description: >-
303
+ Use `size` instead of `count` for counting
304
+ the number of elements in `Array` and `Hash`.
305
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#arraycount-vs-arraysize-code'
306
+ Enabled: true
307
+
308
+ Performance/StringReplacement:
309
+ Description: >-
310
+ Use `tr` instead of `gsub` when you are replacing the same
311
+ number of characters. Use `delete` instead of `gsub` when
312
+ you are deleting characters.
313
+ Reference: 'https://github.com/JuanitoFatas/fast-ruby#stringgsub-vs-stringtr-code'
314
+ Enabled: true
315
+
316
+ ##################### Rails ##################################
317
+
318
+ Rails/ActionFilter:
319
+ Description: 'Enforces consistent use of action filter methods.'
320
+ Enabled: false
321
+
322
+ Rails/Date:
323
+ Description: >-
324
+ Checks the correct usage of date aware methods,
325
+ such as Date.today, Date.current etc.
326
+ Enabled: true
327
+
328
+ Rails/Delegate:
329
+ Description: 'Prefer delegate method for delegations.'
330
+ Enabled: true
331
+
332
+ Rails/FindBy:
333
+ Description: 'Prefer find_by over where.first.'
334
+ Enabled: true
335
+
336
+ Rails/FindEach:
337
+ Description: 'Prefer all.find_each over all.find.'
338
+ Enabled: true
339
+
340
+ Rails/HasAndBelongsToMany:
341
+ Description: 'Prefer has_many :through to has_and_belongs_to_many.'
342
+ Enabled: true
343
+
344
+ Rails/Output:
345
+ Description: 'Checks for calls to puts, print, etc.'
346
+ Enabled: true
347
+
348
+ Rails/ReadWriteAttribute:
349
+ Description: >-
350
+ Checks for read_attribute(:attr) and
351
+ write_attribute(:attr, val).
352
+ Enabled: false
353
+
354
+ Rails/ScopeArgs:
355
+ Description: 'Checks the arguments of ActiveRecord scopes.'
356
+ Enabled: true
357
+
358
+ Rails/TimeZone:
359
+ Description: 'Checks the correct usage of time zone aware methods.'
360
+ StyleGuide: 'https://github.com/bbatsov/rails-style-guide#time'
361
+ Reference: 'http://danilenko.org/2012/7/6/rails_timezones'
362
+ Enabled: true
363
+
364
+ Rails/Validation:
365
+ Description: 'Use validates :attribute, hash of validations.'
366
+ Enabled: true
367
+
368
+ ################## Style #################################
369
+
370
+ Style/AccessModifierIndentation:
371
+ Description: Check indentation of private/protected visibility modifiers.
372
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#indent-public-private-protected'
373
+ Enabled: false
374
+
375
+ Style/AccessorMethodName:
376
+ Description: Check the naming of accessor methods for get_/set_.
377
+ Enabled: false
378
+
379
+ Style/Alias:
380
+ Description: 'Use alias_method instead of alias.'
381
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#alias-method'
382
+ Enabled: false
383
+
384
+ Style/AlignArray:
385
+ Description: >-
386
+ Align the elements of an array literal if they span more than
387
+ one line.
388
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#align-multiline-arrays'
389
+ Enabled: true
390
+
391
+ Style/AlignHash:
392
+ Description: >-
393
+ Align the elements of a hash literal if they span more than
394
+ one line.
395
+ Enabled: true
396
+
397
+ Style/AlignParameters:
398
+ Description: >-
399
+ Align the parameters of a method call if they span more
400
+ than one line.
401
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-double-indent'
402
+ Enabled: true
403
+
404
+ Style/AndOr:
405
+ Description: 'Use &&/|| instead of and/or.'
406
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-and-or-or'
407
+ Enabled: true
408
+
409
+ Style/ArrayJoin:
410
+ Description: 'Use Array#join instead of Array#*.'
411
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#array-join'
412
+ Enabled: false
413
+
414
+ Style/AsciiComments:
415
+ Description: 'Use only ascii symbols in comments.'
416
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#english-comments'
417
+ Enabled: false
418
+
419
+ Style/AsciiIdentifiers:
420
+ Description: 'Use only ascii symbols in identifiers.'
421
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#english-identifiers'
422
+ Enabled: false
423
+
424
+ Style/Attr:
425
+ Description: 'Checks for uses of Module#attr.'
426
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#attr'
427
+ Enabled: true
428
+
429
+ Style/BeginBlock:
430
+ Description: 'Avoid the use of BEGIN blocks.'
431
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-BEGIN-blocks'
432
+ Enabled: true
433
+
434
+ Style/BarePercentLiterals:
435
+ Description: 'Checks if usage of %() or %Q() matches configuration.'
436
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-q-shorthand'
437
+ Enabled: true
438
+
439
+ Style/BlockComments:
440
+ Description: 'Do not use block comments.'
441
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-block-comments'
442
+ Enabled: false
443
+
444
+ Style/BlockEndNewline:
445
+ Description: 'Put end statement of multiline block on its own line.'
446
+ Enabled: true
447
+
448
+ Style/BlockDelimiters:
449
+ Description: >-
450
+ Avoid using {...} for multi-line blocks (multiline chaining is
451
+ always ugly).
452
+ Prefer {...} over do...end for single-line blocks.
453
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#single-line-blocks'
454
+ Enabled: true
455
+
456
+ Style/BracesAroundHashParameters:
457
+ Description: 'Enforce braces style around hash parameters.'
458
+ Enabled: false
459
+
460
+ Style/CaseEquality:
461
+ Description: 'Avoid explicit use of the case equality operator(===).'
462
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-case-equality'
463
+ Enabled: false
464
+
465
+ Style/CaseIndentation:
466
+ Description: 'Indentation of when in a case/when/[else/]end.'
467
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#indent-when-to-case'
468
+ Enabled: true
469
+
470
+ Style/CharacterLiteral:
471
+ Description: 'Checks for uses of character literals.'
472
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-character-literals'
473
+ Enabled: false
474
+
475
+ Style/ClassAndModuleCamelCase:
476
+ Description: 'Use CamelCase for classes and modules.'
477
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#camelcase-classes'
478
+ Enabled: true
479
+
480
+ Style/ClassAndModuleChildren:
481
+ Description: 'Checks style of children classes and modules.'
482
+ Enabled: false
483
+
484
+ Style/ClassCheck:
485
+ Description: 'Enforces consistent use of `Object#is_a?` or `Object#kind_of?`.'
486
+ Enabled: true
487
+
488
+ Style/ClassMethods:
489
+ Description: 'Use self when defining module/class methods.'
490
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#def-self-class-methods'
491
+ Enabled: false
492
+
493
+ Style/ClassVars:
494
+ Description: 'Avoid the use of class variables.'
495
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-class-vars'
496
+ Enabled: false
497
+
498
+ Style/ClosingParenthesisIndentation:
499
+ Description: 'Checks the indentation of hanging closing parentheses.'
500
+ Enabled: false
501
+
502
+ Style/ColonMethodCall:
503
+ Description: 'Do not use :: for method call.'
504
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#double-colons'
505
+ Enabled: true
506
+
507
+ Style/CommandLiteral:
508
+ Description: 'Use `` or %x around command literals.'
509
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-x'
510
+ Enabled: false
511
+
512
+ Style/CommentAnnotation:
513
+ Description: 'Checks formatting of annotation comments.'
514
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#annotate-keywords'
515
+ Enabled: false
516
+
517
+ Style/CommentIndentation:
518
+ Description: 'Indentation of comments.'
519
+ Enabled: false
520
+
521
+ Style/ConstantName:
522
+ Description: 'Constants should use SCREAMING_SNAKE_CASE.'
523
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#screaming-snake-case'
524
+ Enabled: true
525
+
526
+ Style/DefWithParentheses:
527
+ Description: 'Use def with parentheses when there are arguments.'
528
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#method-parens'
529
+ Enabled: true
530
+
531
+ Style/Documentation:
532
+ Description: 'Document classes and non-namespace modules.'
533
+ Enabled: false
534
+
535
+ Style/DotPosition:
536
+ Description: 'Checks the position of the dot in multi-line method calls.'
537
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains'
538
+ Enabled: true
539
+
540
+ Style/DoubleNegation:
541
+ Description: 'Checks for uses of double negation (!!).'
542
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-bang-bang'
543
+ Enabled: true
544
+
545
+ Style/EachWithObject:
546
+ Description: 'Prefer `each_with_object` over `inject` or `reduce`.'
547
+ Enabled: false
548
+
549
+ Style/ElseAlignment:
550
+ Description: 'Align elses and elsifs correctly.'
551
+ Enabled: true
552
+
553
+ Style/EmptyElse:
554
+ Description: 'Avoid empty else-clauses.'
555
+ Enabled: true
556
+
557
+ Style/EmptyLineBetweenDefs:
558
+ Description: 'Use empty lines between defs.'
559
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#empty-lines-between-methods'
560
+ Enabled: true
561
+
562
+ Style/EmptyLines:
563
+ Description: "Don't use several empty lines in a row."
564
+ Enabled: true
565
+
566
+ Style/EmptyLinesAroundAccessModifier:
567
+ Description: "Keep blank lines around access modifiers."
568
+ Enabled: false
569
+
570
+ Style/EmptyLinesAroundBlockBody:
571
+ Description: "Keeps track of empty lines around block bodies."
572
+ Enabled: false
573
+
574
+ Style/EmptyLinesAroundClassBody:
575
+ Description: "Keeps track of empty lines around class bodies."
576
+ Enabled: false
577
+
578
+ Style/EmptyLinesAroundModuleBody:
579
+ Description: "Keeps track of empty lines around module bodies."
580
+ Enabled: false
581
+
582
+ Style/EmptyLinesAroundMethodBody:
583
+ Description: "Keeps track of empty lines around method bodies."
584
+ Enabled: false
585
+
586
+ Style/EmptyLiteral:
587
+ Description: 'Prefer literals to Array.new/Hash.new/String.new.'
588
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#literal-array-hash'
589
+ Enabled: false
590
+
591
+ Style/EndBlock:
592
+ Description: 'Avoid the use of END blocks.'
593
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-END-blocks'
594
+ Enabled: false
595
+
596
+ Style/EndOfLine:
597
+ Description: 'Use Unix-style line endings.'
598
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#crlf'
599
+ Enabled: false
600
+
601
+ Style/EvenOdd:
602
+ Description: 'Favor the use of Fixnum#even? && Fixnum#odd?'
603
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#predicate-methods'
604
+ Enabled: true
605
+
606
+ Style/ExtraSpacing:
607
+ Description: 'Do not use unnecessary spacing.'
608
+ Enabled: true
609
+
610
+ Style/FileName:
611
+ Description: 'Use snake_case for source file names.'
612
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-files'
613
+ Enabled: true
614
+
615
+ Style/InitialIndentation:
616
+ Description: >-
617
+ Checks the indentation of the first non-blank non-comment line in a file.
618
+ Enabled: false
619
+
620
+ Style/FirstParameterIndentation:
621
+ Description: 'Checks the indentation of the first parameter in a method call.'
622
+ Enabled: false
623
+
624
+ Style/FlipFlop:
625
+ Description: 'Checks for flip flops'
626
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-flip-flops'
627
+ Enabled: true
628
+
629
+ Style/For:
630
+ Description: 'Checks use of for or each in multiline loops.'
631
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-for-loops'
632
+ Enabled: true
633
+
634
+ Style/FormatString:
635
+ Description: 'Enforce the use of Kernel#sprintf, Kernel#format or String#%.'
636
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#sprintf'
637
+ Enabled: false
638
+
639
+ Style/GlobalVars:
640
+ Description: 'Do not introduce global variables.'
641
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#instance-vars'
642
+ Reference: 'http://www.zenspider.com/Languages/Ruby/QuickRef.html'
643
+ Enabled: true
644
+
645
+ Style/GuardClause:
646
+ Description: 'Check for conditionals that can be replaced with guard clauses'
647
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals'
648
+ Enabled: true
649
+
650
+ Style/HashSyntax:
651
+ Description: >-
652
+ Prefer Ruby 1.9 hash syntax { a: 1, b: 2 } over 1.8 syntax
653
+ { :a => 1, :b => 2 }.
654
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-literals'
655
+ Enabled: true
656
+
657
+ Style/IfUnlessModifier:
658
+ Description: >-
659
+ Favor modifier if/unless usage when you have a
660
+ single-line body.
661
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#if-as-a-modifier'
662
+ Enabled: true
663
+
664
+ Style/IfWithSemicolon:
665
+ Description: 'Do not use if x; .... Use the ternary operator instead.'
666
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-semicolon-ifs'
667
+ Enabled: true
668
+
669
+ Style/IndentationConsistency:
670
+ Description: 'Keep indentation straight.'
671
+ Enabled: false
672
+
673
+ Style/IndentationWidth:
674
+ Description: 'Use 2 spaces for indentation.'
675
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-indentation'
676
+ Enabled: true
677
+
678
+ Style/IndentArray:
679
+ Description: >-
680
+ Checks the indentation of the first element in an array
681
+ literal.
682
+ Enabled: false
683
+
684
+ Style/IndentHash:
685
+ Description: 'Checks the indentation of the first key in a hash literal.'
686
+ Enabled: false
687
+
688
+ Style/InfiniteLoop:
689
+ Description: 'Use Kernel#loop for infinite loops.'
690
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#infinite-loop'
691
+ Enabled: true
692
+
693
+ Style/Lambda:
694
+ Description: 'Use the new lambda literal syntax for single-line blocks.'
695
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#lambda-multi-line'
696
+ Enabled: true
697
+
698
+ Style/LambdaCall:
699
+ Description: 'Use lambda.call(...) instead of lambda.(...).'
700
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#proc-call'
701
+ Enabled: false
702
+
703
+ Style/LeadingCommentSpace:
704
+ Description: 'Comments should start with a space.'
705
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-space'
706
+ Enabled: true
707
+
708
+ Style/LineEndConcatenation:
709
+ Description: >-
710
+ Use \ instead of + or << to concatenate two string literals at
711
+ line end.
712
+ Enabled: true
713
+
714
+ Style/MethodCallParentheses:
715
+ Description: 'Do not use parentheses for method calls with no arguments.'
716
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-args-no-parens'
717
+ Enabled: true
718
+
719
+ Style/MethodDefParentheses:
720
+ Description: >-
721
+ Checks if the method definitions have or don't have
722
+ parentheses.
723
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#method-parens'
724
+ Enabled: true
725
+
726
+ Style/MethodName:
727
+ Description: 'Use the configured style when naming methods.'
728
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-symbols-methods-vars'
729
+ Enabled: false
730
+
731
+ Style/ModuleFunction:
732
+ Description: 'Checks for usage of `extend self` in modules.'
733
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#module-function'
734
+ Enabled: true
735
+
736
+ Style/MultilineBlockChain:
737
+ Description: 'Avoid multi-line chains of blocks.'
738
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#single-line-blocks'
739
+ Enabled: false
740
+
741
+ Style/MultilineBlockLayout:
742
+ Description: 'Ensures newlines after multiline block do statements.'
743
+ Enabled: true
744
+
745
+ Style/MultilineIfThen:
746
+ Description: 'Do not use then for multi-line if/unless.'
747
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-then'
748
+ Enabled: true
749
+
750
+ Style/MultilineOperationIndentation:
751
+ Description: >-
752
+ Checks indentation of binary operations that span more than
753
+ one line.
754
+ Enabled: false
755
+
756
+ Style/MultilineTernaryOperator:
757
+ Description: >-
758
+ Avoid multi-line ?: (the ternary operator);
759
+ use if/unless instead.
760
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-multiline-ternary'
761
+ Enabled: true
762
+
763
+ Style/NegatedIf:
764
+ Description: >-
765
+ Favor unless over if for negative conditions
766
+ (or control flow or).
767
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#unless-for-negatives'
768
+ Enabled: true
769
+
770
+ Style/NegatedWhile:
771
+ Description: 'Favor until over while for negative conditions.'
772
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#until-for-negatives'
773
+ Enabled: true
774
+
775
+ Style/NestedTernaryOperator:
776
+ Description: 'Use one expression per branch in a ternary operator.'
777
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-ternary'
778
+ Enabled: true
779
+
780
+ Style/Next:
781
+ Description: 'Use `next` to skip iteration instead of a condition at the end.'
782
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals'
783
+ Enabled: true
784
+
785
+ Style/NilComparison:
786
+ Description: 'Prefer x.nil? to x == nil.'
787
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#predicate-methods'
788
+ Enabled: true
789
+
790
+ Style/NonNilCheck:
791
+ Description: 'Checks for redundant nil checks.'
792
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-non-nil-checks'
793
+ Enabled: true
794
+
795
+ Style/Not:
796
+ Description: 'Use ! instead of not.'
797
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#bang-not-not'
798
+ Enabled: true
799
+
800
+ Style/NumericLiterals:
801
+ Description: >-
802
+ Add underscores to large numeric literals to improve their
803
+ readability.
804
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscores-in-numerics'
805
+ Enabled: true
806
+
807
+ Style/OneLineConditional:
808
+ Description: >-
809
+ Favor the ternary operator(?:) over
810
+ if/then/else/end constructs.
811
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#ternary-operator'
812
+ Enabled: false
813
+
814
+ Style/OpMethod:
815
+ Description: 'When defining binary operators, name the argument other.'
816
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#other-arg'
817
+ Enabled: false
818
+
819
+ Style/OptionalArguments:
820
+ Description: >-
821
+ Checks for optional arguments that do not appear at the end
822
+ of the argument list
823
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#optional-arguments'
824
+ Enabled: false
825
+
826
+ Style/ParallelAssignment:
827
+ Description: >-
828
+ Check for simple usages of parallel assignment.
829
+ It will only warn when the number of variables
830
+ matches on both sides of the assignment.
831
+ This also provides performance benefits
832
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parallel-assignment'
833
+ Enabled: false
834
+
835
+ Style/ParenthesesAroundCondition:
836
+ Description: >-
837
+ Don't use parentheses around the condition of an
838
+ if/unless/while.
839
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-parens-if'
840
+ Enabled: true
841
+
842
+ Style/PercentLiteralDelimiters:
843
+ Description: 'Use `%`-literal delimiters consistently'
844
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-literal-braces'
845
+ Enabled: true
846
+
847
+ Style/PercentQLiterals:
848
+ Description: 'Checks if uses of %Q/%q match the configured preference.'
849
+ Enabled: true
850
+
851
+ Style/PerlBackrefs:
852
+ Description: 'Avoid Perl-style regex back references.'
853
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-perl-regexp-last-matchers'
854
+ Enabled: false
855
+
856
+ Style/PredicateName:
857
+ Description: 'Check the names of predicate methods.'
858
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark'
859
+ Enabled: true
860
+
861
+ Style/Proc:
862
+ Description: 'Use proc instead of Proc.new.'
863
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#proc'
864
+ Enabled: true
865
+
866
+ Style/RaiseArgs:
867
+ Description: 'Checks the arguments passed to raise/fail.'
868
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#exception-class-messages'
869
+ Enabled: false
870
+
871
+ Style/RedundantBegin:
872
+ Description: "Don't use begin blocks when they are not needed."
873
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#begin-implicit'
874
+ Enabled: true
875
+
876
+ Style/RedundantException:
877
+ Description: "Checks for an obsolete RuntimeException argument in raise/fail."
878
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-explicit-runtimeerror'
879
+ Enabled: true
880
+
881
+ Style/RedundantReturn:
882
+ Description: "Don't use return where it's not required."
883
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-explicit-return'
884
+ Enabled: true
885
+
886
+ Style/RedundantSelf:
887
+ Description: "Don't use self where it's not needed."
888
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-self-unless-required'
889
+ Enabled: true
890
+
891
+ Style/RegexpLiteral:
892
+ Description: 'Use / or %r around regular expressions.'
893
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-r'
894
+ Enabled: false
895
+
896
+ Style/RescueEnsureAlignment:
897
+ Description: 'Align rescues and ensures correctly.'
898
+ Enabled: false
899
+
900
+ Style/RescueModifier:
901
+ Description: 'Avoid using rescue in its modifier form.'
902
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-rescue-modifiers'
903
+ Enabled: false
904
+
905
+ Style/SelfAssignment:
906
+ Description: >-
907
+ Checks for places where self-assignment shorthand should have
908
+ been used.
909
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#self-assignment'
910
+ Enabled: true
911
+
912
+ Style/Semicolon:
913
+ Description: "Don't use semicolons to terminate expressions."
914
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-semicolon'
915
+ Enabled: true
916
+
917
+ Style/SignalException:
918
+ Description: 'Checks for proper usage of fail and raise.'
919
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#fail-method'
920
+ Enabled: true
921
+
922
+ Style/SingleLineBlockParams:
923
+ Description: 'Enforces the names of some block params.'
924
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#reduce-blocks'
925
+ Enabled: true
926
+
927
+ Style/SingleLineMethods:
928
+ Description: 'Avoid single-line methods.'
929
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-single-line-methods'
930
+ Enabled: false
931
+
932
+ Style/SpaceBeforeFirstArg:
933
+ Description: >-
934
+ Checks that exactly one space is used between a method name
935
+ and the first argument for method calls without parentheses.
936
+ Enabled: true
937
+
938
+ Style/SpaceAfterColon:
939
+ Description: 'Use spaces after colons.'
940
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
941
+ Enabled: true
942
+
943
+ Style/SpaceAfterComma:
944
+ Description: 'Use spaces after commas.'
945
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
946
+ Enabled: true
947
+
948
+ Style/SpaceAroundKeyword:
949
+ Description: 'Use spaces around keywords.'
950
+ Enabled: true
951
+
952
+ Style/SpaceAfterMethodName:
953
+ Description: >-
954
+ Do not put a space between a method name and the opening
955
+ parenthesis in a method definition.
956
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parens-no-spaces'
957
+ Enabled: true
958
+
959
+ Style/SpaceAfterNot:
960
+ Description: Tracks redundant space after the ! operator.
961
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-space-bang'
962
+ Enabled: false
963
+
964
+ Style/SpaceAfterSemicolon:
965
+ Description: 'Use spaces after semicolons.'
966
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
967
+ Enabled: true
968
+
969
+ Style/SpaceBeforeBlockBraces:
970
+ Description: >-
971
+ Checks that the left block brace has or doesn't have space
972
+ before it.
973
+ Enabled: false
974
+
975
+ Style/SpaceBeforeComma:
976
+ Description: 'No spaces before commas.'
977
+ Enabled: false
978
+
979
+ Style/SpaceBeforeComment:
980
+ Description: >-
981
+ Checks for missing space between code and a comment on the
982
+ same line.
983
+ Enabled: false
984
+
985
+ Style/SpaceBeforeSemicolon:
986
+ Description: 'No spaces before semicolons.'
987
+ Enabled: false
988
+
989
+ Style/SpaceInsideBlockBraces:
990
+ Description: >-
991
+ Checks that block braces have or don't have surrounding space.
992
+ For blocks taking parameters, checks that the left brace has
993
+ or doesn't have trailing space.
994
+ Enabled: false
995
+
996
+ Style/SpaceAroundBlockParameters:
997
+ Description: 'Checks the spacing inside and after block parameters pipes.'
998
+ Enabled: true
999
+
1000
+ Style/SpaceAroundEqualsInParameterDefault:
1001
+ Description: >-
1002
+ Checks that the equals signs in parameter default assignments
1003
+ have or don't have surrounding space depending on
1004
+ configuration.
1005
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-around-equals'
1006
+ Enabled: true
1007
+
1008
+ Style/SpaceAroundOperators:
1009
+ Description: 'Use a single space around operators.'
1010
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
1011
+ Enabled: true
1012
+
1013
+ Style/SpaceInsideBrackets:
1014
+ Description: 'No spaces after [ or before ].'
1015
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-spaces-braces'
1016
+ Enabled: false
1017
+
1018
+ Style/SpaceInsideHashLiteralBraces:
1019
+ Description: "Use spaces inside hash literal braces - or don't."
1020
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
1021
+ Enabled: false
1022
+
1023
+ Style/SpaceInsideParens:
1024
+ Description: 'No spaces after ( or before ).'
1025
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-spaces-braces'
1026
+ Enabled: true
1027
+
1028
+ Style/SpaceInsideRangeLiteral:
1029
+ Description: 'No spaces inside range literals.'
1030
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-space-inside-range-literals'
1031
+ Enabled: true
1032
+
1033
+ Style/SpaceInsideStringInterpolation:
1034
+ Description: 'Checks for padding/surrounding spaces inside string interpolation.'
1035
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#string-interpolation'
1036
+ Enabled: false
1037
+
1038
+ Style/SpecialGlobalVars:
1039
+ Description: 'Avoid Perl-style global variables.'
1040
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-cryptic-perlisms'
1041
+ Enabled: false
1042
+
1043
+ Style/StringLiterals:
1044
+ Description: 'Checks if uses of quotes match the configured preference.'
1045
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#consistent-string-literals'
1046
+ Enabled: true
1047
+
1048
+ Style/StringLiteralsInInterpolation:
1049
+ Description: >-
1050
+ Checks if uses of quotes inside expressions in interpolated
1051
+ strings match the configured preference.
1052
+ Enabled: true
1053
+
1054
+ Style/StructInheritance:
1055
+ Description: 'Checks for inheritance from Struct.new.'
1056
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-extend-struct-new'
1057
+ Enabled: false
1058
+
1059
+ Style/SymbolLiteral:
1060
+ Description: 'Use plain symbols instead of string symbols when possible.'
1061
+ Enabled: false
1062
+
1063
+ Style/SymbolProc:
1064
+ Description: 'Use symbols as procs instead of blocks when possible.'
1065
+ Enabled: false
1066
+
1067
+ Style/Tab:
1068
+ Description: 'No hard tabs.'
1069
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-indentation'
1070
+ Enabled: false
1071
+
1072
+ Style/TrailingBlankLines:
1073
+ Description: 'Checks trailing blank lines and final newline.'
1074
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#newline-eof'
1075
+ Enabled: false
1076
+
1077
+ Style/TrailingCommaInArguments:
1078
+ Description: 'Checks for trailing comma in parameter lists.'
1079
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-params-comma'
1080
+ Enabled: false
1081
+
1082
+ Style/TrailingCommaInLiteral:
1083
+ Description: 'Checks for trailing comma in literals.'
1084
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas'
1085
+ Enabled: false
1086
+
1087
+ Style/TrailingWhitespace:
1088
+ Description: 'Avoid trailing whitespace.'
1089
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-whitespace'
1090
+ Enabled: false
1091
+
1092
+ Style/TrivialAccessors:
1093
+ Description: 'Prefer attr_* methods to trivial readers/writers.'
1094
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#attr_family'
1095
+ Enabled: false
1096
+
1097
+ Style/UnlessElse:
1098
+ Description: >-
1099
+ Do not use unless with else. Rewrite these with the positive
1100
+ case first.
1101
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-else-with-unless'
1102
+ Enabled: true
1103
+
1104
+ Style/UnneededCapitalW:
1105
+ Description: 'Checks for %W when interpolation is not needed.'
1106
+ Enabled: false
1107
+
1108
+ Style/UnneededPercentQ:
1109
+ Description: 'Checks for %q/%Q when single quotes or double quotes would do.'
1110
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-q'
1111
+ Enabled: false
1112
+
1113
+ Style/TrailingUnderscoreVariable:
1114
+ Description: >-
1115
+ Checks for the usage of unneeded trailing underscores at the
1116
+ end of parallel variable assignment.
1117
+ Enabled: false
1118
+
1119
+ Style/VariableInterpolation:
1120
+ Description: >-
1121
+ Don't interpolate global, instance and class variables
1122
+ directly in strings.
1123
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#curlies-interpolate'
1124
+ Enabled: true
1125
+
1126
+ Style/VariableName:
1127
+ Description: 'Use the configured style when naming variables.'
1128
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-symbols-methods-vars'
1129
+ Enabled: true
1130
+
1131
+ Style/WhenThen:
1132
+ Description: 'Use when x then ... for one-line cases.'
1133
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#one-line-cases'
1134
+ Enabled: true
1135
+
1136
+ Style/WhileUntilDo:
1137
+ Description: 'Checks for redundant do after while or until.'
1138
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-multiline-while-do'
1139
+ Enabled: true
1140
+
1141
+ Style/WhileUntilModifier:
1142
+ Description: >-
1143
+ Favor modifier while/until usage when you have a
1144
+ single-line body.
1145
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#while-as-a-modifier'
1146
+ Enabled: true
1147
+
1148
+ Style/MutableConstant:
1149
+ Enabled: false
1150
+
1151
+ Style/FrozenStringLiteralComment:
1152
+ Enabled: false
1153
+
1154
+ Style/WordArray:
1155
+ Description: 'Use %w or %W for arrays of words.'
1156
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-w'
1157
+ Enabled: true
1158
+ AllCops:
1159
+ Exclude:
1160
+ - 'vendor/**/*'
1161
+ - 'config/**/*'
1162
+ - 'db/**/*'
1163
+ - 'bin/*'
1164
+ - 'Gemfile'
1165
+ - 'Gemfile.lock'
1166
+ - 'Rakefile'