.rubocop.yml in gist_updater-0.4.3 vs .rubocop.yml in gist_updater-0.4.4
- old
+ new
@@ -1,1285 +1,13 @@
-# This is the default configuration file. Enabling and disabling is configured
-# in separate files. This file adds all other parameters apart from Enabled.
-
-inherit_from:
- - enabled.yml
- - disabled.yml
-
-# Common configuration.
AllCops:
- # Include common Ruby source files.
- Include:
- - '**/*.gemspec'
- - '**/*.podspec'
- - '**/*.jbuilder'
- - '**/*.rake'
- - '**/*.opal'
- - '**/config.ru'
- - '**/Gemfile'
- - '**/Capfile'
- - '**/Guardfile'
- - '**/Podfile'
- - '**/Thorfile'
- - '**/Vagrantfile'
- - '**/Berksfile'
- - '**/Cheffile'
- - '**/Vagabondfile'
- - '**/Fastfile'
- - '**/*Fastfile'
Exclude:
- - 'Rakefile'
- - 'bin/console'
- - 'bin/setup'
- - 'vendor/**/*'
- # Default formatter will be used if no -f/--format option is given.
- DefaultFormatter: progress
- # Cop names are not displayed in offense messages by default. Change behavior
- # by overriding DisplayCopNames, or by giving the -D/--display-cop-names
- # option.
- DisplayCopNames: false
- # Style guide URLs are not displayed in offense messages by default. Change
- # behavior by overriding DisplayStyleGuide, or by giving the
- # -S/--display-style-guide option.
- DisplayStyleGuide: false
- # Extra details are not displayed in offense messages by default. Change
- # behavior by overriding ExtraDetails, or by giving the
- # -E/--extra-details option.
- ExtraDetails: false
- # Additional cops that do not reference a style guide rule may be enabled by
- # default. Change behavior by overriding StyleGuideCopsOnly, or by giving
- # the --only-guide-cops option.
- StyleGuideCopsOnly: false
- # All cops except the ones in disabled.yml are enabled by default. Change
- # this behavior by overriding DisabledByDefault. When DisabledByDefault is
- # true, all cops in the default configuration are disabled, and and only cops
- # in user configuration are enabled. This makes cops opt-in instead of
- # opt-out. Note that when DisabledByDefault is true, cops in user
- # configuration will be enabled even if they don't set the Enabled parameter.
- DisabledByDefault: false
- # Enables the result cache if true. Can be overridden by the --cache command
- # line option.
- UseCache: true
- # Threshold for how many files can be stored in the result cache before some
- # of the files are automatically removed.
- MaxFilesInCache: 20000
- # The cache will be stored in "rubocop_cache" under this directory. The name
- # "/tmp" is special and will be converted to the system temporary directory,
- # which is "/tmp" on Unix-like systems, but could be something else on other
- # systems.
- CacheRootDirectory: /tmp
- # The default cache root directory is /tmp, which on most systems is
- # writable by any system user. This means that it is possible for a
- # malicious user to anticipate the location of Rubocop's cache directory,
- # and create a symlink in its place that could cause Rubocop to overwrite
- # unintended files, or read malicious input. If you are certain that your
- # cache location is secure from this kind of attack, and wish to use a
- # symlinked cache location, set this value to "true".
- AllowSymlinksInCacheRootDirectory: false
- # What MRI version of the Ruby interpreter is the inspected code intended to
- # run on? (If there is more than one, set this to the lowest version.)
- # If a value is specified for TargetRubyVersion then it is used.
- # Else if .ruby-version exists and it contains an MRI version it is used.
- # Otherwise we fallback to the oldest officially supported Ruby version (2.0).
- TargetRubyVersion: 2.3
+ - Rakefile
+ - bin/*
+ - vendor/**/*
+ TargetRubyVersion: 2.2
-# Indent private/protected/public as deep as method definitions
-Style/AccessModifierIndentation:
- EnforcedStyle: indent
- SupportedStyles:
- - outdent
- - indent
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-Style/Alias:
- EnforcedStyle: prefer_alias
- SupportedStyles:
- - prefer_alias
- - prefer_alias_method
-
-# Align the elements of a hash literal if they span more than one line.
-Style/AlignHash:
- # Alignment of entries using hash rocket as separator. Valid values are:
- #
- # key - left alignment of keys
- # 'a' => 2
- # 'bb' => 3
- # separator - alignment of hash rockets, keys are right aligned
- # 'a' => 2
- # 'bb' => 3
- # table - left alignment of keys, hash rockets, and values
- # 'a' => 2
- # 'bb' => 3
- EnforcedHashRocketStyle: key
- # Alignment of entries using colon as separator. Valid values are:
- #
- # key - left alignment of keys
- # a: 0
- # bb: 1
- # separator - alignment of colons, keys are right aligned
- # a: 0
- # bb: 1
- # table - left alignment of keys and values
- # a: 0
- # bb: 1
- EnforcedColonStyle: key
- # Select whether hashes that are the last argument in a method call should be
- # inspected? Valid values are:
- #
- # always_inspect - Inspect both implicit and explicit hashes.
- # Registers an offense for:
- # function(a: 1,
- # b: 2)
- # Registers an offense for:
- # function({a: 1,
- # b: 2})
- # always_ignore - Ignore both implicit and explicit hashes.
- # Accepts:
- # function(a: 1,
- # b: 2)
- # Accepts:
- # function({a: 1,
- # b: 2})
- # ignore_implicit - Ignore only implicit hashes.
- # Accepts:
- # function(a: 1,
- # b: 2)
- # Registers an offense for:
- # function({a: 1,
- # b: 2})
- # ignore_explicit - Ignore only explicit hashes.
- # Accepts:
- # function({a: 1,
- # b: 2})
- # Registers an offense for:
- # function(a: 1,
- # b: 2)
- EnforcedLastArgumentHashStyle: always_inspect
- SupportedLastArgumentHashStyles:
- - always_inspect
- - always_ignore
- - ignore_implicit
- - ignore_explicit
-
-Style/AlignParameters:
- # Alignment of parameters in multi-line method calls.
- #
- # The `with_first_parameter` style aligns the following lines along the same
- # column as the first parameter.
- #
- # method_call(a,
- # b)
- #
- # The `with_fixed_indentation` style aligns the following lines with one
- # level of indentation relative to the start of the line with the method call.
- #
- # method_call(a,
- # b)
- EnforcedStyle: with_first_parameter
- SupportedStyles:
- - with_first_parameter
- - with_fixed_indentation
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-Style/AndOr:
- # Whether `and` and `or` are banned only in conditionals (conditionals)
- # or completely (always).
- EnforcedStyle: always
- SupportedStyles:
- - always
- - conditionals
-
-
-# Checks if usage of %() or %Q() matches configuration.
-Style/BarePercentLiterals:
- EnforcedStyle: bare_percent
- SupportedStyles:
- - percent_q
- - bare_percent
-
-Style/BlockDelimiters:
- EnforcedStyle: line_count_based
- SupportedStyles:
- # The `line_count_based` style enforces braces around single line blocks and
- # do..end around multi-line blocks.
- - line_count_based
- # The `semantic` style enforces braces around functional blocks, where the
- # primary purpose of the block is to return a value and do..end for
- # procedural blocks, where the primary purpose of the block is its
- # side-effects.
- #
- # This looks at the usage of a block's method to determine its type (e.g. is
- # the result of a `map` assigned to a variable or passed to another
- # method) but exceptions are permitted in the `ProceduralMethods`,
- # `FunctionalMethods` and `IgnoredMethods` sections below.
- - semantic
- # The `braces_for_chaining` style enforces braces around single line blocks
- # and do..end around multi-line blocks, except for multi-line blocks whose
- # return value is being chained with another method (in which case braces
- # are enforced).
- - braces_for_chaining
- ProceduralMethods:
- # Methods that are known to be procedural in nature but look functional from
- # their usage, e.g.
- #
- # time = Benchmark.realtime do
- # foo.bar
- # end
- #
- # Here, the return value of the block is discarded but the return value of
- # `Benchmark.realtime` is used.
- - benchmark
- - bm
- - bmbm
- - create
- - each_with_object
- - measure
- - new
- - realtime
- - tap
- - with_object
- FunctionalMethods:
- # Methods that are known to be functional in nature but look procedural from
- # their usage, e.g.
- #
- # let(:foo) { Foo.new }
- #
- # Here, the return value of `Foo.new` is used to define a `foo` helper but
- # doesn't appear to be used from the return value of `let`.
- - let
- - let!
- - subject
- - watch
- IgnoredMethods:
- # Methods that can be either procedural or functional and cannot be
- # categorised from their usage alone, e.g.
- #
- # foo = lambda do |x|
- # puts "Hello, #{x}"
- # end
- #
- # foo = lambda do |x|
- # x * 100
- # end
- #
- # Here, it is impossible to tell from the return value of `lambda` whether
- # the inner block's return value is significant.
- - lambda
- - proc
- - it
-
-Style/BracesAroundHashParameters:
- EnforcedStyle: no_braces
- SupportedStyles:
- # The `braces` style enforces braces around all method parameters that are
- # hashes.
- - braces
- # The `no_braces` style checks that the last parameter doesn't have braces
- # around it.
- - no_braces
- # The `context_dependent` style checks that the last parameter doesn't have
- # braces around it, but requires braces if the second to last parameter is
- # also a hash literal.
- - context_dependent
-
-# Indentation of `when`.
-Style/CaseIndentation:
- IndentWhenRelativeTo: case
- SupportedStyles:
- - case
- - end
- IndentOneStep: false
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- # This only matters if IndentOneStep is true
- IndentationWidth: ~
-
-Style/ClassAndModuleChildren:
- # Checks the style of children definitions at classes and modules.
- #
- # Basically there are two different styles:
- #
- # `nested` - have each child on a separate line
- # class Foo
- # class Bar
- # end
- # end
- #
- # `compact` - combine definitions as much as possible
- # class Foo::Bar
- # end
- #
- # The compact style is only forced, for classes / modules with one child.
- EnforcedStyle: nested
- SupportedStyles:
- - nested
- - compact
-
-Style/ClassCheck:
- EnforcedStyle: is_a?
- SupportedStyles:
- - is_a?
- - kind_of?
-
-# Align with the style guide.
-Style/CollectionMethods:
- # Mapping from undesired method to desired_method
- # e.g. to use `detect` over `find`:
- #
- # CollectionMethods:
- # PreferredMethods:
- # find: detect
- PreferredMethods:
- collect: 'map'
- collect!: 'map!'
- inject: 'reduce'
- detect: 'find'
- find_all: 'select'
-
-# Use ` or %x around command literals.
-Style/CommandLiteral:
- EnforcedStyle: backticks
- # backticks: Always use backticks.
- # percent_x: Always use %x.
- # mixed: Use backticks on single-line commands, and %x on multi-line commands.
- SupportedStyles:
- - backticks
- - percent_x
- - mixed
- # If false, the cop will always recommend using %x if one or more backticks
- # are found in the command string.
- AllowInnerBackticks: false
-
-# Checks formatting of special comments
-Style/CommentAnnotation:
- Keywords:
- - TODO
- - FIXME
- - OPTIMIZE
- - HACK
- - REVIEW
-
-Style/ConditionalAssignment:
- EnforcedStyle: assign_to_condition
- SupportedStyles:
- - assign_to_condition
- - assign_inside_condition
- # When configured to `assign_to_condition`, `SingleLineConditionsOnly`
- # will only register an offense when all branches of a condition are
- # a single line.
- # When configured to `assign_inside_condition`, `SingleLineConditionsOnly`
- # will only register an offense for assignment to a condition that has
- # at least one multiline branch.
- SingleLineConditionsOnly: true
-
-# Checks that you have put a copyright in a comment before any code.
-#
-# You can override the default Notice in your .rubocop.yml file.
-#
-# In order to use autocorrect, you must supply a value for the
-# AutocorrectNotice key that matches the regexp Notice. A blank
-# AutocorrectNotice will cause an error during autocorrect.
-#
-# Autocorrect will add a copyright notice in a comment at the top
-# of the file immediately after any shebang or encoding comments.
-#
-# Example rubocop.yml:
-#
-# Style/Copyright:
-# Enabled: true
-# Notice: 'Copyright (\(c\) )?2015 Yahoo! Inc'
-# AutocorrectNotice: '# Copyright (c) 2015 Yahoo! Inc.'
-#
-Style/Copyright:
- Notice: '^Copyright (\(c\) )?2[0-9]{3} .+'
- AutocorrectNotice: ''
-
-Style/DocumentationMethod:
- RequireForNonPublicMethods: false
-
-# Multi-line method chaining should be done with leading dots.
-Style/DotPosition:
- EnforcedStyle: leading
- SupportedStyles:
- - leading
- - trailing
-
-# Warn on empty else statements
-# empty - warn only on empty else
-# nil - warn on else with nil in it
-# both - warn on empty else and else with nil in it
-Style/EmptyElse:
- EnforcedStyle: both
- SupportedStyles:
- - empty
- - nil
- - both
-
-# Use empty lines between defs.
-Style/EmptyLineBetweenDefs:
- # If true, this parameter means that single line method definitions don't
- # need an empty line between them.
- AllowAdjacentOneLineDefs: false
-
-Style/EmptyLinesAroundBlockBody:
- EnforcedStyle: no_empty_lines
- SupportedStyles:
- - empty_lines
- - no_empty_lines
-
-Style/EmptyLinesAroundClassBody:
- EnforcedStyle: no_empty_lines
- SupportedStyles:
- - empty_lines
- - no_empty_lines
-
-Style/EmptyLinesAroundModuleBody:
- EnforcedStyle: no_empty_lines
- SupportedStyles:
- - empty_lines
- - no_empty_lines
-
-# Checks whether the source file has a utf-8 encoding comment or not
-# AutoCorrectEncodingComment must match the regex
-# /#.*coding\s?[:=]\s?(?:UTF|utf)-8/
-Style/Encoding:
- EnforcedStyle: never
- SupportedStyles:
- - when_needed
- - always
- - never
- AutoCorrectEncodingComment: '# encoding: utf-8'
-
-Style/ExtraSpacing:
- # When true, allows most uses of extra spacing if the intent is to align
- # things with the previous or next line, not counting empty lines or comment
- # lines.
- AllowForAlignment: true
- # When true, forces the alignment of = in assignments on consecutive lines.
- ForceEqualSignAlignment: false
-
-Style/FileName:
- # File names listed in AllCops:Include are excluded by default. Add extra
- # excludes here.
- Exclude: []
- # When true, requires that each source file should define a class or module
- # with a name which matches the file name (converted to ... case).
- # It further expects it to be nested inside modules which match the names
- # of subdirectories in its path.
- ExpectMatchingDefinition: false
- # If non-nil, expect all source file names to match the following regex.
- # Only the file name itself is matched, not the entire file path.
- # Use anchors as necessary if you want to match the entire name rather than
- # just a part of it.
- Regex: ~
- # With `IgnoreExecutableScripts` set to `true`, this cop does not
- # report offending filenames for executable scripts (i.e. source
- # files with a shebang in the first line).
- IgnoreExecutableScripts: true
-
-Style/FirstParameterIndentation:
- EnforcedStyle: special_for_inner_method_call_in_parentheses
- SupportedStyles:
- # The first parameter should always be indented one step more than the
- # preceding line.
- - consistent
- # The first parameter should normally be indented one step more than the
- # preceding line, but if it's a parameter for a method call that is itself
- # a parameter in a method call, then the inner parameter should be indented
- # relative to the inner method.
- - special_for_inner_method_call
- # Same as special_for_inner_method_call except that the special rule only
- # applies if the outer method call encloses its arguments in parentheses.
- - special_for_inner_method_call_in_parentheses
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-# Checks use of for or each in multiline loops.
-Style/For:
- EnforcedStyle: each
- SupportedStyles:
- - for
- - each
-
-# Enforce the method used for string formatting.
-Style/FormatString:
- EnforcedStyle: format
- SupportedStyles:
- - format
- - sprintf
- - percent
-
-Style/FrozenStringLiteralComment:
- EnforcedStyle: when_needed
- SupportedStyles:
- # `when_needed` will add the frozen string literal comment to files
- # only when the `TargetRubyVersion` is set to 2.3+.
- - when_needed
- # `always` will always add the frozen string literal comment to a file
- # regardless of the Ruby version or if `freeze` or `<<` are called on a
- # string literal. If you run code against multiple versions of Ruby, it is
- # possible that this will create errors in Ruby 2.3.0+.
- - always
-
-# Built-in global variables are allowed by default.
-Style/GlobalVars:
- AllowedVariables: []
-
-# `MinBodyLength` defines the number of lines of the a body of an if / unless
-# needs to have to trigger this cop
-Style/GuardClause:
- MinBodyLength: 1
-
-Style/HashSyntax:
- EnforcedStyle: ruby19
- SupportedStyles:
- # checks for 1.9 syntax (e.g. {a: 1}) for all symbol keys
- - ruby19
- # checks for hash rocket syntax for all hashes
- - hash_rockets
- # forbids mixed key syntaxes (e.g. {a: 1, :b => 2})
- - no_mixed_keys
- # enforces both ruby19 and no_mixed_keys styles
- - ruby19_no_mixed_keys
- # Force hashes that have a symbol value to use hash rockets
- UseHashRocketsWithSymbolValues: false
- # Do not suggest { a?: 1 } over { :a? => 1 } in ruby19 style
- PreferHashRocketsForNonAlnumEndingSymbols: false
-
-Style/IfUnlessModifier:
- MaxLineLength: 80
-
-Style/IndentationConsistency:
- # The difference between `rails` and `normal` is that the `rails` style
- # prescribes that in classes and modules the `protected` and `private`
- # modifier keywords shall be indented the same as public methods and that
- # protected and private members shall be indented one step more than the
- # modifiers. Other than that, both styles mean that entities on the same
- # logical depth shall have the same indentation.
- EnforcedStyle: normal
- SupportedStyles:
- - normal
- - rails
-
-Style/IndentationWidth:
- # Number of spaces for each indentation level.
- Width: 2
-
-# Checks the indentation of the first element in an array literal.
-Style/IndentArray:
- # The value `special_inside_parentheses` means that array literals with
- # brackets that have their opening bracket on the same line as a surrounding
- # opening round parenthesis, shall have their first element indented relative
- # to the first position inside the parenthesis.
- #
- # The value `consistent` means that the indentation of the first element shall
- # always be relative to the first position of the line where the opening
- # bracket is.
- #
- # The value `align_brackets` means that the indentation of the first element
- # shall always be relative to the position of the opening bracket.
- EnforcedStyle: special_inside_parentheses
- SupportedStyles:
- - special_inside_parentheses
- - consistent
- - align_brackets
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-# Checks the indentation of assignment RHS, when on a different line from LHS
-Style/IndentAssignment:
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-# Checks the indentation of the first key in a hash literal.
-Style/IndentHash:
- # The value `special_inside_parentheses` means that hash literals with braces
- # that have their opening brace on the same line as a surrounding opening
- # round parenthesis, shall have their first key indented relative to the
- # first position inside the parenthesis.
- #
- # The value `consistent` means that the indentation of the first key shall
- # always be relative to the first position of the line where the opening
- # brace is.
- #
- # The value `align_braces` means that the indentation of the first key shall
- # always be relative to the position of the opening brace.
- EnforcedStyle: special_inside_parentheses
- SupportedStyles:
- - special_inside_parentheses
- - consistent
- - align_braces
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-Style/Lambda:
- EnforcedStyle: line_count_dependent
- SupportedStyles:
- - line_count_dependent
- - lambda
- - literal
-
-Style/LambdaCall:
- EnforcedStyle: call
- SupportedStyles:
- - call
- - braces
-
-Style/Next:
- # With `always` all conditions at the end of an iteration needs to be
- # replaced by next - with `skip_modifier_ifs` the modifier if like this one
- # are ignored: [1, 2].each { |a| return 'yes' if a == 1 }
- EnforcedStyle: skip_modifier_ifs
- # `MinBodyLength` defines the number of lines of the a body of an if / unless
- # needs to have to trigger this cop
- MinBodyLength: 3
- SupportedStyles:
- - skip_modifier_ifs
- - always
-
-Style/NonNilCheck:
- # With `IncludeSemanticChanges` set to `true`, this cop reports offenses for
- # `!x.nil?` and autocorrects that and `x != nil` to solely `x`, which is
- # **usually** OK, but might change behavior.
- #
- # With `IncludeSemanticChanges` set to `false`, this cop does not report
- # offenses for `!x.nil?` and does no changes that might change behavior.
- IncludeSemanticChanges: false
-
-Style/NumericPredicate:
- EnforcedStyle: predicate
- SupportedStyles:
- - predicate
- - comparison
- # Exclude RSpec specs because assertions like `expect(1).to be > 0` cause
- # false positives.
+Metrics/BlockLength:
Exclude:
- - 'spec/**/*'
+ - spec/**/*
-Style/MethodDefParentheses:
- EnforcedStyle: require_parentheses
- SupportedStyles:
- - require_parentheses
- - require_no_parentheses
- - require_no_parentheses_except_multiline
-
-Style/MethodName:
- EnforcedStyle: snake_case
- SupportedStyles:
- - snake_case
- - camelCase
-
-Style/ModuleFunction:
- EnforcedStyle: module_function
- SupportedStyles:
- - module_function
- - extend_self
-
-Style/MultilineArrayBraceLayout:
- EnforcedStyle: symmetrical
- SupportedStyles:
- # symmetrical: closing brace is positioned in same way as opening brace
- # new_line: closing brace is always on a new line
- # same_line: closing brace is always on the same line as last element
- - symmetrical
- - new_line
- - same_line
-
-Style/MultilineAssignmentLayout:
- # The types of assignments which are subject to this rule.
- SupportedTypes:
- - block
- - case
- - class
- - if
- - kwbegin
- - module
- EnforcedStyle: new_line
- SupportedStyles:
- # Ensures that the assignment operator and the rhs are on the same line for
- # the set of supported types.
- - same_line
- # Ensures that the assignment operator and the rhs are on separate lines
- # for the set of supported types.
- - new_line
-
-Style/MultilineHashBraceLayout:
- EnforcedStyle: symmetrical
- SupportedStyles:
- # symmetrical: closing brace is positioned in same way as opening brace
- # new_line: closing brace is always on a new line
- # same_line: closing brace is always on same line as last element
- - symmetrical
- - new_line
- - same_line
-
-Style/MultilineMethodCallBraceLayout:
- EnforcedStyle: symmetrical
- SupportedStyles:
- # symmetrical: closing brace is positioned in same way as opening brace
- # new_line: closing brace is always on a new line
- # same_line: closing brace is always on the same line as last argument
- - symmetrical
- - new_line
- - same_line
-
-Style/MultilineMethodCallIndentation:
- EnforcedStyle: aligned
- SupportedStyles:
- - aligned
- - indented
- - indented_relative_to_receiver
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-Style/MultilineMethodDefinitionBraceLayout:
- EnforcedStyle: symmetrical
- SupportedStyles:
- # symmetrical: closing brace is positioned in same way as opening brace
- # new_line: closing brace is always on a new line
- # same_line: closing brace is always on the same line as last parameter
- - symmetrical
- - new_line
- - same_line
-
-Style/MultilineOperationIndentation:
- EnforcedStyle: aligned
- SupportedStyles:
- - aligned
- - indented
- # By default, the indentation width from Style/IndentationWidth is used
- # But it can be overridden by setting this parameter
- IndentationWidth: ~
-
-Style/NumericLiterals:
- MinDigits: 5
-
-Style/NumericLiteralPrefix:
- EnforcedOctalStyle: zero_with_o
- SupportedOctalStyles:
- - zero_with_o
- - zero_only
-
-Style/OptionHash:
- # A list of parameter names that will be flagged by this cop.
- SuspiciousParamNames:
- - options
- - opts
- - args
- - params
- - parameters
-
-# Allow safe assignment in conditions.
-Style/ParenthesesAroundCondition:
- AllowSafeAssignment: true
-
-Style/PercentLiteralDelimiters:
- PreferredDelimiters:
- '%': ()
- '%i': ()
- '%q': ()
- '%Q': ()
- '%r': '{}'
- '%s': ()
- '%w': ()
- '%W': ()
- '%x': ()
-
-Style/PercentQLiterals:
- EnforcedStyle: lower_case_q
- SupportedStyles:
- - lower_case_q # Use %q when possible, %Q when necessary
- - upper_case_q # Always use %Q
-
-Style/PredicateName:
- # Predicate name prefixes.
- NamePrefix:
- - is_
- - has_
- - have_
- # Predicate name prefixes that should be removed.
- NamePrefixBlacklist:
- - is_
- - has_
- - have_
- # Predicate names which, despite having a blacklisted prefix, or no ?,
- # should still be accepted
- NameWhitelist:
- - is_a?
- # Exclude Rspec specs because there is a strong convetion to write spec
- # helpers in the form of `have_something` or `be_something`.
- Exclude:
- - 'spec/**/*'
-
-Style/RaiseArgs:
- EnforcedStyle: exploded
- SupportedStyles:
- - compact # raise Exception.new(msg)
- - exploded # raise Exception, msg
-
-Style/RedundantReturn:
- # When true allows code like `return x, y`.
- AllowMultipleReturnValues: false
-
-# Use / or %r around regular expressions.
-Style/RegexpLiteral:
- EnforcedStyle: slashes
- # slashes: Always use slashes.
- # percent_r: Always use %r.
- # mixed: Use slashes on single-line regexes, and %r on multi-line regexes.
- SupportedStyles:
- - slashes
- - percent_r
- - mixed
- # If false, the cop will always recommend using %r if one or more slashes
- # are found in the regexp string.
- AllowInnerSlashes: false
-
-Style/Semicolon:
- # Allow ; to separate several expressions on the same line.
- AllowAsExpressionSeparator: false
-
-Style/SignalException:
- EnforcedStyle: only_raise
- SupportedStyles:
- - only_raise
- - only_fail
- - semantic
-
-Style/SingleLineBlockParams:
- Methods:
- - reduce:
- - a
- - e
- - inject:
- - a
- - e
-
-Style/SingleLineMethods:
- AllowIfMethodIsEmpty: true
-
-Style/SpaceBeforeFirstArg:
- # When true, allows most uses of extra spacing if the intent is to align
- # things with the previous or next line, not counting empty lines or comment
- # lines.
- AllowForAlignment: true
-
-Style/SpecialGlobalVars:
- EnforcedStyle: use_english_names
- SupportedStyles:
- - use_perl_names
- - use_english_names
-
-Style/StabbyLambdaParentheses:
- EnforcedStyle: require_parentheses
- SupportedStyles:
- - require_parentheses
- - require_no_parentheses
-
-Style/StringLiterals:
- EnforcedStyle: single_quotes
- SupportedStyles:
- - single_quotes
- - double_quotes
- # If true, strings which span multiple lines using \ for continuation must
- # use the same type of quotes on each line.
- ConsistentQuotesInMultiline: false
-
-Style/StringLiteralsInInterpolation:
- EnforcedStyle: single_quotes
- SupportedStyles:
- - single_quotes
- - double_quotes
-
-Style/StringMethods:
- # Mapping from undesired method to desired_method
- # e.g. to use `to_sym` over `intern`:
- #
- # StringMethods:
- # PreferredMethods:
- # intern: to_sym
- PreferredMethods:
- intern: to_sym
-
-Style/SpaceAroundBlockParameters:
- EnforcedStyleInsidePipes: no_space
- SupportedStyles:
- - space
- - no_space
-
-Style/SpaceAroundEqualsInParameterDefault:
- EnforcedStyle: space
- SupportedStyles:
- - space
- - no_space
-
-Style/SpaceAroundOperators:
- # When true, allows most uses of extra spacing if the intent is to align
- # with an operator on the previous or next line, not counting empty lines
- # or comment lines.
- AllowForAlignment: true
-
-Style/SpaceBeforeBlockBraces:
- EnforcedStyle: space
- SupportedStyles:
- - space
- - no_space
-
-Style/SpaceInsideBlockBraces:
- EnforcedStyle: space
- SupportedStyles:
- - space
- - no_space
- # Valid values are: space, no_space
- EnforcedStyleForEmptyBraces: no_space
- # Space between { and |. Overrides EnforcedStyle if there is a conflict.
- SpaceBeforeBlockParameters: true
-
-Style/SpaceInsideHashLiteralBraces:
- EnforcedStyle: space
- EnforcedStyleForEmptyBraces: no_space
- SupportedStyles:
- - space
- - no_space
- # 'compact' normally requires a space inside hash braces, with the exception
- # that successive left braces or right braces are collapsed together
- - compact
-
-Style/SpaceInsideStringInterpolation:
- EnforcedStyle: no_space
- SupportedStyles:
- - space
- - no_space
-
-Style/SymbolArray:
- EnforcedStyle: percent
- SupportedStyles:
- - percent
- - brackets
-
-Style/SymbolProc:
- # A list of method names to be ignored by the check.
- # The names should be fairly unique, otherwise you'll end up ignoring lots of code.
- IgnoredMethods:
- - respond_to
- - define_method
-
-Style/TernaryParentheses:
- EnforcedStyle: require_no_parentheses
- SupportedStyles:
- - require_parentheses
- - require_no_parentheses
- AllowSafeAssignment: true
-
-Style/TrailingBlankLines:
- EnforcedStyle: final_newline
- SupportedStyles:
- - final_newline
- - final_blank_line
-
-Style/TrailingCommaInArguments:
- # If `comma`, the cop requires a comma after the last argument, but only for
- # parenthesized method calls where each argument is on its own line.
- # If `consistent_comma`, the cop requires a comma after the last argument,
- # for all parenthesized method calls with arguments.
- EnforcedStyleForMultiline: no_comma
- SupportedStyles:
- - comma
- - consistent_comma
- - no_comma
-
-Style/TrailingCommaInLiteral:
- # If `comma`, the cop requires a comma after the last item in an array or
- # hash, but only when each item is on its own line.
- # If `consistent_comma`, the cop requires a comma after the last item of all
- # non-empty array and hash literals.
- EnforcedStyleForMultiline: no_comma
- SupportedStyles:
- - comma
- - consistent_comma
- - no_comma
-
-# TrivialAccessors requires exact name matches and doesn't allow
-# predicated methods by default.
-Style/TrivialAccessors:
- # When set to false the cop will suggest the use of accessor methods
- # in situations like:
- #
- # def name
- # @other_name
- # end
- #
- # This way you can uncover "hidden" attributes in your code.
- ExactNameMatch: true
- AllowPredicates: true
- # Allows trivial writers that don't end in an equal sign. e.g.
- #
- # def on_exception(action)
- # @on_exception=action
- # end
- # on_exception :restart
- #
- # Commonly used in DSLs
- AllowDSLWriters: false
- IgnoreClassMethods: false
- Whitelist:
- - to_ary
- - to_a
- - to_c
- - to_enum
- - to_h
- - to_hash
- - to_i
- - to_int
- - to_io
- - to_open
- - to_path
- - to_proc
- - to_r
- - to_regexp
- - to_str
- - to_s
- - to_sym
-
-Style/VariableName:
- EnforcedStyle: snake_case
- SupportedStyles:
- - snake_case
- - camelCase
-
-Style/VariableNumber:
- EnforcedStyle: normalcase
- SupportedStyles:
- - snake_case
- - normalcase
- - non_integer
-
-Style/WhileUntilModifier:
- MaxLineLength: 80
-
-# WordArray enforces how array literals of word-like strings should be expressed.
-Style/WordArray:
- EnforcedStyle: percent
- SupportedStyles:
- # percent style: %w(word1 word2)
- - percent
- # bracket style: ['word1', 'word2']
- - brackets
- # The MinSize option causes the WordArray rule to be ignored for arrays
- # smaller than a certain size. The rule is only applied to arrays
- # whose element count is greater than or equal to MinSize.
- MinSize: 0
- # The regular expression WordRegex decides what is considered a word.
- WordRegex: !ruby/regexp '/\A[\p{Word}\n\t]+\z/'
-
-##################### Metrics ##################################
-
-Metrics/AbcSize:
- # The ABC size is a calculated magnitude, so this number can be an Integer or
- # a Float.
- Max: 15
-
-Metrics/BlockNesting:
- Max: 3
-
-Metrics/ClassLength:
- CountComments: false # count full line comments?
- Max: 100
-
-Metrics/ModuleLength:
- CountComments: false # count full line comments?
- Max: 100
-
-# Avoid complex methods.
-Metrics/CyclomaticComplexity:
- Max: 6
-
-Metrics/LineLength:
- Max: 80
- # To make it possible to copy or click on URIs in the code, we allow lines
- # containing a URI to be longer than Max.
- AllowHeredoc: true
- AllowURI: true
- URISchemes:
- - http
- - https
-
-Metrics/MethodLength:
- CountComments: false # count full line comments?
- Max: 10
-
-Metrics/ParameterLists:
- Max: 5
- CountKeywordArgs: true
-
-Metrics/PerceivedComplexity:
- Max: 7
-
-##################### Lint ##################################
-
-# Allow safe assignment in conditions.
-Lint/AssignmentInCondition:
- AllowSafeAssignment: true
-
-# checks whether the end keywords are aligned properly for `do` `end` blocks.
-Lint/BlockAlignment:
- # The value `start_of_block` means that the `end` should be aligned with line
- # where the `do` keyword appears.
- # The value `start_of_line` means it should be aligned with the whole
- # expression's starting line.
- # The value `either` means both are allowed.
- AlignWith: either
- SupportedStyles:
- - either
- - start_of_block
- - start_of_line
-
-# Align ends correctly.
-Lint/EndAlignment:
- # The value `keyword` means that `end` should be aligned with the matching
- # keyword (if, while, etc.).
- # The value `variable` means that in assignments, `end` should be aligned
- # with the start of the variable on the left hand side of `=`. In all other
- # situations, `end` should still be aligned with the keyword.
- # The value `start_of_line` means that `end` should be aligned with the start
- # of the line which the matching keyword appears on.
- AlignWith: keyword
- SupportedStyles:
- - keyword
- - variable
- - start_of_line
- AutoCorrect: false
-
-Lint/DefEndAlignment:
- # The value `def` means that `end` should be aligned with the def keyword.
- # The value `start_of_line` means that `end` should be aligned with method
- # calls like `private`, `public`, etc, if present in front of the `def`
- # keyword on the same line.
- AlignWith: start_of_line
- SupportedStyles:
- - start_of_line
- - def
- AutoCorrect: false
-
-Lint/InheritException:
- # The default base class in favour of `Exception`.
- EnforcedStyle: runtime_error
- SupportedStyles:
- - runtime_error
- - standard_error
-
-# Checks for unused block arguments
-Lint/UnusedBlockArgument:
- IgnoreEmptyBlocks: true
- AllowUnusedKeywordArguments: false
-
-# Checks for unused method arguments.
-Lint/UnusedMethodArgument:
- AllowUnusedKeywordArguments: false
- IgnoreEmptyMethods: true
-
-##################### Performance ############################
-
-Performance/RedundantMerge:
- # Max number of key-value pairs to consider an offense
- MaxKeyValuePairs: 2
-
-##################### Rails ##################################
-
-Rails/ActionFilter:
- EnforcedStyle: action
- SupportedStyles:
- - action
- - filter
- Include:
- - app/controllers/**/*.rb
-
-Rails/Date:
- # The value `strict` disallows usage of `Date.today`, `Date.current`,
- # `Date#to_time` etc.
- # The value `flexible` allows usage of `Date.current`, `Date.yesterday`, etc
- # (but not `Date.today`) which are overridden by ActiveSupport to handle current
- # time zone.
- EnforcedStyle: flexible
- SupportedStyles:
- - strict
- - flexible
-
-Rails/Exit:
- Include:
- - app/**/*.rb
- - config/**/*.rb
- - lib/**/*.rb
- Exclude:
- - lib/**/*.rake
-
-Rails/FindBy:
- Include:
- - app/models/**/*.rb
-
-Rails/FindEach:
- Include:
- - app/models/**/*.rb
-
-Rails/HasAndBelongsToMany:
- Include:
- - app/models/**/*.rb
-
-Rails/NotNullColumn:
- Include:
- - db/migrate/*.rb
-
-Rails/Output:
- Include:
- - app/**/*.rb
- - config/**/*.rb
- - db/**/*.rb
- - lib/**/*.rb
-
-Rails/ReadWriteAttribute:
- Include:
- - app/models/**/*.rb
-
-Rails/RequestReferer:
- EnforcedStyle: referer
- SupportedStyles:
- - referer
- - referrer
-
-Rails/SafeNavigation:
- # This will convert usages of `try` to use safe navigation as well as `try!`.
- # `try` and `try!` work slighly differently. `try!` and safe navigation will
- # both raise a `NoMethodError` if the receiver of the method call does not
- # implement the intended method. `try` will not raise an exception for this.
- ConvertTry: false
-
-Rails/ScopeArgs:
- Include:
- - app/models/**/*.rb
-
-Rails/TimeZone:
- # The value `strict` means that `Time` should be used with `zone`.
- # The value `flexible` allows usage of `in_time_zone` instead of `zone`.
- EnforcedStyle: flexible
- SupportedStyles:
- - strict
- - flexible
-
-Rails/UniqBeforePluck:
- EnforcedMode: conservative
- SupportedModes:
- - conservative
- - aggressive
- AutoCorrect: false
-
-Rails/Validation:
- Include:
- - app/models/**/*.rb
+Style/EmptyMethod:
+ EnforcedStyle: expanded