require: - rubocop-rails AllCops: DisplayCopNames: true CacheRootDirectory: '.git' Exclude: - 'config/**/*' - 'vendor/**/*' - 'db/schema.rb' - 'db/seeds.rb' - 'bin/**/*' - 'node_modules/**/*' - coverage/**/* TargetRubyVersion: 3.1 NewCops: enable Rails: Enabled: true Rails/InverseOf: Enabled: false ### Lint Lint/NestedMethodDefinition: Exclude: - api/sinatra/**/* ### Metrics Metrics/AbcSize: Max: 20 Exclude: - 'db/**/*' Layout/LineLength: Enabled: false Metrics/MethodLength: Max: 15 Exclude: - 'db/migrate/*.rb' Metrics/BlockLength: Exclude: - '*.gemspec' - '**/*.rake' - 'api/**/*' - 'app/api/routes.rb' - 'config/initialize/**/*' - 'config/initializers/**/*' - 'spec/**/*' Metrics/ClassLength: Exclude: - spec/**/* Metrics/CyclomaticComplexity: Severity: refactor Metrics/ModuleLength: Exclude: - 'app/api/routes.rb' - 'spec/requests/**/*' ### Style / Layout #### Hash Layout/HashAlignment: EnforcedColonStyle: table EnforcedHashRocketStyle: table Style/HashSyntax: EnforcedStyle: ruby19_no_mixed_keys Style/HashTransformKeys: Enabled: false Style/HashTransformValues: Enabled: false Layout/MultilineOperationIndentation: Description: Checks indentation of binary operations that span more than one line. EnforcedStyle: indented #### Rest Style/Documentation: Enabled: false Style/DoubleNegation: Enabled: false Style/ExponentialNotation: # https://docs.rubocop.org/rubocop/cops_style.html#styleexponentialnotation EnforcedStyle: engineering Style/NumericLiterals: Description: Add underscores to large numeric literals to improve their readability. StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscores-in-numerics Enabled: false Style/PerlBackrefs: Enabled: false Style/RaiseArgs: EnforcedStyle: compact Style/RegexpLiteral: Enabled: false Style/SignalException: EnforcedStyle: only_raise Style/StringLiterals: EnforcedStyle: double_quotes Style/OptionalBooleanParameter: Enabled: false Style/ClassAndModuleChildren: Enabled: false Style/RescueStandardError: Enabled: false Style/Encoding: Enabled: false Style/EndlessMethod: EnforcedStyle: allow_always