AllCops: TargetRubyVersion: 2.1 DisabledByDefault: true DisplayCopNames: true Include: - '**/Rakefile' - '**/config.ru' Exclude: - 'db/**/*' - 'script/**/*' - 'vendor/**/*' inherit_from: - bixby_rails_enabled.yml - bixby_rspec_enabled.yml # These are all the cops that are enabled in the default configuration. Style/AccessorMethodName: Enabled: true Style/Alias: Enabled: true Style/AlignArray: Enabled: true Style/AlignHash: Enabled: true Style/AlignParameters: Enabled: true Style/AndOr: Enabled: true Style/ArrayJoin: Enabled: true Style/AsciiComments: Enabled: true Style/AsciiIdentifiers: Enabled: true Style/Attr: Enabled: true Style/BeginBlock: Enabled: true Style/BarePercentLiterals: Enabled: true Style/BlockComments: Enabled: true Style/BlockEndNewline: Enabled: true Style/BlockDelimiters: Enabled: true Style/BracesAroundHashParameters: Enabled: true Style/CaseEquality: Enabled: true Style/CaseIndentation: Enabled: true Style/CharacterLiteral: Enabled: true Style/ClassAndModuleCamelCase: Enabled: true Style/ClassCheck: Enabled: true Style/ClassMethods: Enabled: true Style/ClassVars: Enabled: true Style/ClosingParenthesisIndentation: Enabled: true Style/ColonMethodCall: Enabled: true Style/CollectionMethods: PreferredMethods: collect: 'map' collect!: 'map!' inject: 'reduce' detect: 'find' find_all: 'select' Enabled: false Style/CommandLiteral: Enabled: true Style/CommentAnnotation: Enabled: true Style/CommentIndentation: Enabled: true Style/ConditionalAssignment: Enabled: true Style/ConstantName: Enabled: true Style/DefWithParentheses: Enabled: true Style/Documentation: Enabled: false Exclude: - 'spec/**/*' - 'test/**/*' Style/DotPosition: Enabled: true Style/DoubleNegation: Enabled: true Style/EachForSimpleLoop: Enabled: true Style/EachWithObject: Enabled: true Style/ElseAlignment: Enabled: true Style/EmptyElse: Enabled: true Style/EmptyCaseCondition: Enabled: true Style/EmptyLineBetweenDefs: Enabled: true Style/EmptyLines: Enabled: true Style/EmptyLinesAroundAccessModifier: Enabled: true Style/EmptyLinesAroundBlockBody: Enabled: true Style/EmptyLinesAroundClassBody: Enabled: true Style/EmptyLinesAroundModuleBody: Enabled: true Style/EmptyLinesAroundMethodBody: Enabled: true Style/EmptyLiteral: Enabled: true Style/EmptyMethod: Enabled: true Style/EndBlock: Enabled: true Style/EndOfLine: Enabled: true Style/EvenOdd: Enabled: true Style/ExtraSpacing: Enabled: true Style/FileName: Enabled: true Style/FrozenStringLiteralComment: Enabled: true Style/InitialIndentation: Enabled: true Style/FirstParameterIndentation: Enabled: true Style/FlipFlop: Enabled: true Style/For: Enabled: true Style/FormatString: Enabled: true Style/GlobalVars: Enabled: true Style/GuardClause: Enabled: true Style/HashSyntax: Enabled: true Style/IfInsideElse: Enabled: true Style/IfUnlessModifier: Enabled: true Style/IfUnlessModifierOfIfUnless: Enabled: true Style/IfWithSemicolon: Enabled: true Style/IndentationConsistency: SupportedStyles: - normal - rails EnforcedStyle: rails Style/IndentationWidth: Enabled: true Style/IdenticalConditionalBranches: Enabled: true Style/IndentArray: Enabled: true Style/IndentAssignment: Enabled: true Style/IndentHash: Enabled: true Style/InfiniteLoop: Enabled: true Style/Lambda: Enabled: true Style/SpaceInLambdaLiteral: Enabled: true Style/LambdaCall: Enabled: true Style/LeadingCommentSpace: Enabled: true Style/LineEndConcatenation: Enabled: true Style/MethodCallWithoutArgsParentheses: Enabled: true Style/MethodDefParentheses: Enabled: true Style/MethodName: Enabled: true Style/MethodMissing: Enabled: true Style/ModuleFunction: Enabled: true Style/MultilineArrayBraceLayout: Enabled: true Style/MultilineBlockChain: Enabled: true Style/MultilineBlockLayout: Enabled: true Style/MultilineHashBraceLayout: Enabled: true Style/MultilineIfThen: Enabled: true Style/MultilineIfModifier: Enabled: true Style/MultilineMemoization: Enabled: true Style/MultilineMethodCallBraceLayout: Enabled: true Style/MultilineMethodCallIndentation: Enabled: true Style/MultilineMethodDefinitionBraceLayout: Enabled: true Style/MultilineOperationIndentation: Enabled: true Style/MultilineTernaryOperator: Enabled: true Style/MutableConstant: Enabled: true Style/NegatedIf: Enabled: true Style/NegatedWhile: Enabled: true Style/NestedModifier: Enabled: true Style/NestedParenthesizedCalls: Enabled: true Style/NestedTernaryOperator: Enabled: true Style/Next: Enabled: true Style/NilComparison: Enabled: true Style/NonNilCheck: Enabled: true Style/Not: Enabled: true Style/NumericLiterals: Enabled: true Style/NumericLiteralPrefix: Enabled: true Style/NumericPredicate: # This will change to a new method call which isn't guaranteed to be on the # object. Switching these methods has to be done with knowledge of the types # of the variables which rubocop doesn't have. AutoCorrect: false Enabled: true Style/OneLineConditional: Enabled: true Style/OpMethod: Enabled: true Style/OptionalArguments: Enabled: true Style/ParallelAssignment: Enabled: true Style/ParenthesesAroundCondition: Enabled: true Style/PercentLiteralDelimiters: Enabled: true Style/PercentQLiterals: Enabled: true Style/PerlBackrefs: Enabled: true Style/PredicateName: Enabled: true Style/PreferredHashMethods: Enabled: true Style/Proc: Enabled: true Style/RaiseArgs: Enabled: true Style/RedundantBegin: Enabled: true Style/RedundantException: Enabled: true Style/RedundantFreeze: Enabled: true Style/RedundantParentheses: Enabled: true Style/RedundantReturn: Enabled: true Style/RedundantSelf: Enabled: true Style/RescueEnsureAlignment: Enabled: true Style/RescueModifier: Enabled: true Style/SafeNavigation: Enabled: true Style/SelfAssignment: Enabled: true Style/Semicolon: Enabled: true Style/SignalException: Enabled: true Style/SingleLineMethods: Enabled: true Style/SpaceBeforeFirstArg: Enabled: true Style/SpaceAfterColon: Enabled: true Style/SpaceAfterComma: Enabled: true Style/SpaceAfterMethodName: Enabled: true Style/SpaceAfterNot: Enabled: true Style/SpaceAfterSemicolon: Enabled: true Style/SpaceBeforeBlockBraces: Enabled: true Style/SpaceBeforeComma: Enabled: true Style/SpaceBeforeComment: Enabled: true Style/SpaceBeforeSemicolon: Enabled: true Style/SpaceInsideBlockBraces: Enabled: true Style/SpaceAroundBlockParameters: Enabled: true Style/SpaceAroundEqualsInParameterDefault: Enabled: true Style/SpaceAroundKeyword: Enabled: true Style/SpaceAroundOperators: Enabled: true Style/SpaceInsideArrayPercentLiteral: Enabled: true Style/SpaceInsidePercentLiteralDelimiters: Enabled: true Style/SpaceInsideBrackets: Enabled: true Style/SpaceInsideHashLiteralBraces: Enabled: true Style/SpaceInsideParens: Enabled: true Style/SpaceInsideRangeLiteral: Enabled: true Style/SpaceInsideStringInterpolation: Enabled: true Style/SpecialGlobalVars: Enabled: true Style/StabbyLambdaParentheses: Enabled: true Style/StringLiteralsInInterpolation: Enabled: true Style/StructInheritance: Enabled: true Style/SymbolLiteral: Enabled: true Style/SymbolProc: Enabled: true Style/Tab: Enabled: true Style/TernaryParentheses: Enabled: true Style/TrailingBlankLines: Enabled: true Style/TrailingCommaInArguments: Enabled: true Style/TrailingCommaInLiteral: Enabled: true Style/TrailingWhitespace: Enabled: true Style/TrivialAccessors: Enabled: true Style/UnlessElse: Enabled: true Style/UnneededCapitalW: Enabled: true Style/UnneededInterpolation: Enabled: true Style/UnneededPercentQ: Enabled: true Style/TrailingUnderscoreVariable: AllowNamedUnderscoreVariables: true Enabled: true Style/VariableInterpolation: Enabled: true Style/VariableName: Enabled: true Style/VariableNumber: Enabled: true Style/WhenThen: Enabled: true Style/WhileUntilDo: Enabled: true Style/WhileUntilModifier: Enabled: true Style/ZeroLengthPredicate: Enabled: true #################### Metrics ############################### Metrics/AbcSize: Enabled: true Max: 28 Metrics/BlockNesting: Enabled: true Metrics/ClassLength: Enabled: true Metrics/ModuleLength: Enabled: true Metrics/CyclomaticComplexity: Enabled: true Metrics/LineLength: Enabled: true Max: 200 Metrics/MethodLength: Enabled: true Max: 14 Metrics/BlockLength: Enabled: true Metrics/ParameterLists: Enabled: true Metrics/PerceivedComplexity: Enabled: true #################### Lint ################################## ### Warnings Lint/AmbiguousOperator: Enabled: true Lint/AmbiguousRegexpLiteral: Enabled: true Lint/AssignmentInCondition: Enabled: true Lint/BlockAlignment: Enabled: true Lint/CircularArgumentReference: Enabled: true Lint/ConditionPosition: Enabled: true Lint/Debugger: Enabled: true Lint/DefEndAlignment: Enabled: true Lint/DeprecatedClassMethods: Enabled: true Lint/DuplicateCaseCondition: Enabled: true Lint/DuplicateMethods: Enabled: true Lint/DuplicatedKey: Enabled: true Lint/EachWithObjectArgument: Enabled: true Lint/ElseLayout: Enabled: true Lint/EmptyEnsure: Enabled: true AutoCorrect: false Lint/EmptyExpression: Enabled: true Lint/EmptyInterpolation: Enabled: true Lint/EmptyWhen: Enabled: true Lint/EndAlignment: Enabled: true Lint/EndInMethod: Enabled: true Lint/EnsureReturn: Enabled: true Lint/FloatOutOfRange: Enabled: true Lint/FormatParameterMismatch: Enabled: true Lint/HandleExceptions: Enabled: true Lint/ImplicitStringConcatenation: Enabled: true Lint/IneffectiveAccessModifier: Enabled: true Lint/InheritException: Enabled: true Lint/InvalidCharacterLiteral: Enabled: true Lint/LiteralInCondition: Enabled: true Lint/LiteralInInterpolation: Enabled: true Lint/Loop: Enabled: true Lint/MultipleCompare: Enabled: true Lint/NestedMethodDefinition: Enabled: true Lint/NextWithoutAccumulator: Enabled: true Lint/NonLocalExitFromIterator: Enabled: true Lint/ParenthesesAsGroupedExpression: Enabled: true Lint/PercentStringArray: Enabled: true Lint/PercentSymbolArray: Enabled: true Lint/RandOne: Enabled: true Lint/RequireParentheses: Enabled: true Lint/RescueException: Enabled: true Lint/SafeNavigationChain: Enabled: true Lint/ShadowedException: Enabled: true Lint/ShadowingOuterLocalVariable: Enabled: true Lint/StringConversionInInterpolation: Enabled: true Lint/UnderscorePrefixedVariableName: Enabled: true Lint/UnifiedInteger: Enabled: true Lint/UnneededDisable: Enabled: true Lint/UnneededSplatExpansion: Enabled: true Lint/UnusedBlockArgument: Enabled: true Lint/UnusedMethodArgument: Enabled: true Lint/UnreachableCode: Enabled: true Lint/UselessAccessModifier: Enabled: true ContextCreatingMethods: [] MethodCreatingMethods: [] Lint/UselessAssignment: Enabled: true Lint/UselessComparison: Enabled: true Lint/UselessElseWithoutRescue: Enabled: true Lint/UselessSetterCall: Enabled: true Lint/Void: Enabled: true #################### Performance ########################### Performance/Casecmp: Enabled: true Performance/CaseWhenSplat: Enabled: true Performance/Count: # This cop has known compatibility issues with `ActiveRecord` and other # frameworks. ActiveRecord's `count` ignores the block that is passed to it. # For more information, see the documentation in the cop itself. # If you understand the known risk, you can disable `SafeMode`. SafeMode: true Enabled: true Performance/Detect: # This cop has known compatibility issues with `ActiveRecord` and other # frameworks. `ActiveRecord` does not implement a `detect` method and `find` # has its own meaning. Correcting `ActiveRecord` methods with this cop # should be considered unsafe. SafeMode: true Enabled: true Performance/DoubleStartEndWith: Enabled: true Performance/EndWith: # This will change to a new method call which isn't guaranteed to be on the # object. Switching these methods has to be done with knowledge of the types # of the variables which rubocop doesn't have. AutoCorrect: false Enabled: true Performance/FixedSize: Enabled: true Performance/FlatMap: Enabled: true EnabledForFlattenWithoutParams: false # If enabled, this cop will warn about usages of # `flatten` being called without any parameters. # This can be dangerous since `flat_map` will only flatten 1 level, and # `flatten` without any parameters can flatten multiple levels. Performance/HashEachMethods: Enabled: true AutoCorrect: false Performance/LstripRstrip: Enabled: true Performance/RangeInclude: Enabled: true Performance/RedundantBlockCall: Enabled: true Performance/RedundantMatch: Enabled: true Performance/RedundantMerge: Enabled: true Performance/RedundantSortBy: Enabled: true Performance/RegexpMatch: Enabled: true Performance/ReverseEach: Enabled: true Performance/Sample: Enabled: true Performance/Size: Enabled: true Performance/CompareWithBlock: Enabled: true Performance/StartWith: # This will change to a new method call which isn't guaranteed to be on the # object. Switching these methods has to be done with knowledge of the types # of the variables which rubocop doesn't have. AutoCorrect: false Enabled: true Performance/StringReplacement: Enabled: true Performance/TimesMap: Enabled: true #################### Security ############################## Security/Eval: Enabled: true Security/JSONLoad: Enabled: true # Autocorrect here will change to a method that may cause crashes depending # on the value of the argument. AutoCorrect: false Security/MarshalLoad: Enabled: true Security/YAMLLoad: Enabled: true #################### Bundler ############################### Bundler/DuplicatedGem: Enabled: true Include: - '**/Gemfile' - '**/gems.rb' Bundler/OrderedGems: Enabled: true Include: - '**/Gemfile' - '**/gems.rb'