AllCops: UseCache: true DisplayCopNames: true DisplayStyleGuide: true ExtraDetails: false TargetRubyVersion: 2.4.0 NewCops: enable Layout/DotPosition: EnforcedStyle: trailing Layout/EndOfLine: EnforcedStyle: lf Layout/FirstArgumentIndentation: EnforcedStyle: consistent_relative_to_receiver Layout/FirstArrayElementIndentation: EnforcedStyle: consistent Layout/FirstHashElementIndentation: EnforcedStyle: consistent Layout/FirstParameterIndentation: Enabled: false # Revisit if more settings become available. Layout/LineContinuationSpacing: EnforcedStyle: no_space Layout/LineEndStringConcatenationIndentation: EnforcedStyle: aligned Layout/LineLength: Max: 80 Exclude: - "object_identifier.gemspec" - "scripts/benchmarking/**/*" Layout/MultilineMethodCallBraceLayout: EnforcedStyle: same_line Layout/MultilineMethodCallIndentation: EnforcedStyle: indented_relative_to_receiver Layout/MultilineMethodDefinitionBraceLayout: EnforcedStyle: same_line Layout/MultilineOperationIndentation: Enabled: false # Waiting for e.g. `indented_relative_to_receiver`. Lint/AmbiguousOperator: Enabled: false # Conflicts with other rules. Lint/AmbiguousRegexpLiteral: Enabled: false # Conflicts with other rules. Lint/OrAssignmentToConstant: Exclude: - "scripts/**/*" Lint/Void: CheckForMethodsWithNoSideEffects: true Metrics/BlockLength: AllowedMethods: - describe - context - ips # Benchmarking Metrics/ClassLength: Exclude: - "test/**/*" Naming/MethodParameterName: AllowedNames: - a - b Style/Alias: EnforcedStyle: prefer_alias_method Style/BlockDelimiters: Enabled: false # Reconsider later. Style/ClassAndModuleChildren: AutoCorrect: true EnforcedStyle: compact Style/EmptyElse: # It"s helpful to show intent by including a comment in an else block. Enabled: false Style/EmptyMethod: EnforcedStyle: expanded Style/ExpandPathArguments: Exclude: - "object_inspector.gemspec" Style/FormatString: Enabled: false # % notation with an Array just reads better sometimes. Style/Lambda: EnforcedStyle: literal Style/LambdaCall: Enabled: false # Allow ServiceObject.(*). Only use on classes, not instances. Style/OpenStructUse: Exclude: - "test/**/*" Style/RegexpLiteral: EnforcedStyle: mixed Style/RescueStandardError: EnforcedStyle: implicit Style/SingleLineMethods: Exclude: - "test/**/*_test.rb" Style/StringLiterals: EnforcedStyle: double_quotes Style/StringLiteralsInInterpolation: EnforcedStyle: double_quotes