|
require:
|
|
- rubocop-performance
|
|
- rubocop-rails
|
|
- rubocop-minitest
|
|
|
|
# TODO: Remove the following once the rules in the file is addressed
|
|
inherit_from:
|
|
- .rubocop_todo.yml
|
|
# end TODO
|
|
|
|
Rails:
|
|
Enabled: true
|
|
|
|
Rails/ContentTag:
|
|
Enabled: false
|
|
|
|
AllCops:
|
|
Exclude:
|
|
- db/migrate/20131014135042_katello_tables.rb
|
|
- engines/*/node_modules/**/*
|
|
- engines/bastion_katello/bastion-*/**/*
|
|
- engines/bastion_katello/vendor/assets/dev-components/**/*
|
|
- engines/bastion_katello/Rakefile
|
|
- foreman/**/*
|
|
- node_modules/**/*
|
|
- Gemfile
|
|
- locale/action_names.rb
|
|
- lib/monkeys/remove_hidden_distribution.rb
|
|
- vendor/**/*
|
|
Include:
|
|
- '**/*.rb'
|
|
- app/views/**/*.rabl
|
|
- '**/*.rake'
|
|
TargetRubyVersion: 2.7
|
|
|
|
Metrics/MethodLength:
|
|
Description: 'Avoid methods longer than 30 lines of code.'
|
|
Max: 30 # default is 10
|
|
CountAsOne:
|
|
- array
|
|
- hash
|
|
- heredoc
|
|
|
|
Style/HashSyntax:
|
|
Enabled: false # don't force 1.9 hash syntax
|
|
|
|
Rails/DynamicFindBy:
|
|
Enabled: False
|
|
Whitelist:
|
|
- find_by_cp_id
|
|
- find_by_katello_id
|
|
- find_by_unit_id
|
|
- find_by_version
|
|
|
|
Layout/SpaceInsideHashLiteralBraces:
|
|
Enabled: false # allow spaces (eg { :a => 1 })
|
|
|
|
Layout/LeadingCommentSpace:
|
|
Enabled: false
|
|
|
|
Style/IfUnlessModifier:
|
|
Enabled: false
|
|
|
|
Style/RescueModifier:
|
|
Enabled: false
|
|
|
|
Style/WhileUntilModifier:
|
|
Enabled: false
|
|
|
|
Layout/ParameterAlignment:
|
|
Enabled: false # don't care if parameters are not aligned
|
|
|
|
Layout/HashAlignment:
|
|
EnforcedLastArgumentHashStyle: ignore_implicit # ignore argument hashes
|
|
|
|
Style/ParenthesesAroundCondition:
|
|
Enabled: false
|
|
|
|
Layout/DotPosition:
|
|
Enabled: false
|
|
|
|
Style/Lambda:
|
|
Enabled: false # don't require -> for single line lambdas
|
|
|
|
Style/RedundantSelf:
|
|
Enabled: false
|
|
|
|
Style/RedundantReturn:
|
|
Enabled: false
|
|
|
|
Style/Documentation:
|
|
Enabled: false # don't require documentation
|
|
|
|
Style/Encoding:
|
|
Enabled: false # don't require utf-8 encoding on every file
|
|
|
|
Style/MethodCalledOnDoEndBlock:
|
|
Enabled: true
|
|
|
|
Style/SingleLineBlockParams:
|
|
Enabled: false
|
|
|
|
Metrics/ClassLength:
|
|
Exclude:
|
|
- 'test/models/content_view_test.rb'
|
|
- 'test/controllers/api/v2/repositories_controller_test.rb'
|
|
|
|
Style/Next:
|
|
Enabled: false # don't enforce next in loops over if/unless
|
|
|
|
Style/FormatString:
|
|
Enabled: false # we use % for i18n
|
|
|
|
Style/GuardClause:
|
|
Enabled: false # don't enforce this
|
|
|
|
Style/ClassVars:
|
|
Enabled: True
|
|
Exclude: ['test/**/*']
|
|
|
|
Style/StringLiterals:
|
|
Enabled: false # dont't enforce
|
|
|
|
Style/WordArray:
|
|
Enabled: false # don't force usage of %w()
|
|
|
|
Naming/FileName:
|
|
Exclude: ['script/**', 'db/seeds.d/**'] # scripts are hyphened case
|
|
|
|
Rails/ScopeArgs:
|
|
Enabled: false # don't force usage of lambdas for scopes
|
|
|
|
Style/EachWithObject:
|
|
Enabled: false # people can use inject
|
|
|
|
Style/SymbolProc:
|
|
Enabled: false # don't force usage of symbol procs
|
|
|
|
Style/SignalException:
|
|
EnforcedStyle: semantic
|
|
|
|
# Don't enforce frozen string literals
|
|
Style/FrozenStringLiteralComment:
|
|
Enabled: false
|
|
|
|
Gemspec/OrderedDependencies:
|
|
Enabled: false
|
|
|
|
Style/CommentedKeyword:
|
|
Enabled: false
|
|
|
|
Style/RescueStandardError:
|
|
Enabled: false
|
|
|
|
# we use booleans as symbols for scoped search
|
|
Lint/BooleanSymbol:
|
|
Enabled: false
|
|
|
|
Lint/UriEscapeUnescape:
|
|
Enabled: false
|
|
|
|
Performance/RegexpMatch:
|
|
Enabled: false
|
|
|
|
Minitest/GlobalExpectations:
|
|
Enabled: true
|
|
|
|
Performance/CollectionLiteralInLoop:
|
|
Enabled: false
|
|
|
|
Rails/RedundantForeignKey:
|
|
Enabled: true
|
|
|
|
Rails/UniqueValidationWithoutIndex:
|
|
Enabled: true
|