github-rake-release 0.1.1.pre.alpha

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 72dd77bd6b5c9f982af5afdda1dd5325aa0af94d
4
+ data.tar.gz: fb2c8ab69aec229b5fcd1375bd2b0bedb848944a
5
+ SHA512:
6
+ metadata.gz: 426a798639c34e00d7c0fe0d394ec7d0dbd1ff223f87df1e03a815366f1f4822d8830675d9d8018698c56902af75a6d7766d03f547a0fa3d36041dd6c5d101f4
7
+ data.tar.gz: 4401906d40ff7b28539e90b4a004bd9d3e05004bf791802b047fa6ea07a085c55a3a3dcbb7978342ded4568b21328ce235b2d927935ebb675fd452bd1d6902e6
data/.gitignore ADDED
@@ -0,0 +1,15 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+
11
+ # rspec failure tracking
12
+ .rspec_status
13
+
14
+ # generated gem files
15
+ *.gem
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/.rubocop.yml ADDED
@@ -0,0 +1,1303 @@
1
+ # Common configuration.
2
+ AllCops:
3
+ # Include common Ruby source files.
4
+ Include:
5
+ - '**/*.gemspec'
6
+ - '**/*.podspec'
7
+ - '**/*.jbuilder'
8
+ - '**/*.rake'
9
+ - '**/*.opal'
10
+ - '**/config.ru'
11
+ - '**/Gemfile'
12
+ - '**/Rakefile'
13
+ - '**/Capfile'
14
+ - '**/Guardfile'
15
+ - '**/Podfile'
16
+ - '**/Thorfile'
17
+ - '**/Vagrantfile'
18
+ - '**/Berksfile'
19
+ - '**/Cheffile'
20
+ - '**/Vagabondfile'
21
+ - '**/Fastfile'
22
+ - '**/*Fastfile'
23
+ Exclude:
24
+ - 'vendor/**/*'
25
+ - 'config/**/*'
26
+ - 'script/**/*'
27
+ - 'db/**/*'
28
+ - 'Guardfile'
29
+ - 'bin/*'
30
+ # Default formatter will be used if no -f/--format option is given.
31
+ DefaultFormatter: progress
32
+ # Cop names are not displayed in offense messages by default. Change behavior
33
+ # by overriding DisplayCopNames, or by giving the -D/--display-cop-names
34
+ # option.
35
+ DisplayCopNames: false
36
+ # Style guide URLs are not displayed in offense messages by default. Change
37
+ # behavior by overriding DisplayStyleGuide, or by giving the
38
+ # -S/--display-style-guide option.
39
+ DisplayStyleGuide: false
40
+ # Extra details are not displayed in offense messages by default. Change
41
+ # behavior by overriding ExtraDetails, or by giving the
42
+ # -E/--extra-details option.
43
+ ExtraDetails: false
44
+ # Additional cops that do not reference a style guide rule may be enabled by
45
+ # default. Change behavior by overriding StyleGuideCopsOnly, or by giving
46
+ # the --only-guide-cops option.
47
+ StyleGuideCopsOnly: false
48
+ # All cops except the ones in disabled.yml are enabled by default. Change
49
+ # this behavior by overriding DisabledByDefault. When DisabledByDefault is
50
+ # true, all cops in the default configuration are disabled, and and only cops
51
+ # in user configuration are enabled. This makes cops opt-in instead of
52
+ # opt-out. Note that when DisabledByDefault is true, cops in user
53
+ # configuration will be enabled even if they don't set the Enabled parameter.
54
+ DisabledByDefault: false
55
+ # Enables the result cache if true. Can be overridden by the --cache command
56
+ # line option.
57
+ UseCache: true
58
+ # Threshold for how many files can be stored in the result cache before some
59
+ # of the files are automatically removed.
60
+ MaxFilesInCache: 20000
61
+ # The cache will be stored in "rubocop_cache" under this directory. The name
62
+ # "/tmp" is special and will be converted to the system temporary directory,
63
+ # which is "/tmp" on Unix-like systems, but could be something else on other
64
+ # systems.
65
+ CacheRootDirectory: /tmp
66
+ # The default cache root directory is /tmp, which on most systems is
67
+ # writable by any system user. This means that it is possible for a
68
+ # malicious user to anticipate the location of Rubocop's cache directory,
69
+ # and create a symlink in its place that could cause Rubocop to overwrite
70
+ # unintended files, or read malicious input. If you are certain that your
71
+ # cache location is secure from this kind of attack, and wish to use a
72
+ # symlinked cache location, set this value to "true".
73
+ AllowSymlinksInCacheRootDirectory: false
74
+ # What MRI version of the Ruby interpreter is the inspected code intended to
75
+ # run on? (If there is more than one, set this to the lowest version.)
76
+ # If a value is specified for TargetRubyVersion then it is used.
77
+ # Else if .ruby-version exists and it contains an MRI version it is used.
78
+ # Otherwise we fallback to the oldest officially supported Ruby version (2.0).
79
+ TargetRubyVersion: 2.4
80
+
81
+ # Indent private/protected/public as deep as method definitions
82
+ Style/AccessModifierIndentation:
83
+ EnforcedStyle: indent
84
+ SupportedStyles:
85
+ - outdent
86
+ - indent
87
+ # By default, the indentation width from Style/IndentationWidth is used
88
+ # But it can be overridden by setting this parameter
89
+ IndentationWidth: ~
90
+
91
+ Style/Alias:
92
+ EnforcedStyle: prefer_alias_method
93
+ SupportedStyles:
94
+ - prefer_alias
95
+ - prefer_alias_method
96
+
97
+ # Align the elements of a hash literal if they span more than one line.
98
+ Style/AlignHash:
99
+ # Alignment of entries using hash rocket as separator. Valid values are:
100
+ #
101
+ # key - left alignment of keys
102
+ # 'a' => 2
103
+ # 'bb' => 3
104
+ # separator - alignment of hash rockets, keys are right aligned
105
+ # 'a' => 2
106
+ # 'bb' => 3
107
+ # table - left alignment of keys, hash rockets, and values
108
+ # 'a' => 2
109
+ # 'bb' => 3
110
+ EnforcedHashRocketStyle: key
111
+ # Alignment of entries using colon as separator. Valid values are:
112
+ #
113
+ # key - left alignment of keys
114
+ # a: 0
115
+ # bb: 1
116
+ # separator - alignment of colons, keys are right aligned
117
+ # a: 0
118
+ # bb: 1
119
+ # table - left alignment of keys and values
120
+ # a: 0
121
+ # bb: 1
122
+ EnforcedColonStyle: key
123
+ # Select whether hashes that are the last argument in a method call should be
124
+ # inspected? Valid values are:
125
+ #
126
+ # always_inspect - Inspect both implicit and explicit hashes.
127
+ # Registers an offense for:
128
+ # function(a: 1,
129
+ # b: 2)
130
+ # Registers an offense for:
131
+ # function({a: 1,
132
+ # b: 2})
133
+ # always_ignore - Ignore both implicit and explicit hashes.
134
+ # Accepts:
135
+ # function(a: 1,
136
+ # b: 2)
137
+ # Accepts:
138
+ # function({a: 1,
139
+ # b: 2})
140
+ # ignore_implicit - Ignore only implicit hashes.
141
+ # Accepts:
142
+ # function(a: 1,
143
+ # b: 2)
144
+ # Registers an offense for:
145
+ # function({a: 1,
146
+ # b: 2})
147
+ # ignore_explicit - Ignore only explicit hashes.
148
+ # Accepts:
149
+ # function({a: 1,
150
+ # b: 2})
151
+ # Registers an offense for:
152
+ # function(a: 1,
153
+ # b: 2)
154
+ EnforcedLastArgumentHashStyle: always_inspect
155
+ SupportedLastArgumentHashStyles:
156
+ - always_inspect
157
+ - always_ignore
158
+ - ignore_implicit
159
+ - ignore_explicit
160
+
161
+ Style/AlignParameters:
162
+ # Alignment of parameters in multi-line method calls.
163
+ #
164
+ # The `with_first_parameter` style aligns the following lines along the same
165
+ # column as the first parameter.
166
+ #
167
+ # method_call(a,
168
+ # b)
169
+ #
170
+ # The `with_fixed_indentation` style aligns the following lines with one
171
+ # level of indentation relative to the start of the line with the method call.
172
+ #
173
+ # method_call(a,
174
+ # b)
175
+ EnforcedStyle: with_first_parameter
176
+ SupportedStyles:
177
+ - with_first_parameter
178
+ - with_fixed_indentation
179
+ # By default, the indentation width from Style/IndentationWidth is used
180
+ # But it can be overridden by setting this parameter
181
+ IndentationWidth: ~
182
+
183
+ Style/AndOr:
184
+ # Whether `and` and `or` are banned only in conditionals (conditionals)
185
+ # or completely (always).
186
+ EnforcedStyle: always
187
+ SupportedStyles:
188
+ - always
189
+ - conditionals
190
+
191
+
192
+ # Checks if usage of %() or %Q() matches configuration.
193
+ Style/BarePercentLiterals:
194
+ EnforcedStyle: bare_percent
195
+ SupportedStyles:
196
+ - percent_q
197
+ - bare_percent
198
+
199
+ Style/BlockDelimiters:
200
+ EnforcedStyle: line_count_based
201
+ SupportedStyles:
202
+ # The `line_count_based` style enforces braces around single line blocks and
203
+ # do..end around multi-line blocks.
204
+ - line_count_based
205
+ # The `semantic` style enforces braces around functional blocks, where the
206
+ # primary purpose of the block is to return a value and do..end for
207
+ # procedural blocks, where the primary purpose of the block is its
208
+ # side-effects.
209
+ #
210
+ # This looks at the usage of a block's method to determine its type (e.g. is
211
+ # the result of a `map` assigned to a variable or passed to another
212
+ # method) but exceptions are permitted in the `ProceduralMethods`,
213
+ # `FunctionalMethods` and `IgnoredMethods` sections below.
214
+ - semantic
215
+ # The `braces_for_chaining` style enforces braces around single line blocks
216
+ # and do..end around multi-line blocks, except for multi-line blocks whose
217
+ # return value is being chained with another method (in which case braces
218
+ # are enforced).
219
+ - braces_for_chaining
220
+ ProceduralMethods:
221
+ # Methods that are known to be procedural in nature but look functional from
222
+ # their usage, e.g.
223
+ #
224
+ # time = Benchmark.realtime do
225
+ # foo.bar
226
+ # end
227
+ #
228
+ # Here, the return value of the block is discarded but the return value of
229
+ # `Benchmark.realtime` is used.
230
+ - benchmark
231
+ - bm
232
+ - bmbm
233
+ - create
234
+ - each_with_object
235
+ - measure
236
+ - new
237
+ - realtime
238
+ - tap
239
+ - with_object
240
+ FunctionalMethods:
241
+ # Methods that are known to be functional in nature but look procedural from
242
+ # their usage, e.g.
243
+ #
244
+ # let(:foo) { Foo.new }
245
+ #
246
+ # Here, the return value of `Foo.new` is used to define a `foo` helper but
247
+ # doesn't appear to be used from the return value of `let`.
248
+ - let
249
+ - let!
250
+ - subject
251
+ - watch
252
+ IgnoredMethods:
253
+ # Methods that can be either procedural or functional and cannot be
254
+ # categorised from their usage alone, e.g.
255
+ #
256
+ # foo = lambda do |x|
257
+ # puts "Hello, #{x}"
258
+ # end
259
+ #
260
+ # foo = lambda do |x|
261
+ # x * 100
262
+ # end
263
+ #
264
+ # Here, it is impossible to tell from the return value of `lambda` whether
265
+ # the inner block's return value is significant.
266
+ - lambda
267
+ - proc
268
+ - it
269
+
270
+ Style/BracesAroundHashParameters:
271
+ EnforcedStyle: no_braces
272
+ SupportedStyles:
273
+ # The `braces` style enforces braces around all method parameters that are
274
+ # hashes.
275
+ - braces
276
+ # The `no_braces` style checks that the last parameter doesn't have braces
277
+ # around it.
278
+ - no_braces
279
+ # The `context_dependent` style checks that the last parameter doesn't have
280
+ # braces around it, but requires braces if the second to last parameter is
281
+ # also a hash literal.
282
+ - context_dependent
283
+
284
+ # Indentation of `when`.
285
+ Style/CaseIndentation:
286
+ EnforcedStyle: case
287
+ SupportedStyles:
288
+ - case
289
+ - end
290
+ IndentOneStep: false
291
+ # By default, the indentation width from `Style/IndentationWidth` is used.
292
+ # But it can be overridden by setting this parameter.
293
+ # This only matters if `IndentOneStep` is `true`
294
+ IndentationWidth: ~
295
+
296
+ Style/ClassAndModuleChildren:
297
+ # Checks the style of children definitions at classes and modules.
298
+ #
299
+ # Basically there are two different styles:
300
+ #
301
+ # `nested` - have each child on a separate line
302
+ # class Foo
303
+ # class Bar
304
+ # end
305
+ # end
306
+ #
307
+ # `compact` - combine definitions as much as possible
308
+ # class Foo::Bar
309
+ # end
310
+ #
311
+ # The compact style is only forced, for classes / modules with one child.
312
+ EnforcedStyle: nested
313
+ SupportedStyles:
314
+ - nested
315
+ - compact
316
+
317
+ Style/ClassCheck:
318
+ EnforcedStyle: is_a?
319
+ SupportedStyles:
320
+ - is_a?
321
+ - kind_of?
322
+
323
+ # Align with the style guide.
324
+ Style/CollectionMethods:
325
+ # Mapping from undesired method to desired_method
326
+ # e.g. to use `detect` over `find`:
327
+ #
328
+ # CollectionMethods:
329
+ # PreferredMethods:
330
+ # find: detect
331
+ PreferredMethods:
332
+ collect: 'map'
333
+ collect!: 'map!'
334
+ inject: 'reduce'
335
+ detect: 'find'
336
+ find_all: 'select'
337
+
338
+ # Use ` or %x around command literals.
339
+ Style/CommandLiteral:
340
+ EnforcedStyle: backticks
341
+ # backticks: Always use backticks.
342
+ # percent_x: Always use %x.
343
+ # mixed: Use backticks on single-line commands, and %x on multi-line commands.
344
+ SupportedStyles:
345
+ - backticks
346
+ - percent_x
347
+ - mixed
348
+ # If false, the cop will always recommend using %x if one or more backticks
349
+ # are found in the command string.
350
+ AllowInnerBackticks: false
351
+
352
+ # Checks formatting of special comments
353
+ Style/CommentAnnotation:
354
+ Keywords:
355
+ - TODO
356
+ - FIXME
357
+ - OPTIMIZE
358
+ - HACK
359
+ - REVIEW
360
+
361
+ Style/ConditionalAssignment:
362
+ EnforcedStyle: assign_to_condition
363
+ SupportedStyles:
364
+ - assign_to_condition
365
+ - assign_inside_condition
366
+ # When configured to `assign_to_condition`, `SingleLineConditionsOnly`
367
+ # will only register an offense when all branches of a condition are
368
+ # a single line.
369
+ # When configured to `assign_inside_condition`, `SingleLineConditionsOnly`
370
+ # will only register an offense for assignment to a condition that has
371
+ # at least one multiline branch.
372
+ SingleLineConditionsOnly: true
373
+
374
+ # Checks that you have put a copyright in a comment before any code.
375
+ #
376
+ # You can override the default Notice in your .rubocop.yml file.
377
+ #
378
+ # In order to use autocorrect, you must supply a value for the
379
+ # AutocorrectNotice key that matches the regexp Notice. A blank
380
+ # AutocorrectNotice will cause an error during autocorrect.
381
+ #
382
+ # Autocorrect will add a copyright notice in a comment at the top
383
+ # of the file immediately after any shebang or encoding comments.
384
+ #
385
+ # Example rubocop.yml:
386
+ #
387
+ # Style/Copyright:
388
+ # Enabled: true
389
+ # Notice: 'Copyright (\(c\) )?2015 Yahoo! Inc'
390
+ # AutocorrectNotice: '# Copyright (c) 2015 Yahoo! Inc.'
391
+ #
392
+ Style/Copyright:
393
+ Notice: '^Copyright (\(c\) )?2[0-9]{3} .+'
394
+ AutocorrectNotice: ''
395
+
396
+ Style/DocumentationMethod:
397
+ RequireForNonPublicMethods: false
398
+
399
+ # Multi-line method chaining should be done with leading dots.
400
+ Style/DotPosition:
401
+ EnforcedStyle: trailing
402
+ SupportedStyles:
403
+ - leading
404
+ - trailing
405
+
406
+ # Warn on empty else statements
407
+ # empty - warn only on empty else
408
+ # nil - warn on else with nil in it
409
+ # both - warn on empty else and else with nil in it
410
+ Style/EmptyElse:
411
+ EnforcedStyle: both
412
+ SupportedStyles:
413
+ - empty
414
+ - nil
415
+ - both
416
+
417
+ # Use empty lines between defs.
418
+ Style/EmptyLineBetweenDefs:
419
+ # If true, this parameter means that single line method definitions don't
420
+ # need an empty line between them.
421
+ AllowAdjacentOneLineDefs: false
422
+
423
+ Style/EmptyLinesAroundBlockBody:
424
+ EnforcedStyle: no_empty_lines
425
+ SupportedStyles:
426
+ - empty_lines
427
+ - no_empty_lines
428
+
429
+ Style/EmptyLinesAroundClassBody:
430
+ EnforcedStyle: no_empty_lines
431
+ SupportedStyles:
432
+ - empty_lines
433
+ - no_empty_lines
434
+
435
+ Style/EmptyLinesAroundModuleBody:
436
+ EnforcedStyle: no_empty_lines
437
+ SupportedStyles:
438
+ - empty_lines
439
+ - no_empty_lines
440
+
441
+ # Checks whether the source file has a utf-8 encoding comment or not
442
+ # AutoCorrectEncodingComment must match the regex
443
+ # /#.*coding\s?[:=]\s?(?:UTF|utf)-8/
444
+ Style/Encoding:
445
+ EnforcedStyle: never
446
+ SupportedStyles:
447
+ - when_needed
448
+ - always
449
+ - never
450
+ AutoCorrectEncodingComment: '# encoding: utf-8'
451
+
452
+ Style/ExtraSpacing:
453
+ # When true, allows most uses of extra spacing if the intent is to align
454
+ # things with the previous or next line, not counting empty lines or comment
455
+ # lines.
456
+ AllowForAlignment: true
457
+ # When true, forces the alignment of = in assignments on consecutive lines.
458
+ ForceEqualSignAlignment: false
459
+
460
+ Style/FileName:
461
+ # File names listed in AllCops:Include are excluded by default. Add extra
462
+ # excludes here.
463
+ Exclude: []
464
+ # When true, requires that each source file should define a class or module
465
+ # with a name which matches the file name (converted to ... case).
466
+ # It further expects it to be nested inside modules which match the names
467
+ # of subdirectories in its path.
468
+ ExpectMatchingDefinition: false
469
+ # If non-nil, expect all source file names to match the following regex.
470
+ # Only the file name itself is matched, not the entire file path.
471
+ # Use anchors as necessary if you want to match the entire name rather than
472
+ # just a part of it.
473
+ Regex: ~
474
+ # With `IgnoreExecutableScripts` set to `true`, this cop does not
475
+ # report offending filenames for executable scripts (i.e. source
476
+ # files with a shebang in the first line).
477
+ IgnoreExecutableScripts: true
478
+
479
+ Style/FirstParameterIndentation:
480
+ EnforcedStyle: special_for_inner_method_call_in_parentheses
481
+ SupportedStyles:
482
+ # The first parameter should always be indented one step more than the
483
+ # preceding line.
484
+ - consistent
485
+ # The first parameter should normally be indented one step more than the
486
+ # preceding line, but if it's a parameter for a method call that is itself
487
+ # a parameter in a method call, then the inner parameter should be indented
488
+ # relative to the inner method.
489
+ - special_for_inner_method_call
490
+ # Same as special_for_inner_method_call except that the special rule only
491
+ # applies if the outer method call encloses its arguments in parentheses.
492
+ - special_for_inner_method_call_in_parentheses
493
+ # By default, the indentation width from Style/IndentationWidth is used
494
+ # But it can be overridden by setting this parameter
495
+ IndentationWidth: ~
496
+
497
+ # Checks use of for or each in multiline loops.
498
+ Style/For:
499
+ EnforcedStyle: each
500
+ SupportedStyles:
501
+ - for
502
+ - each
503
+
504
+ # Enforce the method used for string formatting.
505
+ Style/FormatString:
506
+ EnforcedStyle: format
507
+ SupportedStyles:
508
+ - format
509
+ - sprintf
510
+ - percent
511
+
512
+ Style/FrozenStringLiteralComment:
513
+ EnforcedStyle: when_needed
514
+ SupportedStyles:
515
+ # `when_needed` will add the frozen string literal comment to files
516
+ # only when the `TargetRubyVersion` is set to 2.3+.
517
+ - when_needed
518
+ # `always` will always add the frozen string literal comment to a file
519
+ # regardless of the Ruby version or if `freeze` or `<<` are called on a
520
+ # string literal. If you run code against multiple versions of Ruby, it is
521
+ # possible that this will create errors in Ruby 2.3.0+.
522
+ - always
523
+
524
+ # Built-in global variables are allowed by default.
525
+ Style/GlobalVars:
526
+ AllowedVariables: []
527
+
528
+ # `MinBodyLength` defines the number of lines of the a body of an if / unless
529
+ # needs to have to trigger this cop
530
+ Style/GuardClause:
531
+ MinBodyLength: 1
532
+
533
+ Style/HashSyntax:
534
+ EnforcedStyle: ruby19
535
+ SupportedStyles:
536
+ # checks for 1.9 syntax (e.g. {a: 1}) for all symbol keys
537
+ - ruby19
538
+ # checks for hash rocket syntax for all hashes
539
+ - hash_rockets
540
+ # forbids mixed key syntaxes (e.g. {a: 1, :b => 2})
541
+ - no_mixed_keys
542
+ # enforces both ruby19 and no_mixed_keys styles
543
+ - ruby19_no_mixed_keys
544
+ # Force hashes that have a symbol value to use hash rockets
545
+ UseHashRocketsWithSymbolValues: false
546
+ # Do not suggest { a?: 1 } over { :a? => 1 } in ruby19 style
547
+ PreferHashRocketsForNonAlnumEndingSymbols: false
548
+
549
+ Style/IfUnlessModifier:
550
+ MaxLineLength: 80
551
+
552
+ Style/IndentationConsistency:
553
+ # The difference between `rails` and `normal` is that the `rails` style
554
+ # prescribes that in classes and modules the `protected` and `private`
555
+ # modifier keywords shall be indented the same as public methods and that
556
+ # protected and private members shall be indented one step more than the
557
+ # modifiers. Other than that, both styles mean that entities on the same
558
+ # logical depth shall have the same indentation.
559
+ EnforcedStyle: normal
560
+ SupportedStyles:
561
+ - normal
562
+ - rails
563
+
564
+ Style/IndentationWidth:
565
+ # Number of spaces for each indentation level.
566
+ Width: 2
567
+
568
+ # Checks the indentation of the first element in an array literal.
569
+ Style/IndentArray:
570
+ # The value `special_inside_parentheses` means that array literals with
571
+ # brackets that have their opening bracket on the same line as a surrounding
572
+ # opening round parenthesis, shall have their first element indented relative
573
+ # to the first position inside the parenthesis.
574
+ #
575
+ # The value `consistent` means that the indentation of the first element shall
576
+ # always be relative to the first position of the line where the opening
577
+ # bracket is.
578
+ #
579
+ # The value `align_brackets` means that the indentation of the first element
580
+ # shall always be relative to the position of the opening bracket.
581
+ EnforcedStyle: special_inside_parentheses
582
+ SupportedStyles:
583
+ - special_inside_parentheses
584
+ - consistent
585
+ - align_brackets
586
+ # By default, the indentation width from Style/IndentationWidth is used
587
+ # But it can be overridden by setting this parameter
588
+ IndentationWidth: ~
589
+
590
+ # Checks the indentation of assignment RHS, when on a different line from LHS
591
+ Style/IndentAssignment:
592
+ # By default, the indentation width from Style/IndentationWidth is used
593
+ # But it can be overridden by setting this parameter
594
+ IndentationWidth: ~
595
+
596
+ # Checks the indentation of the first key in a hash literal.
597
+ Style/IndentHash:
598
+ # The value `special_inside_parentheses` means that hash literals with braces
599
+ # that have their opening brace on the same line as a surrounding opening
600
+ # round parenthesis, shall have their first key indented relative to the
601
+ # first position inside the parenthesis.
602
+ #
603
+ # The value `consistent` means that the indentation of the first key shall
604
+ # always be relative to the first position of the line where the opening
605
+ # brace is.
606
+ #
607
+ # The value `align_braces` means that the indentation of the first key shall
608
+ # always be relative to the position of the opening brace.
609
+ EnforcedStyle: special_inside_parentheses
610
+ SupportedStyles:
611
+ - special_inside_parentheses
612
+ - consistent
613
+ - align_braces
614
+ # By default, the indentation width from Style/IndentationWidth is used
615
+ # But it can be overridden by setting this parameter
616
+ IndentationWidth: ~
617
+
618
+ Style/Lambda:
619
+ EnforcedStyle: literal
620
+ SupportedStyles:
621
+ - line_count_dependent
622
+ - lambda
623
+ - literal
624
+
625
+ Style/LambdaCall:
626
+ EnforcedStyle: call
627
+ SupportedStyles:
628
+ - call
629
+ - braces
630
+
631
+ Style/Next:
632
+ # With `always` all conditions at the end of an iteration needs to be
633
+ # replaced by next - with `skip_modifier_ifs` the modifier if like this one
634
+ # are ignored: [1, 2].each { |a| return 'yes' if a == 1 }
635
+ EnforcedStyle: skip_modifier_ifs
636
+ # `MinBodyLength` defines the number of lines of the a body of an if / unless
637
+ # needs to have to trigger this cop
638
+ MinBodyLength: 3
639
+ SupportedStyles:
640
+ - skip_modifier_ifs
641
+ - always
642
+
643
+ Style/NonNilCheck:
644
+ # With `IncludeSemanticChanges` set to `true`, this cop reports offenses for
645
+ # `!x.nil?` and autocorrects that and `x != nil` to solely `x`, which is
646
+ # **usually** OK, but might change behavior.
647
+ #
648
+ # With `IncludeSemanticChanges` set to `false`, this cop does not report
649
+ # offenses for `!x.nil?` and does no changes that might change behavior.
650
+ IncludeSemanticChanges: false
651
+
652
+ Style/NumericPredicate:
653
+ EnforcedStyle: predicate
654
+ SupportedStyles:
655
+ - predicate
656
+ - comparison
657
+ # Exclude RSpec specs because assertions like `expect(1).to be > 0` cause
658
+ # false positives.
659
+ Exclude:
660
+ - 'spec/**/*'
661
+
662
+ Style/MethodDefParentheses:
663
+ EnforcedStyle: require_parentheses
664
+ SupportedStyles:
665
+ - require_parentheses
666
+ - require_no_parentheses
667
+ - require_no_parentheses_except_multiline
668
+
669
+ Style/MethodName:
670
+ EnforcedStyle: snake_case
671
+ SupportedStyles:
672
+ - snake_case
673
+ - camelCase
674
+
675
+ Style/ModuleFunction:
676
+ EnforcedStyle: module_function
677
+ SupportedStyles:
678
+ - module_function
679
+ - extend_self
680
+
681
+ Style/MultilineArrayBraceLayout:
682
+ EnforcedStyle: symmetrical
683
+ SupportedStyles:
684
+ # symmetrical: closing brace is positioned in same way as opening brace
685
+ # new_line: closing brace is always on a new line
686
+ # same_line: closing brace is always on the same line as last element
687
+ - symmetrical
688
+ - new_line
689
+ - same_line
690
+
691
+ Style/MultilineAssignmentLayout:
692
+ # The types of assignments which are subject to this rule.
693
+ SupportedTypes:
694
+ - block
695
+ - case
696
+ - class
697
+ - if
698
+ - kwbegin
699
+ - module
700
+ EnforcedStyle: new_line
701
+ SupportedStyles:
702
+ # Ensures that the assignment operator and the rhs are on the same line for
703
+ # the set of supported types.
704
+ - same_line
705
+ # Ensures that the assignment operator and the rhs are on separate lines
706
+ # for the set of supported types.
707
+ - new_line
708
+
709
+ Style/MultilineHashBraceLayout:
710
+ EnforcedStyle: symmetrical
711
+ SupportedStyles:
712
+ # symmetrical: closing brace is positioned in same way as opening brace
713
+ # new_line: closing brace is always on a new line
714
+ # same_line: closing brace is always on same line as last element
715
+ - symmetrical
716
+ - new_line
717
+ - same_line
718
+
719
+ Style/MultilineIfModifier:
720
+ # Only use if/unless modifiers on single line statements.
721
+ Enabled: false
722
+
723
+ Style/MultilineMethodCallBraceLayout:
724
+ EnforcedStyle: symmetrical
725
+ SupportedStyles:
726
+ # symmetrical: closing brace is positioned in same way as opening brace
727
+ # new_line: closing brace is always on a new line
728
+ # same_line: closing brace is always on the same line as last argument
729
+ - symmetrical
730
+ - new_line
731
+ - same_line
732
+
733
+ Style/MultilineMethodCallIndentation:
734
+ EnforcedStyle: aligned
735
+ SupportedStyles:
736
+ - aligned
737
+ - indented
738
+ - indented_relative_to_receiver
739
+ # By default, the indentation width from Style/IndentationWidth is used
740
+ # But it can be overridden by setting this parameter
741
+ IndentationWidth: ~
742
+
743
+ Style/MultilineMethodDefinitionBraceLayout:
744
+ EnforcedStyle: symmetrical
745
+ SupportedStyles:
746
+ # symmetrical: closing brace is positioned in same way as opening brace
747
+ # new_line: closing brace is always on a new line
748
+ # same_line: closing brace is always on the same line as last parameter
749
+ - symmetrical
750
+ - new_line
751
+ - same_line
752
+
753
+ Style/MultilineOperationIndentation:
754
+ EnforcedStyle: aligned
755
+ SupportedStyles:
756
+ - aligned
757
+ - indented
758
+ # By default, the indentation width from Style/IndentationWidth is used
759
+ # But it can be overridden by setting this parameter
760
+ IndentationWidth: ~
761
+
762
+ Style/NumericLiterals:
763
+ MinDigits: 5
764
+
765
+ Style/NumericLiteralPrefix:
766
+ EnforcedOctalStyle: zero_with_o
767
+ SupportedOctalStyles:
768
+ - zero_with_o
769
+ - zero_only
770
+
771
+ Style/OptionHash:
772
+ # A list of parameter names that will be flagged by this cop.
773
+ SuspiciousParamNames:
774
+ - options
775
+ - opts
776
+ - args
777
+ - params
778
+ - parameters
779
+
780
+ # Allow safe assignment in conditions.
781
+ Style/ParenthesesAroundCondition:
782
+ AllowSafeAssignment: true
783
+
784
+ Style/PercentLiteralDelimiters:
785
+ PreferredDelimiters:
786
+ '%': ()
787
+ '%i': ()
788
+ '%q': ()
789
+ '%Q': ()
790
+ '%r': '{}'
791
+ '%s': ()
792
+ '%w': ()
793
+ '%W': ()
794
+ '%x': ()
795
+
796
+ Style/PercentQLiterals:
797
+ EnforcedStyle: lower_case_q
798
+ SupportedStyles:
799
+ - lower_case_q # Use %q when possible, %Q when necessary
800
+ - upper_case_q # Always use %Q
801
+
802
+ Style/PredicateName:
803
+ # Predicate name prefixes.
804
+ NamePrefix:
805
+ - is_
806
+ - has_
807
+ - have_
808
+ # Predicate name prefixes that should be removed.
809
+ NamePrefixBlacklist:
810
+ - is_
811
+ - has_
812
+ - have_
813
+ # Predicate names which, despite having a blacklisted prefix, or no ?,
814
+ # should still be accepted
815
+ NameWhitelist:
816
+ - is_a?
817
+ # Exclude Rspec specs because there is a strong convetion to write spec
818
+ # helpers in the form of `have_something` or `be_something`.
819
+ Exclude:
820
+ - 'spec/**/*'
821
+
822
+ Style/RaiseArgs:
823
+ EnforcedStyle: exploded
824
+ SupportedStyles:
825
+ - compact # raise Exception.new(msg)
826
+ - exploded # raise Exception, msg
827
+
828
+ Style/RedundantReturn:
829
+ # When true allows code like `return x, y`.
830
+ AllowMultipleReturnValues: false
831
+
832
+ # Use / or %r around regular expressions.
833
+ Style/RegexpLiteral:
834
+ EnforcedStyle: slashes
835
+ # slashes: Always use slashes.
836
+ # percent_r: Always use %r.
837
+ # mixed: Use slashes on single-line regexes, and %r on multi-line regexes.
838
+ SupportedStyles:
839
+ - slashes
840
+ - percent_r
841
+ - mixed
842
+ # If false, the cop will always recommend using %r if one or more slashes
843
+ # are found in the regexp string.
844
+ AllowInnerSlashes: false
845
+
846
+ Style/Semicolon:
847
+ # Allow ; to separate several expressions on the same line.
848
+ AllowAsExpressionSeparator: false
849
+
850
+ Style/SignalException:
851
+ EnforcedStyle: only_raise
852
+ SupportedStyles:
853
+ - only_raise
854
+ - only_fail
855
+ - semantic
856
+
857
+ Style/SingleLineBlockParams:
858
+ Methods:
859
+ - reduce:
860
+ - a
861
+ - e
862
+ - inject:
863
+ - a
864
+ - e
865
+
866
+ Style/SingleLineMethods:
867
+ AllowIfMethodIsEmpty: true
868
+
869
+ Style/SpaceBeforeFirstArg:
870
+ # When true, allows most uses of extra spacing if the intent is to align
871
+ # things with the previous or next line, not counting empty lines or comment
872
+ # lines.
873
+ AllowForAlignment: true
874
+
875
+ Style/SpecialGlobalVars:
876
+ EnforcedStyle: use_english_names
877
+ SupportedStyles:
878
+ - use_perl_names
879
+ - use_english_names
880
+
881
+ Style/StabbyLambdaParentheses:
882
+ EnforcedStyle: require_parentheses
883
+ SupportedStyles:
884
+ - require_parentheses
885
+ - require_no_parentheses
886
+
887
+ Style/StringLiterals:
888
+ EnforcedStyle: single_quotes
889
+ SupportedStyles:
890
+ - single_quotes
891
+ - double_quotes
892
+ # If true, strings which span multiple lines using \ for continuation must
893
+ # use the same type of quotes on each line.
894
+ ConsistentQuotesInMultiline: false
895
+
896
+ Style/StringLiteralsInInterpolation:
897
+ EnforcedStyle: single_quotes
898
+ SupportedStyles:
899
+ - single_quotes
900
+ - double_quotes
901
+
902
+ Style/StringMethods:
903
+ # Mapping from undesired method to desired_method
904
+ # e.g. to use `to_sym` over `intern`:
905
+ #
906
+ # StringMethods:
907
+ # PreferredMethods:
908
+ # intern: to_sym
909
+ PreferredMethods:
910
+ intern: to_sym
911
+
912
+ Style/SpaceAroundBlockParameters:
913
+ EnforcedStyleInsidePipes: no_space
914
+ SupportedStylesInsidePipes:
915
+ - space
916
+ - no_space
917
+
918
+ Style/SpaceAroundEqualsInParameterDefault:
919
+ EnforcedStyle: space
920
+ SupportedStyles:
921
+ - space
922
+ - no_space
923
+
924
+ Style/SpaceAroundOperators:
925
+ # When true, allows most uses of extra spacing if the intent is to align
926
+ # with an operator on the previous or next line, not counting empty lines
927
+ # or comment lines.
928
+ AllowForAlignment: true
929
+
930
+ Style/SpaceBeforeBlockBraces:
931
+ EnforcedStyle: space
932
+ SupportedStyles:
933
+ - space
934
+ - no_space
935
+
936
+ Style/SpaceInsideBlockBraces:
937
+ EnforcedStyle: space
938
+ SupportedStyles:
939
+ - space
940
+ - no_space
941
+ # Valid values are: space, no_space
942
+ EnforcedStyleForEmptyBraces: no_space
943
+ # Space between { and |. Overrides EnforcedStyle if there is a conflict.
944
+ SpaceBeforeBlockParameters: true
945
+
946
+ Style/SpaceInsideHashLiteralBraces:
947
+ EnforcedStyle: space
948
+ EnforcedStyleForEmptyBraces: no_space
949
+ SupportedStyles:
950
+ - space
951
+ - no_space
952
+ # 'compact' normally requires a space inside hash braces, with the exception
953
+ # that successive left braces or right braces are collapsed together
954
+ - compact
955
+
956
+ Style/SpaceInsideStringInterpolation:
957
+ EnforcedStyle: no_space
958
+ SupportedStyles:
959
+ - space
960
+ - no_space
961
+
962
+ Style/SymbolArray:
963
+ EnforcedStyle: percent
964
+ SupportedStyles:
965
+ - percent
966
+ - brackets
967
+
968
+ Style/SymbolProc:
969
+ # A list of method names to be ignored by the check.
970
+ # The names should be fairly unique, otherwise you'll end up ignoring lots of code.
971
+ IgnoredMethods:
972
+ - respond_to
973
+ - define_method
974
+
975
+ Style/TernaryParentheses:
976
+ EnforcedStyle: require_no_parentheses
977
+ SupportedStyles:
978
+ - require_parentheses
979
+ - require_no_parentheses
980
+ AllowSafeAssignment: true
981
+
982
+ Style/TrailingBlankLines:
983
+ EnforcedStyle: final_newline
984
+ SupportedStyles:
985
+ - final_newline
986
+ - final_blank_line
987
+
988
+ Style/TrailingCommaInArguments:
989
+ # If `comma`, the cop requires a comma after the last argument, but only for
990
+ # parenthesized method calls where each argument is on its own line.
991
+ # If `consistent_comma`, the cop requires a comma after the last argument,
992
+ # for all parenthesized method calls with arguments.
993
+ EnforcedStyleForMultiline: no_comma
994
+ SupportedStylesForMultiline:
995
+ - comma
996
+ - consistent_comma
997
+ - no_comma
998
+
999
+ Style/TrailingCommaInLiteral:
1000
+ # If `comma`, the cop requires a comma after the last item in an array or
1001
+ # hash, but only when each item is on its own line.
1002
+ # If `consistent_comma`, the cop requires a comma after the last item of all
1003
+ # non-empty array and hash literals.
1004
+ EnforcedStyleForMultiline: no_comma
1005
+ SupportedStylesForMultiline:
1006
+ - comma
1007
+ - consistent_comma
1008
+ - no_comma
1009
+
1010
+ # TrivialAccessors requires exact name matches and doesn't allow
1011
+ # predicated methods by default.
1012
+ Style/TrivialAccessors:
1013
+ # When set to false the cop will suggest the use of accessor methods
1014
+ # in situations like:
1015
+ #
1016
+ # def name
1017
+ # @other_name
1018
+ # end
1019
+ #
1020
+ # This way you can uncover "hidden" attributes in your code.
1021
+ ExactNameMatch: true
1022
+ AllowPredicates: true
1023
+ # Allows trivial writers that don't end in an equal sign. e.g.
1024
+ #
1025
+ # def on_exception(action)
1026
+ # @on_exception=action
1027
+ # end
1028
+ # on_exception :restart
1029
+ #
1030
+ # Commonly used in DSLs
1031
+ AllowDSLWriters: false
1032
+ IgnoreClassMethods: false
1033
+ Whitelist:
1034
+ - to_ary
1035
+ - to_a
1036
+ - to_c
1037
+ - to_enum
1038
+ - to_h
1039
+ - to_hash
1040
+ - to_i
1041
+ - to_int
1042
+ - to_io
1043
+ - to_open
1044
+ - to_path
1045
+ - to_proc
1046
+ - to_r
1047
+ - to_regexp
1048
+ - to_str
1049
+ - to_s
1050
+ - to_sym
1051
+
1052
+ Style/VariableName:
1053
+ EnforcedStyle: snake_case
1054
+ SupportedStyles:
1055
+ - snake_case
1056
+ - camelCase
1057
+
1058
+ Style/VariableNumber:
1059
+ EnforcedStyle: normalcase
1060
+ SupportedStyles:
1061
+ - snake_case
1062
+ - normalcase
1063
+ - non_integer
1064
+
1065
+ Style/WhileUntilModifier:
1066
+ MaxLineLength: 80
1067
+
1068
+ # WordArray enforces how array literals of word-like strings should be expressed.
1069
+ Style/WordArray:
1070
+ EnforcedStyle: percent
1071
+ SupportedStyles:
1072
+ # percent style: %w(word1 word2)
1073
+ - percent
1074
+ # bracket style: ['word1', 'word2']
1075
+ - brackets
1076
+ # The MinSize option causes the WordArray rule to be ignored for arrays
1077
+ # smaller than a certain size. The rule is only applied to arrays
1078
+ # whose element count is greater than or equal to MinSize.
1079
+ MinSize: 0
1080
+ # The regular expression WordRegex decides what is considered a word.
1081
+ WordRegex: !ruby/regexp '/\A[\p{Word}\n\t]+\z/'
1082
+
1083
+ Style/PreferredHashMethods:
1084
+ Enabled: true
1085
+
1086
+ Style/FrozenStringLiteralComment:
1087
+ Enabled: false
1088
+
1089
+ ##################### Metrics ##################################
1090
+
1091
+ Metrics/AbcSize:
1092
+ # The ABC size is a calculated magnitude, so this number can be an Integer or
1093
+ # a Float.
1094
+ Max: 18
1095
+
1096
+ Metrics/BlockNesting:
1097
+ Max: 3
1098
+
1099
+ Metrics/ClassLength:
1100
+ CountComments: false # count full line comments?
1101
+ Max: 100
1102
+
1103
+ Metrics/ModuleLength:
1104
+ CountComments: false # count full line comments?
1105
+ Max: 100
1106
+
1107
+ # Avoid complex methods.
1108
+ Metrics/CyclomaticComplexity:
1109
+ Max: 9
1110
+
1111
+ Metrics/LineLength:
1112
+ Max: 120
1113
+ # To make it possible to copy or click on URIs in the code, we allow lines
1114
+ # containing a URI to be longer than Max.
1115
+ AllowHeredoc: true
1116
+ AllowURI: true
1117
+ URISchemes:
1118
+ - http
1119
+ - https
1120
+
1121
+ Metrics/MethodLength:
1122
+ CountComments: false # count full line comments?
1123
+ Max: 20
1124
+
1125
+ Metrics/BlockLength:
1126
+ CountComments: false # count full line comments?
1127
+ Max: 25
1128
+ ExcludedMethods: []
1129
+ Exclude:
1130
+ - spec/**/*
1131
+
1132
+ Metrics/ParameterLists:
1133
+ Max: 10
1134
+ CountKeywordArgs: true
1135
+
1136
+ Metrics/PerceivedComplexity:
1137
+ Max: 7
1138
+
1139
+ ##################### Documentation #########################
1140
+
1141
+ Documentation:
1142
+ Enabled: false
1143
+
1144
+ ##################### Lint ##################################
1145
+
1146
+ # Allow safe assignment in conditions.
1147
+ Lint/AssignmentInCondition:
1148
+ AllowSafeAssignment: true
1149
+
1150
+ # checks whether the end keywords are aligned properly for `do` `end` blocks.
1151
+ Lint/BlockAlignment:
1152
+ # The value `start_of_block` means that the `end` should be aligned with line
1153
+ # where the `do` keyword appears.
1154
+ # The value `start_of_line` means it should be aligned with the whole
1155
+ # expression's starting line.
1156
+ # The value `either` means both are allowed.
1157
+ EnforcedStyleAlignWith: either
1158
+ SupportedStylesAlignWith:
1159
+ - either
1160
+ - start_of_block
1161
+ - start_of_line
1162
+
1163
+ # Align ends correctly.
1164
+ Lint/EndAlignment:
1165
+ # The value `keyword` means that `end` should be aligned with the matching
1166
+ # keyword (`if`, `while`, etc.).
1167
+ # The value `variable` means that in assignments, `end` should be aligned
1168
+ # with the start of the variable on the left hand side of `=`. In all other
1169
+ # situations, `end` should still be aligned with the keyword.
1170
+ # The value `start_of_line` means that `end` should be aligned with the start
1171
+ # of the line which the matching keyword appears on.
1172
+ EnforcedStyleAlignWith: keyword
1173
+ SupportedStylesAlignWith:
1174
+ - keyword
1175
+ - variable
1176
+ - start_of_line
1177
+ AutoCorrect: false
1178
+
1179
+ Lint/DefEndAlignment:
1180
+ # The value `def` means that `end` should be aligned with the def keyword.
1181
+ # The value `start_of_line` means that `end` should be aligned with method
1182
+ # calls like `private`, `public`, etc, if present in front of the `def`
1183
+ # keyword on the same line.
1184
+ EnforcedStyleAlignWith: start_of_line
1185
+ SupportedStylesAlignWith:
1186
+ - start_of_line
1187
+ - def
1188
+ AutoCorrect: false
1189
+
1190
+ Lint/InheritException:
1191
+ # The default base class in favour of `Exception`.
1192
+ EnforcedStyle: runtime_error
1193
+ SupportedStyles:
1194
+ - runtime_error
1195
+ - standard_error
1196
+
1197
+ # Checks for unused block arguments
1198
+ Lint/UnusedBlockArgument:
1199
+ IgnoreEmptyBlocks: true
1200
+ AllowUnusedKeywordArguments: false
1201
+
1202
+ # Checks for unused method arguments.
1203
+ Lint/UnusedMethodArgument:
1204
+ AllowUnusedKeywordArguments: false
1205
+ IgnoreEmptyMethods: true
1206
+
1207
+ ##################### Performance ############################
1208
+
1209
+ Performance/RedundantMerge:
1210
+ # Max number of key-value pairs to consider an offense
1211
+ MaxKeyValuePairs: 2
1212
+
1213
+ ##################### Rails ##################################
1214
+
1215
+ Rails/ActionFilter:
1216
+ EnforcedStyle: action
1217
+ SupportedStyles:
1218
+ - action
1219
+ - filter
1220
+ Include:
1221
+ - app/controllers/**/*.rb
1222
+
1223
+ Rails/Date:
1224
+ # The value `strict` disallows usage of `Date.today`, `Date.current`,
1225
+ # `Date#to_time` etc.
1226
+ # The value `flexible` allows usage of `Date.current`, `Date.yesterday`, etc
1227
+ # (but not `Date.today`) which are overridden by ActiveSupport to handle current
1228
+ # time zone.
1229
+ EnforcedStyle: flexible
1230
+ SupportedStyles:
1231
+ - strict
1232
+ - flexible
1233
+
1234
+ Rails/Exit:
1235
+ Include:
1236
+ - app/**/*.rb
1237
+ - config/**/*.rb
1238
+ - lib/**/*.rb
1239
+ Exclude:
1240
+ - lib/**/*.rake
1241
+
1242
+ Rails/FindBy:
1243
+ Include:
1244
+ - app/models/**/*.rb
1245
+
1246
+ Rails/FindEach:
1247
+ Include:
1248
+ - app/models/**/*.rb
1249
+
1250
+ Rails/HasAndBelongsToMany:
1251
+ Include:
1252
+ - app/models/**/*.rb
1253
+
1254
+ Rails/NotNullColumn:
1255
+ Include:
1256
+ - db/migrate/*.rb
1257
+
1258
+ Rails/Output:
1259
+ Include:
1260
+ - app/**/*.rb
1261
+ - config/**/*.rb
1262
+ - db/**/*.rb
1263
+ - lib/**/*.rb
1264
+
1265
+ Rails/ReadWriteAttribute:
1266
+ Include:
1267
+ - app/models/**/*.rb
1268
+
1269
+ Rails/RequestReferer:
1270
+ EnforcedStyle: referer
1271
+ SupportedStyles:
1272
+ - referer
1273
+ - referrer
1274
+
1275
+ Rails/SafeNavigation:
1276
+ # This will convert usages of `try` to use safe navigation as well as `try!`.
1277
+ # `try` and `try!` work slighly differently. `try!` and safe navigation will
1278
+ # both raise a `NoMethodError` if the receiver of the method call does not
1279
+ # implement the intended method. `try` will not raise an exception for this.
1280
+ ConvertTry: false
1281
+
1282
+ Rails/ScopeArgs:
1283
+ Include:
1284
+ - app/models/**/*.rb
1285
+
1286
+ Rails/TimeZone:
1287
+ # The value `strict` means that `Time` should be used with `zone`.
1288
+ # The value `flexible` allows usage of `in_time_zone` instead of `zone`.
1289
+ EnforcedStyle: flexible
1290
+ SupportedStyles:
1291
+ - strict
1292
+ - flexible
1293
+
1294
+ Rails/UniqBeforePluck:
1295
+ EnforcedStyle: conservative
1296
+ SupportedStyles:
1297
+ - conservative
1298
+ - aggressive
1299
+ AutoCorrect: false
1300
+
1301
+ Rails/Validation:
1302
+ Include:
1303
+ - app/models/**/*.rb