X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/908f9b5276602f21f7d492c9949c934dfb1e9365..55b2ddc6dfc8e36f135836d54a16d17bdb6f8372:/.rubocop.yml diff --git a/.rubocop.yml b/.rubocop.yml index fc2b5cd85..f8060f948 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,29 +1,59 @@ inherit_from: .rubocop_todo.yml +require: + - rubocop-capybara + - rubocop-factory_bot + - rubocop-minitest + - rubocop-performance + - rubocop-rails + - rubocop-rake + +AllCops: + TargetRubyVersion: 3.0 + NewCops: enable + Exclude: + - 'vendor/**/*' + Rails: Enabled: true +# Config can be removed after https://github.com/rubocop/rubocop-factory_bot/issues/53 +FactoryBot/AssociationStyle: + Include: + - 'test/factories/**/*' + Layout/ExtraSpacing: AllowForAlignment: true Lint/PercentStringArray: Exclude: - 'config/initializers/secure_headers.rb' + - 'app/controllers/application_controller.rb' - 'app/controllers/site_controller.rb' +Metrics/BlockLength: + Exclude: + - 'config/routes.rb' + +Metrics/ClassLength: + Exclude: + - 'test/**/*' + +Metrics/ModuleLength: + Max: 150 + Naming/FileName: Exclude: - 'script/deliver-message' - - 'script/locale/reload-languages' - 'script/update-spam-blocks' -Naming/UncommunicativeMethodParamName: +Naming/MethodParameterName: Enabled: false -Rails/ApplicationRecord: +Rails/CreateTableWithTimestamps: Enabled: false -Rails/CreateTableWithTimestamps: +Rails/FindEach: Enabled: false Rails/HasManyOrHasOneDependent: @@ -32,36 +62,47 @@ Rails/HasManyOrHasOneDependent: Rails/HttpPositionalArguments: Enabled: false -Rails/InverseOf: +Rails/ReflectionClassName: Enabled: false Rails/SkipsModelValidations: Exclude: - 'db/migrate/*.rb' - - 'app/controllers/user_controller.rb' + - 'app/controllers/users_controller.rb' -Style/BracesAroundHashParameters: - EnforcedStyle: context_dependent +Style/Documentation: + Enabled: false Style/FormatStringToken: - EnforcedStyle: template + Exclude: + - 'config/routes.rb' Style/IfInsideElse: Enabled: false -Style/GlobalVars: - Exclude: - - 'lib/quad_tile/extconf.rb' - Style/GuardClause: Enabled: false +Style/HashEachMethods: + Enabled: true + Style/HashSyntax: EnforcedStyle: hash_rockets Exclude: - 'lib/tasks/testing.rake' - 'config/initializers/wrap_parameters.rb' +Style/HashTransformKeys: + Enabled: true + +Style/HashTransformValues: + Enabled: true + +Style/MixinUsage: + Exclude: + - 'bin/setup' + - 'bin/update' + Style/StringLiterals: EnforcedStyle: double_quotes