mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 09:42:07 +08:00
Revert "DEV: Move rubocop config to rubocop-discourse (#9616)"
This reverts commit e23f1a9071
.
Reverting as this currently breaks our plugin linting job in GithHub Action and Jenkins. Will re-revert after all the plugins get the latest rubocop config and/or a (potential) rubocop issue is fixed.
This commit is contained in:
parent
2f714c7412
commit
2d31a14789
359
.rubocop.yml
359
.rubocop.yml
|
@ -1,2 +1,357 @@
|
||||||
inherit_gem:
|
require:
|
||||||
rubocop-discourse: default.yml
|
- rubocop-discourse
|
||||||
|
- rubocop-rspec
|
||||||
|
|
||||||
|
AllCops:
|
||||||
|
TargetRubyVersion: 2.6
|
||||||
|
DisabledByDefault: true
|
||||||
|
Exclude:
|
||||||
|
- "db/schema.rb"
|
||||||
|
- "bundle/**/*"
|
||||||
|
- "vendor/**/*"
|
||||||
|
- "node_modules/**/*"
|
||||||
|
- "public/**/*"
|
||||||
|
- "plugins/**/gems/**/*"
|
||||||
|
|
||||||
|
Discourse:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Discourse/NoChdir:
|
||||||
|
Exclude:
|
||||||
|
- 'spec/**/*' # Specs are run sequentially, so chdir can be used
|
||||||
|
- 'plugins/*/spec/**/*'
|
||||||
|
|
||||||
|
# Prefer &&/|| over and/or.
|
||||||
|
Style/AndOr:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Style/FrozenStringLiteralComment:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Align `when` with `case`.
|
||||||
|
Layout/CaseIndentation:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Align comments with method definitions.
|
||||||
|
Layout/CommentIndentation:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# No extra empty lines.
|
||||||
|
Layout/EmptyLines:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Use Ruby >= 1.9 syntax for hashes. Prefer { a: :b } over { :a => :b }.
|
||||||
|
Style/HashSyntax:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Two spaces, no tabs (for indentation).
|
||||||
|
Layout/IndentationWidth:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceAfterColon:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceAfterComma:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceAroundEqualsInParameterDefault:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceAroundKeyword:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceAroundOperators:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceBeforeFirstArg:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Defining a method with parameters needs parentheses.
|
||||||
|
Style/MethodDefParentheses:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Use `foo {}` not `foo{}`.
|
||||||
|
Layout/SpaceBeforeBlockBraces:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Use `foo { bar }` not `foo {bar}`.
|
||||||
|
Layout/SpaceInsideBlockBraces:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Use `{ a: 1 }` not `{a:1}`.
|
||||||
|
Layout/SpaceInsideHashLiteralBraces:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/SpaceInsideParens:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Detect hard tabs, no hard tabs.
|
||||||
|
Layout/IndentationStyle:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Blank lines should not have any spaces.
|
||||||
|
Layout/TrailingEmptyLines:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# No trailing whitespace.
|
||||||
|
Layout/TrailingWhitespace:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Lint/Debugger:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/BlockAlignment:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
# Align `end` with the matching keyword or starting expression except for
|
||||||
|
# assignments, where it should be aligned with the LHS.
|
||||||
|
Layout/EndAlignment:
|
||||||
|
Enabled: true
|
||||||
|
EnforcedStyleAlignWith: variable
|
||||||
|
|
||||||
|
# Use my_method(my_arg) not my_method( my_arg ) or my_method my_arg.
|
||||||
|
Lint/RequireParentheses:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Lint/ShadowingOuterLocalVariable:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Layout/MultilineMethodCallIndentation:
|
||||||
|
Enabled: true
|
||||||
|
EnforcedStyle: indented
|
||||||
|
|
||||||
|
Layout/HashAlignment:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Bundler/OrderedGems:
|
||||||
|
Enabled: false
|
||||||
|
|
||||||
|
Style/SingleLineMethods:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Style/Semicolon:
|
||||||
|
Enabled: true
|
||||||
|
AllowAsExpressionSeparator: true
|
||||||
|
|
||||||
|
Style/RedundantReturn:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Style/GlobalVars:
|
||||||
|
Enabled: true
|
||||||
|
Severity: warning
|
||||||
|
Exclude:
|
||||||
|
- 'lib/tasks/**/*'
|
||||||
|
- 'script/**/*'
|
||||||
|
- 'spec/**/*.rb'
|
||||||
|
- 'plugins/*/spec/**/*'
|
||||||
|
|
||||||
|
# Specs
|
||||||
|
|
||||||
|
RSpec/AnyInstance:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/AroundBlock:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/BeforeAfterAll:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/ContextMethod:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/ContextWording:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/DescribeClass:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/DescribeMethod:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/DescribeSymbol:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/DescribedClass:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/DescribedClassModuleWrapping:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/EmptyExampleGroup:
|
||||||
|
Enabled: true
|
||||||
|
Exclude:
|
||||||
|
- 'spec/requests/api/*'
|
||||||
|
|
||||||
|
RSpec/EmptyLineAfterExample:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/EmptyLineAfterExampleGroup:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/EmptyLineAfterFinalLet:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/EmptyLineAfterHook:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/EmptyLineAfterSubject:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/ExampleLength:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/ExampleWithoutDescription:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ExampleWording:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/ExpectActual:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ExpectChange:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/ExpectInHook:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/ExpectOutput:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/FilePath:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/Focus:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/HookArgument:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/HooksBeforeExamples:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/ImplicitBlockExpectation:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ImplicitExpect:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/ImplicitSubject:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/InstanceSpy:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/InstanceVariable:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/InvalidPredicateMatcher:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ItBehavesLike:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/IteratedExpectation:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/LeadingSubject:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/LeakyConstantDeclaration:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/LetBeforeExamples:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/LetSetup:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/MessageChain:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/MessageSpies:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/MissingExampleGroupArgument:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/MultipleDescribes:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/MultipleSubjects:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/NamedSubject:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/NestedGroups:
|
||||||
|
Enabled: false # To be decided
|
||||||
|
|
||||||
|
RSpec/OverwritingSetup:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ReceiveCounts:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ReceiveNever:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/RepeatedDescription:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/RepeatedExample:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/RepeatedExampleGroupBody:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/RepeatedExampleGroupDescription:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/ReturnFromStub:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/ScatteredSetup:
|
||||||
|
Enabled: false # TODO
|
||||||
|
|
||||||
|
RSpec/SharedContext:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/SharedExamples:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/SingleArgumentMessageChain:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/SubjectStub:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/UnspecifiedException:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/VerifiedDoubles:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/VoidExpect:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
RSpec/Yield:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Capybara/CurrentPathExpectation:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Capybara/FeatureMethods:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
FactoryBot/AttributeDefinedStatically:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
FactoryBot/CreateList:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
FactoryBot/FactoryClassName:
|
||||||
|
Enabled: true
|
||||||
|
|
||||||
|
Rails/HttpStatus:
|
||||||
|
Enabled: true
|
||||||
|
|
2
Gemfile
2
Gemfile
|
@ -172,7 +172,9 @@ group :test, :development do
|
||||||
gem 'shoulda-matchers', require: false
|
gem 'shoulda-matchers', require: false
|
||||||
gem 'rspec-html-matchers'
|
gem 'rspec-html-matchers'
|
||||||
gem 'byebug', require: ENV['RM_INFO'].nil?, platform: :mri
|
gem 'byebug', require: ENV['RM_INFO'].nil?, platform: :mri
|
||||||
|
gem 'rubocop', require: false
|
||||||
gem "rubocop-discourse", require: false
|
gem "rubocop-discourse", require: false
|
||||||
|
gem "rubocop-rspec", require: false
|
||||||
gem 'parallel_tests'
|
gem 'parallel_tests'
|
||||||
|
|
||||||
gem 'rswag-specs'
|
gem 'rswag-specs'
|
||||||
|
|
|
@ -528,7 +528,9 @@ DEPENDENCIES
|
||||||
rspec-rails
|
rspec-rails
|
||||||
rswag-specs
|
rswag-specs
|
||||||
rtlit
|
rtlit
|
||||||
|
rubocop
|
||||||
rubocop-discourse
|
rubocop-discourse
|
||||||
|
rubocop-rspec
|
||||||
ruby-prof
|
ruby-prof
|
||||||
ruby-readability
|
ruby-readability
|
||||||
rubyzip
|
rubyzip
|
||||||
|
|
Loading…
Reference in New Issue
Block a user