mirror of https://github.com/docusealco/docuseal
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
232 lines
5.9 KiB
232 lines
5.9 KiB
require: rubocop-performance
|
|
AllCops:
|
|
TargetRubyVersion: 2.7
|
|
# RuboCop has a bunch of cops enabled by default. This setting tells RuboCop
|
|
# to ignore them, so only the ones explicitly set in this file are enabled.
|
|
DisabledByDefault: true
|
|
Exclude:
|
|
- "lib/install/templates/**"
|
|
- "vendor/**/*"
|
|
- "node_modules/**/*"
|
|
- "_actions/**/*"
|
|
- "spec/dummy-rspack/**/*"
|
|
- "bin/conductor-exec" # Shell script, not Ruby
|
|
|
|
# Prefer &&/|| over and/or.
|
|
Style/AndOr:
|
|
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
|
|
|
|
# In a regular class definition, no empty lines around the body.
|
|
Layout/EmptyLinesAroundClassBody:
|
|
Enabled: true
|
|
|
|
# In a regular method definition, no empty lines around the body.
|
|
Layout/EmptyLinesAroundMethodBody:
|
|
Enabled: true
|
|
|
|
# In a regular module definition, no empty lines around the body.
|
|
Layout/EmptyLinesAroundModuleBody:
|
|
Enabled: true
|
|
|
|
# Use Ruby >= 1.9 syntax for hashes. Prefer { a: :b } over { :a => :b }.
|
|
Style/HashSyntax:
|
|
Enabled: true
|
|
|
|
# Method definitions after `private` or `protected` isolated calls need one
|
|
# extra level of indentation.
|
|
Layout/IndentationConsistency:
|
|
Enabled: true
|
|
EnforcedStyle: indented_internal_methods
|
|
|
|
# Detect hard tabs, no hard tabs.
|
|
Layout/IndentationStyle:
|
|
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
|
|
|
|
# Check quotes usage according to lint rule below.
|
|
Style/StringLiterals:
|
|
Enabled: true
|
|
EnforcedStyle: double_quotes
|
|
|
|
# Blank lines should not have any spaces.
|
|
Layout/TrailingEmptyLines:
|
|
Enabled: true
|
|
|
|
# No trailing whitespace.
|
|
Layout/TrailingWhitespace:
|
|
Enabled: true
|
|
|
|
# Use quotes for string literals when they are enough.
|
|
Style/RedundantPercentQ:
|
|
Enabled: true
|
|
|
|
Lint/DeprecatedClassMethods:
|
|
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
|
|
|
|
# Use `bind_call(obj, args, ...)` instead of `bind(obj).call(args, ...)`.
|
|
Performance/BindCall:
|
|
Enabled: true
|
|
|
|
# Use `caller(n..n)` instead of `caller`.
|
|
Performance/Caller:
|
|
Enabled: true
|
|
|
|
# Use `casecmp` for case comparison.
|
|
Performance/Casecmp:
|
|
Enabled: true
|
|
|
|
# Extract Array and Hash literals outside of loops into local variables or constants.
|
|
Performance/CollectionLiteralInLoop:
|
|
Enabled: true
|
|
|
|
# Prefer `sort_by(&:foo)` instead of `sort { |a, b| a.foo <=> b.foo }`.
|
|
Performance/CompareWithBlock:
|
|
Enabled: true
|
|
|
|
# Use `count` instead of `{select,find_all,filter,reject}...{size,count,length}`.
|
|
Performance/Count:
|
|
Enabled: true
|
|
|
|
# Use `delete_prefix` instead of `gsub`.
|
|
Performance/DeletePrefix:
|
|
Enabled: true
|
|
|
|
# Use `delete_suffix` instead of `gsub`.
|
|
Performance/DeleteSuffix:
|
|
Enabled: true
|
|
|
|
# Use `detect` instead of `select.first`, `find_all.first`, `filter.first`, `select.last`, `find_all.last`, and `filter.last`.
|
|
Performance/Detect:
|
|
Enabled: true
|
|
|
|
# Use `str.{start,end}_with?(x, ..., y, ...)` instead of `str.{start,end}_with?(x, ...) || str.{start,end}_with?(y, ...)`.
|
|
Performance/DoubleStartEndWith:
|
|
Enabled: true
|
|
|
|
# Use `end_with?` instead of a regex match anchored to the end of a string.
|
|
Performance/EndWith:
|
|
Enabled: true
|
|
|
|
# Do not compute the size of statically sized objects except in constants.
|
|
Performance/FixedSize:
|
|
Enabled: true
|
|
|
|
# Use `Enumerable#flat_map` instead of `Enumerable#map...Array#flatten(1).
|
|
Performance/FlatMap:
|
|
Enabled: true
|
|
|
|
# Use `key?` or `value?` instead of `keys.include?` or `values.include?`.
|
|
Performance/InefficientHashSearch:
|
|
Enabled: true
|
|
|
|
# Use `Range#cover?` instead of `Range#include?` (or `Range#member?`).
|
|
Performance/RangeInclude:
|
|
Enabled: true
|
|
|
|
# Use `yield` instead of `block.call`.
|
|
Performance/RedundantBlockCall:
|
|
Enabled: true
|
|
|
|
# Use `=~` instead of `String#match` or `Regexp#match` in a context where the returned `MatchData` is not needed.
|
|
Performance/RedundantMatch:
|
|
Enabled: true
|
|
|
|
# Use Hash#[]=, rather than Hash#merge! with a single key-value pair.
|
|
Performance/RedundantMerge:
|
|
Enabled: true
|
|
|
|
# Use `match?` instead of `Regexp#match`, `String#match`, `Symbol#match`, `Regexp#===`, or `=~` when `MatchData` is not used.
|
|
Performance/RegexpMatch:
|
|
Enabled: true
|
|
|
|
# Use `reverse_each` instead of `reverse.each`.
|
|
Performance/ReverseEach:
|
|
Enabled: true
|
|
|
|
# Use `size` instead of `count` for counting the number of elements in `Array` and `Hash`.
|
|
Performance/Size:
|
|
Enabled: true
|
|
|
|
# Use `start_with?` instead of a regex match anchored to the beginning of a string.
|
|
Performance/StartWith:
|
|
Enabled: true
|
|
|
|
# Use `tr` instead of `gsub` when you are replacing the same number of characters.
|
|
# Use `delete` instead of `gsub` when you are deleting characters.
|
|
Performance/StringReplacement:
|
|
Enabled: true
|
|
|
|
# Checks for .times.map calls.
|
|
Performance/TimesMap:
|
|
Enabled: true
|
|
|
|
# Use unary plus to get an unfrozen string literal.
|
|
Performance/UnfreezeString:
|
|
Enabled: true
|
|
|
|
# Use `URI::DEFAULT_PARSER` instead of `URI::Parser.new`.
|
|
Performance/UriDefaultParser:
|
|
Enabled: true
|