inherit_from: .rubocop_todo.yml AllCops: TargetRubyVersion: 2.4 TargetRailsVersion: 5.2 NewCops: enable Exclude: - '**/vendor/**/*' - '**/tmp/**/*' - '**/bin/**/*' - '**/plugins/**/*' - '**/extra/**/*' - '**/lib/generators/**/templates/*' - '**/lib/tasks/**/*' - '**/files/**/*' - 'db/schema.rb' # Enable extensions require: - rubocop-performance - rubocop-rails # Rules for Redmine Bundler/OrderedGems: Enabled: false Layout/CaseIndentation: Exclude: - 'config/initializers/10-patches.rb' Layout/ClosingParenthesisIndentation: Enabled: true Exclude: - 'lib/redmine/wiki_formatting/textile/redcloth3.rb' Layout/EmptyLinesAroundAccessModifier: Enabled: true Exclude: - 'config/initializers/10-patches.rb' Layout/EmptyLineBetweenDefs: AllowAdjacentOneLineDefs: true Layout/FirstHashElementIndentation: Enabled: true Exclude: - 'lib/redmine/wiki_formatting/textile/redcloth3.rb' Layout/LineLength: Enabled: true IgnoredPatterns: ['\A\s+test \".+\" do\z', '\A\s*\#'] Exclude: - 'db/migrate/0*.rb' - 'db/migrate/1*.rb' - 'db/migrate/201*.rb' - 'db/migrate/20200*.rb' - 'lib/redmine/wiki_formatting/textile/redcloth3.rb' Layout/RescueEnsureAlignment: Enabled: true Exclude: - 'db/migrate/085_add_role_tracker_old_status_index_to_workflows.rb' Layout/SpaceAroundEqualsInParameterDefault: Enabled: false Layout/SpaceBeforeSemicolon: Enabled: true Exclude: - 'config/initializers/10-patches.rb' Layout/SpaceBeforeBlockBraces: # "space" is used more than "no_space". # But "no_space" is more natural in one liner. # str = path.to_s.split(%r{[/\\]}).select{|p| !p.blank?}.join("/") Enabled: false Layout/SpaceInsideBlockBraces: Enabled: false Layout/SpaceInsideHashLiteralBraces: Enabled: false Lint/RaiseException: Enabled: true Lint/StructNewOverride: Enabled: true Lint/SuppressedException: AllowComments: true Layout/TrailingWhitespace: AllowInHeredoc: true Metrics: Enabled: false Naming/AccessorMethodName: Enabled: false Naming/VariableNumber: CheckMethodNames: false CheckSymbols: false Naming/BinaryOperatorParameterName: Enabled: false Naming/PredicateName: Enabled: false Rails/BulkChangeTable: Exclude: - 'db/migrate/20120714122200_add_workflows_rule_fields.rb' - 'db/migrate/20131214094309_remove_custom_fields_min_max_length_default_values.rb' Rails/HelperInstanceVariable: Enabled: false Style/AsciiComments: Exclude: # Copyright credit has non ascii character. # We can not change nor remove it. - 'app/models/repository/git.rb' Style/BlockComments: Enabled: true Exclude: - 'lib/diff.rb' Style/BlockDelimiters: Enabled: true Exclude: - 'db/migrate/007_create_journals.rb' - 'lib/diff.rb' Style/EmptyElse: EnforcedStyle: empty Style/FormatString: EnforcedStyle: sprintf Style/FormatStringToken: Enabled: false Style/FrozenStringLiteralComment: Enabled: true EnforcedStyle: always Exclude: - 'db/**/*.rb' - 'Gemfile' - 'Rakefile' - 'config.ru' - 'config/additional_environment.rb' Style/HashEachMethods: Enabled: true Style/HashSyntax: Enabled: true EnforcedStyle: no_mixed_keys Style/HashTransformKeys: Enabled: true Style/HashTransformValues: Enabled: true Style/IdenticalConditionalBranches: Exclude: - 'config/initializers/10-patches.rb' - 'lib/redmine/wiki_formatting/textile/redcloth3.rb' Style/NegatedIfElseCondition: Enabled: false Style/RaiseArgs: Enabled: false Style/TrailingCommaInArrayLiteral: Enabled: false Style/TrailingCommaInHashLiteral: Enabled: false