X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/81e0b49ed55abb1a4563648273639214c26bcf95..c55d346d5f7501fd6f5f636e85c8a60ec67d88ee:/.rubocop.yml?ds=inline diff --git a/.rubocop.yml b/.rubocop.yml index d5ee8ff38..65db8a6a5 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,9 +1,16 @@ inherit_from: .rubocop_todo.yml -require: rubocop-performance +require: + - rubocop-minitest + - rubocop-performance + - rubocop-rails + - rubocop-rake AllCops: - TargetRubyVersion: 2.5 + TargetRubyVersion: 2.7 + NewCops: enable + Exclude: + - 'vendor/**/*' Rails: Enabled: true @@ -17,16 +24,23 @@ Lint/PercentStringArray: - '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: - Enabled: false - -Rails/ApplicationRecord: +Naming/MethodParameterName: Enabled: false Rails/CreateTableWithTimestamps: @@ -41,7 +55,7 @@ Rails/HasManyOrHasOneDependent: Rails/HttpPositionalArguments: Enabled: false -Rails/InverseOf: +Rails/ReflectionClassName: Enabled: false Rails/SkipsModelValidations: @@ -49,11 +63,12 @@ Rails/SkipsModelValidations: - 'db/migrate/*.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 @@ -61,12 +76,21 @@ Style/IfInsideElse: 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'