From cd6657251412f1fae9eebe3fdb67761c617f22db Mon Sep 17 00:00:00 2001 From: Dylan Thacker-Smith Date: Sun, 21 Feb 2021 11:59:11 -0500 Subject: [PATCH 1/3] Rubocop autocorrections to prepare for rubocop config updates --- test/integration/standard_filter_test.rb | 2 +- test/integration/tags/include_tag_test.rb | 4 ++-- test/integration/tags/render_tag_test.rb | 14 +++++++------- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/test/integration/standard_filter_test.rb b/test/integration/standard_filter_test.rb index 6f66bc5..ec2f36c 100644 --- a/test/integration/standard_filter_test.rb +++ b/test/integration/standard_filter_test.rb @@ -171,7 +171,7 @@ class StandardFiltersTest < Minitest::Test assert_equal('one two three', @filters.truncatewords('one two three')) assert_equal( 'Two small (13” x 5.5” x 10” high) baskets fit inside one large basket (13”...', - @filters.truncatewords('Two small (13” x 5.5” x 10” high) baskets fit inside one large basket (13” x 16” x 10.5” high) with cover.', 15) + @filters.truncatewords('Two small (13” x 5.5” x 10” high) baskets fit inside one large basket (13” x 16” x 10.5” high) with cover.', 15) ) assert_equal("测试测试测试测试", @filters.truncatewords('测试测试测试测试', 5)) assert_equal('one two1', @filters.truncatewords("one two three", 2, 1)) diff --git a/test/integration/tags/include_tag_test.rb b/test/integration/tags/include_tag_test.rb index 6a2bbfc..73f4875 100644 --- a/test/integration/tags/include_tag_test.rb +++ b/test/integration/tags/include_tag_test.rb @@ -96,12 +96,12 @@ class IncludeTagTest < Minitest::Test def test_include_tag_with_alias assert_template_result("Product: Draft 151cm ", - "{% include 'product_alias' with products[0] as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% include 'product_alias' with products[0] as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_include_tag_for_alias assert_template_result("Product: Draft 151cm Product: Element 155cm ", - "{% include 'product_alias' for products as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% include 'product_alias' for products as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_include_tag_with_default_name diff --git a/test/integration/tags/render_tag_test.rb b/test/integration/tags/render_tag_test.rb index d16aaf1..1af22b9 100644 --- a/test/integration/tags/render_tag_test.rb +++ b/test/integration/tags/render_tag_test.rb @@ -151,7 +151,7 @@ class RenderTagTest < Minitest::Test ) assert_template_result("Product: Draft 151cm ", - "{% render 'product' with products[0] %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% render 'product' with products[0] %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_render_tag_with_alias @@ -161,7 +161,7 @@ class RenderTagTest < Minitest::Test ) assert_template_result("Product: Draft 151cm ", - "{% render 'product_alias' with products[0] as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% render 'product_alias' with products[0] as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_render_tag_for_alias @@ -171,7 +171,7 @@ class RenderTagTest < Minitest::Test ) assert_template_result("Product: Draft 151cm Product: Element 155cm ", - "{% render 'product_alias' for products as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% render 'product_alias' for products as product %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_render_tag_for @@ -181,7 +181,7 @@ class RenderTagTest < Minitest::Test ) assert_template_result("Product: Draft 151cm Product: Element 155cm ", - "{% render 'product' for products %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% render 'product' for products %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_render_tag_forloop @@ -190,7 +190,7 @@ class RenderTagTest < Minitest::Test ) assert_template_result("Product: Draft 151cm first index:1 Product: Element 155cm last index:2 ", - "{% render 'product' for products %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) + "{% render 'product' for products %}", "products" => [{ 'title' => 'Draft 151cm' }, { 'title' => 'Element 155cm' }]) end def test_render_tag_for_drop @@ -199,7 +199,7 @@ class RenderTagTest < Minitest::Test ) assert_template_result("123", - "{% render 'loop' for loop as value %}", "loop" => TestEnumerable.new) + "{% render 'loop' for loop as value %}", "loop" => TestEnumerable.new) end def test_render_tag_with_drop @@ -208,6 +208,6 @@ class RenderTagTest < Minitest::Test ) assert_template_result("TestEnumerable", - "{% render 'loop' with loop as value %}", "loop" => TestEnumerable.new) + "{% render 'loop' with loop as value %}", "loop" => TestEnumerable.new) end end From c50509b7411442113450d07a7dd61965321c6f43 Mon Sep 17 00:00:00 2001 From: Dylan Thacker-Smith Date: Sun, 21 Feb 2021 11:58:50 -0500 Subject: [PATCH 2/3] Commit rubocop remote configuration update --- ...-shopify-github-io-ruby-style-guide-rubocop-yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml b/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml index e77a043..bf5983d 100644 --- a/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml +++ b/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml @@ -20,6 +20,12 @@ Style/Alias: - prefer_alias - prefer_alias_method +Layout/ArgumentAlignment: + EnforcedStyle: with_fixed_indentation + SupportedStyles: + - with_first_argument + - with_fixed_indentation + Layout/HashAlignment: EnforcedHashRocketStyle: key EnforcedColonStyle: key @@ -165,14 +171,6 @@ Naming/FileName: Regex: IgnoreExecutableScripts: true -Layout/FirstArgumentIndentation: - EnforcedStyle: consistent - SupportedStyles: - - consistent - - special_for_inner_method_call - - special_for_inner_method_call_in_parentheses - IndentationWidth: - Style/For: EnforcedStyle: each SupportedStyles: From 9dac68cce1007dd0348092bbd8739c28997fe704 Mon Sep 17 00:00:00 2001 From: Dylan Thacker-Smith Date: Sun, 21 Feb 2021 12:01:03 -0500 Subject: [PATCH 3/3] Use the rubocop-shopify gem --- ...ify-github-io-ruby-style-guide-rubocop-yml | 1020 ----------------- .rubocop.yml | 4 +- Gemfile | 1 + 3 files changed, 4 insertions(+), 1021 deletions(-) delete mode 100644 .rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml diff --git a/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml b/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml deleted file mode 100644 index bf5983d..0000000 --- a/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml +++ /dev/null @@ -1,1020 +0,0 @@ -AllCops: - Exclude: - - 'db/schema.rb' - DisabledByDefault: true - StyleGuideBaseURL: https://shopify.github.io/ruby-style-guide/ - -Lint/AssignmentInCondition: - Enabled: true - -Layout/AccessModifierIndentation: - EnforcedStyle: indent - SupportedStyles: - - outdent - - indent - IndentationWidth: - -Style/Alias: - EnforcedStyle: prefer_alias_method - SupportedStyles: - - prefer_alias - - prefer_alias_method - -Layout/ArgumentAlignment: - EnforcedStyle: with_fixed_indentation - SupportedStyles: - - with_first_argument - - with_fixed_indentation - -Layout/HashAlignment: - EnforcedHashRocketStyle: key - EnforcedColonStyle: key - EnforcedLastArgumentHashStyle: ignore_implicit - SupportedLastArgumentHashStyles: - - always_inspect - - always_ignore - - ignore_implicit - - ignore_explicit - -Layout/ParameterAlignment: - EnforcedStyle: with_fixed_indentation - SupportedStyles: - - with_first_parameter - - with_fixed_indentation - IndentationWidth: - -Style/AndOr: - EnforcedStyle: always - SupportedStyles: - - always - - conditionals - -Style/BarePercentLiterals: - EnforcedStyle: bare_percent - SupportedStyles: - - percent_q - - bare_percent - -Style/BlockDelimiters: - EnforcedStyle: line_count_based - SupportedStyles: - - line_count_based - - semantic - - braces_for_chaining - ProceduralMethods: - - benchmark - - bm - - bmbm - - create - - each_with_object - - measure - - new - - realtime - - tap - - with_object - FunctionalMethods: - - let - - let! - - subject - - watch - IgnoredMethods: - - lambda - - proc - - it - -Layout/CaseIndentation: - EnforcedStyle: end - SupportedStyles: - - case - - end - IndentOneStep: false - IndentationWidth: - -Style/ClassAndModuleChildren: - EnforcedStyle: nested - SupportedStyles: - - nested - - compact - -Style/ClassCheck: - EnforcedStyle: is_a? - SupportedStyles: - - is_a? - - kind_of? - -Style/CommandLiteral: - EnforcedStyle: percent_x - SupportedStyles: - - backticks - - percent_x - - mixed - AllowInnerBackticks: false - -Style/CommentAnnotation: - Keywords: - - TODO - - FIXME - - OPTIMIZE - - HACK - - REVIEW - -Style/ConditionalAssignment: - EnforcedStyle: assign_to_condition - SupportedStyles: - - assign_to_condition - - assign_inside_condition - SingleLineConditionsOnly: true - -Layout/DotPosition: - EnforcedStyle: leading - SupportedStyles: - - leading - - trailing - -Style/EmptyElse: - EnforcedStyle: both - SupportedStyles: - - empty - - nil - - both - -Layout/EmptyLineBetweenDefs: - AllowAdjacentOneLineDefs: false - -Layout/EmptyLinesAroundBlockBody: - EnforcedStyle: no_empty_lines - SupportedStyles: - - empty_lines - - no_empty_lines - -Layout/EmptyLinesAroundClassBody: - EnforcedStyle: no_empty_lines - SupportedStyles: - - empty_lines - - empty_lines_except_namespace - - no_empty_lines - -Layout/EmptyLinesAroundModuleBody: - EnforcedStyle: no_empty_lines - SupportedStyles: - - empty_lines - - empty_lines_except_namespace - - no_empty_lines - -Layout/ExtraSpacing: - AllowForAlignment: true - ForceEqualSignAlignment: false - -Naming/FileName: - Exclude: [] - ExpectMatchingDefinition: false - Regex: - IgnoreExecutableScripts: true - -Style/For: - EnforcedStyle: each - SupportedStyles: - - for - - each - -Style/FormatString: - EnforcedStyle: format - SupportedStyles: - - format - - sprintf - - percent - -Style/FrozenStringLiteralComment: - Details: >- - Add `# frozen_string_literal: true` to the top of the file. Frozen string - literals will become the default in a future Ruby version, and we want to - make sure we're ready. - EnforcedStyle: always - SupportedStyles: - - always - - never - SafeAutoCorrect: true - -Style/GlobalVars: - AllowedVariables: [] - -Style/HashSyntax: - EnforcedStyle: ruby19 - SupportedStyles: - - ruby19 - - hash_rockets - - no_mixed_keys - - ruby19_no_mixed_keys - UseHashRocketsWithSymbolValues: false - PreferHashRocketsForNonAlnumEndingSymbols: false - -Layout/IndentationConsistency: - EnforcedStyle: normal - SupportedStyles: - - normal - - rails - -Layout/IndentationWidth: - Width: 2 - -Layout/FirstArrayElementIndentation: - EnforcedStyle: consistent - SupportedStyles: - - special_inside_parentheses - - consistent - - align_brackets - IndentationWidth: - -Layout/AssignmentIndentation: - IndentationWidth: - -Layout/FirstHashElementIndentation: - EnforcedStyle: consistent - SupportedStyles: - - special_inside_parentheses - - consistent - - align_braces - IndentationWidth: - -Style/LambdaCall: - EnforcedStyle: call - SupportedStyles: - - call - - braces - -Style/Next: - EnforcedStyle: skip_modifier_ifs - MinBodyLength: 3 - SupportedStyles: - - skip_modifier_ifs - - always - -Style/NonNilCheck: - IncludeSemanticChanges: false - -Style/MethodCallWithArgsParentheses: - Enabled: true - IgnoreMacros: true - IgnoredMethods: - - require - - require_relative - - require_dependency - - yield - - raise - - puts - Exclude: - - '**/Gemfile' - -Style/MethodDefParentheses: - EnforcedStyle: require_parentheses - SupportedStyles: - - require_parentheses - - require_no_parentheses - - require_no_parentheses_except_multiline - -Naming/MethodName: - EnforcedStyle: snake_case - SupportedStyles: - - snake_case - - camelCase - -Layout/MultilineArrayBraceLayout: - EnforcedStyle: symmetrical - SupportedStyles: - - symmetrical - - new_line - - same_line - -Layout/MultilineHashBraceLayout: - EnforcedStyle: symmetrical - SupportedStyles: - - symmetrical - - new_line - - same_line - -Layout/MultilineMethodCallBraceLayout: - EnforcedStyle: symmetrical - SupportedStyles: - - symmetrical - - new_line - - same_line - -Layout/MultilineMethodCallIndentation: - EnforcedStyle: indented - SupportedStyles: - - aligned - - indented - - indented_relative_to_receiver - IndentationWidth: 2 - -Layout/MultilineMethodDefinitionBraceLayout: - EnforcedStyle: symmetrical - SupportedStyles: - - symmetrical - - new_line - - same_line - -Style/NumericLiteralPrefix: - EnforcedOctalStyle: zero_only - SupportedOctalStyles: - - zero_with_o - - zero_only - -Style/ParenthesesAroundCondition: - AllowSafeAssignment: true - -Style/PercentQLiterals: - EnforcedStyle: lower_case_q - SupportedStyles: - - lower_case_q - - upper_case_q - -Naming/PredicateName: - NamePrefix: - - is_ - ForbiddenPrefixes: - - is_ - AllowedMethods: - - is_a? - Exclude: - - 'spec/**/*' - -Style/PreferredHashMethods: - EnforcedStyle: short - SupportedStyles: - - short - - verbose - -Style/RaiseArgs: - EnforcedStyle: exploded - SupportedStyles: - - compact - - exploded - -Style/RedundantReturn: - AllowMultipleReturnValues: false - -Style/RegexpLiteral: - EnforcedStyle: mixed - SupportedStyles: - - slashes - - percent_r - - mixed - AllowInnerSlashes: false - -Style/SafeNavigation: - ConvertCodeThatCanStartToReturnNil: false - Enabled: true - -Lint/SafeNavigationChain: - Enabled: true - -Style/Semicolon: - AllowAsExpressionSeparator: false - -Style/SignalException: - EnforcedStyle: only_raise - SupportedStyles: - - only_raise - - only_fail - - semantic - -Style/SingleLineMethods: - AllowIfMethodIsEmpty: true - -Layout/SpaceBeforeFirstArg: - AllowForAlignment: true - -Style/SpecialGlobalVars: - EnforcedStyle: use_english_names - SupportedStyles: - - use_perl_names - - use_english_names - -Style/StabbyLambdaParentheses: - EnforcedStyle: require_parentheses - SupportedStyles: - - require_parentheses - - require_no_parentheses - -Style/StringLiteralsInInterpolation: - EnforcedStyle: single_quotes - SupportedStyles: - - single_quotes - - double_quotes - -Layout/SpaceAroundBlockParameters: - EnforcedStyleInsidePipes: no_space - SupportedStylesInsidePipes: - - space - - no_space - -Layout/SpaceAroundEqualsInParameterDefault: - EnforcedStyle: space - SupportedStyles: - - space - - no_space - -Layout/SpaceAroundOperators: - AllowForAlignment: true - -Layout/SpaceBeforeBlockBraces: - EnforcedStyle: space - EnforcedStyleForEmptyBraces: space - SupportedStyles: - - space - - no_space - -Layout/SpaceInsideBlockBraces: - EnforcedStyle: space - SupportedStyles: - - space - - no_space - EnforcedStyleForEmptyBraces: no_space - SpaceBeforeBlockParameters: true - -Layout/SpaceInsideHashLiteralBraces: - EnforcedStyle: space - EnforcedStyleForEmptyBraces: no_space - SupportedStyles: - - space - - no_space - - compact - -Layout/SpaceInsideStringInterpolation: - EnforcedStyle: no_space - SupportedStyles: - - space - - no_space - -Style/SymbolProc: - IgnoredMethods: - - respond_to - - define_method - -Style/TernaryParentheses: - EnforcedStyle: require_no_parentheses - SupportedStyles: - - require_parentheses - - require_no_parentheses - AllowSafeAssignment: true - -Layout/TrailingEmptyLines: - EnforcedStyle: final_newline - SupportedStyles: - - final_newline - - final_blank_line - -Style/TrivialAccessors: - ExactNameMatch: true - AllowPredicates: true - AllowDSLWriters: false - IgnoreClassMethods: false - AllowedMethods: - - to_ary - - to_a - - to_c - - to_enum - - to_h - - to_hash - - to_i - - to_int - - to_io - - to_open - - to_path - - to_proc - - to_r - - to_regexp - - to_str - - to_s - - to_sym - -Naming/VariableName: - EnforcedStyle: snake_case - SupportedStyles: - - snake_case - - camelCase - -Style/WhileUntilModifier: - Enabled: true - -Metrics/BlockNesting: - Max: 3 - -Layout/LineLength: - Max: 120 - AllowHeredoc: true - AllowURI: true - URISchemes: - - http - - https - IgnoreCopDirectives: false - IgnoredPatterns: - - '\A\s*(remote_)?test(_\w+)?\s.*(do|->)(\s|\Z)' - -Metrics/ParameterLists: - Max: 5 - CountKeywordArgs: false - -Layout/BlockAlignment: - EnforcedStyleAlignWith: either - SupportedStylesAlignWith: - - either - - start_of_block - - start_of_line - -Layout/EndAlignment: - EnforcedStyleAlignWith: variable - SupportedStylesAlignWith: - - keyword - - variable - - start_of_line - -Layout/DefEndAlignment: - EnforcedStyleAlignWith: start_of_line - SupportedStylesAlignWith: - - start_of_line - - def - -Lint/InheritException: - EnforcedStyle: runtime_error - SupportedStyles: - - runtime_error - - standard_error - -Lint/UnusedBlockArgument: - IgnoreEmptyBlocks: true - AllowUnusedKeywordArguments: false - -Lint/UnusedMethodArgument: - AllowUnusedKeywordArguments: false - IgnoreEmptyMethods: true - -Naming/AccessorMethodName: - Enabled: true - -Layout/ArrayAlignment: - Enabled: true - -Style/ArrayJoin: - Enabled: true - -Naming/AsciiIdentifiers: - Enabled: true - -Style/Attr: - Enabled: true - -Style/BeginBlock: - Enabled: true - -Style/BlockComments: - Enabled: true - -Layout/BlockEndNewline: - Enabled: true - -Style/CaseEquality: - Enabled: true - AllowOnConstant: true - -Style/CharacterLiteral: - Enabled: true - -Naming/ClassAndModuleCamelCase: - Enabled: true - -Style/ClassMethods: - Enabled: true - -Style/ClassVars: - Enabled: true - -Layout/ClosingParenthesisIndentation: - Enabled: true - -Style/ColonMethodCall: - Enabled: true - -Layout/CommentIndentation: - Enabled: true - -Naming/ConstantName: - Enabled: true - -Style/DateTime: - Enabled: true - -Style/DefWithParentheses: - Enabled: true - -Style/EachForSimpleLoop: - Enabled: true - -Style/EachWithObject: - Enabled: true - -Layout/ElseAlignment: - Enabled: true - -Style/EmptyCaseCondition: - Enabled: true - -Layout/EmptyLines: - Enabled: true - -Layout/EmptyLinesAroundAccessModifier: - Enabled: true - -Layout/EmptyLinesAroundMethodBody: - Enabled: true - -Style/EmptyLiteral: - Enabled: true - -Style/EndBlock: - Enabled: true - -Layout/EndOfLine: - Enabled: true - -Style/EvenOdd: - Enabled: true - -Layout/InitialIndentation: - Enabled: true - -Lint/FlipFlop: - Enabled: true - -Style/IfInsideElse: - Enabled: true - -Style/IfUnlessModifierOfIfUnless: - Enabled: true - -Style/IfWithSemicolon: - Enabled: true - -Style/IdenticalConditionalBranches: - Enabled: true - -Layout/IndentationStyle: - Enabled: true - -Style/InfiniteLoop: - Enabled: true - -Layout/LeadingCommentSpace: - Enabled: true - -Style/LineEndConcatenation: - Enabled: true - -Style/MethodCallWithoutArgsParentheses: - Enabled: true - -Lint/MissingSuper: - Enabled: true - -Style/MissingRespondToMissing: - Enabled: true - -Layout/MultilineBlockLayout: - Enabled: true - -Style/MultilineIfThen: - Enabled: true - -Style/MultilineMemoization: - Enabled: true - -Style/MultilineTernaryOperator: - Enabled: true - -Style/NegatedIf: - Enabled: true - -Style/NegatedWhile: - Enabled: true - -Style/NestedModifier: - Enabled: true - -Style/NestedParenthesizedCalls: - Enabled: true - -Style/NestedTernaryOperator: - Enabled: true - -Style/NilComparison: - Enabled: true - -Style/Not: - Enabled: true - -Style/OneLineConditional: - Enabled: true - -Naming/BinaryOperatorParameterName: - Enabled: true - -Style/OptionalArguments: - Enabled: true - -Style/ParallelAssignment: - Enabled: true - -Style/PerlBackrefs: - Enabled: true - -Style/Proc: - Enabled: true - -Style/RedundantBegin: - Enabled: true - -Style/RedundantException: - Enabled: true - -Style/RedundantFreeze: - Enabled: true - -Style/RedundantParentheses: - Enabled: true - -Style/RedundantSelf: - Enabled: true - -Style/RedundantSortBy: - Enabled: true - -Layout/RescueEnsureAlignment: - Enabled: true - -Style/RescueModifier: - Enabled: true - -Style/Sample: - Enabled: true - -Style/SelfAssignment: - Enabled: true - -Layout/SpaceAfterColon: - Enabled: true - -Layout/SpaceAfterComma: - Enabled: true - -Layout/SpaceAfterMethodName: - Enabled: true - -Layout/SpaceAfterNot: - Enabled: true - -Layout/SpaceAfterSemicolon: - Enabled: true - -Layout/SpaceBeforeComma: - Enabled: true - -Layout/SpaceBeforeComment: - Enabled: true - -Layout/SpaceBeforeSemicolon: - Enabled: true - -Layout/SpaceAroundKeyword: - Enabled: true - -Layout/SpaceInsideArrayPercentLiteral: - Enabled: true - -Layout/SpaceInsidePercentLiteralDelimiters: - Enabled: true - -Layout/SpaceInsideArrayLiteralBrackets: - Enabled: true - -Layout/SpaceInsideParens: - Enabled: true - -Layout/SpaceInsideRangeLiteral: - Enabled: true - -Style/SymbolLiteral: - Enabled: true - -Layout/TrailingWhitespace: - Enabled: true - -Style/UnlessElse: - Enabled: true - -Style/RedundantCapitalW: - Enabled: true - -Style/RedundantInterpolation: - Enabled: true - -Style/RedundantPercentQ: - Enabled: true - -Style/VariableInterpolation: - Enabled: true - -Style/WhenThen: - Enabled: true - -Style/WhileUntilDo: - Enabled: true - -Style/ZeroLengthPredicate: - Enabled: true - -Layout/HeredocIndentation: - Enabled: true - -Lint/AmbiguousOperator: - Enabled: true - -Lint/AmbiguousRegexpLiteral: - Enabled: true - -Lint/CircularArgumentReference: - Enabled: true - -Layout/ConditionPosition: - Enabled: true - -Lint/Debugger: - Enabled: true - -Lint/DeprecatedClassMethods: - Enabled: true - -Lint/DuplicateMethods: - Enabled: true - -Lint/DuplicateHashKey: - Enabled: true - -Lint/EachWithObjectArgument: - Enabled: true - -Lint/ElseLayout: - Enabled: true - -Lint/EmptyEnsure: - Enabled: true - -Lint/EmptyInterpolation: - Enabled: true - -Lint/EnsureReturn: - Enabled: true - -Lint/FloatOutOfRange: - Enabled: true - -Lint/FormatParameterMismatch: - Enabled: true - -Lint/SuppressedException: - AllowComments: true - -Lint/ImplicitStringConcatenation: - Description: Checks for adjacent string literals on the same line, which could - better be represented as a single string literal. - -Lint/IneffectiveAccessModifier: - Description: Checks for attempts to use `private` or `protected` to set the visibility - of a class method, which does not work. - -Lint/LiteralAsCondition: - Enabled: true - -Lint/LiteralInInterpolation: - Enabled: true - -Lint/Loop: - Description: Use Kernel#loop with break rather than begin/end/until or begin/end/while - for post-loop tests. - -Lint/NestedMethodDefinition: - Enabled: true - -Lint/NextWithoutAccumulator: - Description: Do not omit the accumulator when calling `next` in a `reduce`/`inject` - block. - -Lint/NonLocalExitFromIterator: - Enabled: true - -Lint/ParenthesesAsGroupedExpression: - Enabled: true - -Lint/PercentStringArray: - Enabled: true - -Lint/PercentSymbolArray: - Enabled: true - -Lint/RandOne: - Description: Checks for `rand(1)` calls. Such calls always return `0` and most - likely a mistake. - -Lint/RequireParentheses: - Enabled: true - -Lint/RescueException: - Enabled: true - -Lint/ShadowedException: - Enabled: true - -Lint/ShadowingOuterLocalVariable: - Enabled: true - -Lint/RedundantStringCoercion: - Enabled: true - -Lint/UnderscorePrefixedVariableName: - Enabled: true - -Lint/UnifiedInteger: - Enabled: true - -Lint/RedundantCopDisableDirective: - Enabled: true - -Lint/RedundantCopEnableDirective: - Enabled: true - -Lint/RedundantSplatExpansion: - Enabled: true - -Lint/UnreachableCode: - Enabled: true - -Lint/UselessAccessModifier: - ContextCreatingMethods: [] - -Lint/UselessAssignment: - Enabled: true - -Lint/BinaryOperatorWithIdenticalOperands: - Enabled: true - -Lint/UselessElseWithoutRescue: - Enabled: true - -Lint/UselessSetterCall: - Enabled: true - -Lint/Void: - Enabled: true - -Security/Eval: - Enabled: true - -Security/JSONLoad: - Enabled: true - -Security/Open: - Enabled: true - -Lint/BigDecimalNew: - Enabled: true - -Style/Strip: - Enabled: true - -Style/TrailingBodyOnClass: - Enabled: true - -Style/TrailingBodyOnModule: - Enabled: true - -Style/TrailingCommaInArrayLiteral: - EnforcedStyleForMultiline: comma - Enabled: true - -Style/TrailingCommaInHashLiteral: - EnforcedStyleForMultiline: comma - Enabled: true - -Layout/SpaceInsideReferenceBrackets: - EnforcedStyle: no_space - EnforcedStyleForEmptyBrackets: no_space - Enabled: true - -Style/ModuleFunction: - EnforcedStyle: extend_self - -Lint/OrderedMagicComments: - Enabled: true - -Lint/DeprecatedOpenSSLConstant: - Enabled: true diff --git a/.rubocop.yml b/.rubocop.yml index 54430b2..defa1c7 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,5 +1,7 @@ +inherit_gem: + rubocop-shopify: rubocop.yml + inherit_from: - - 'https://shopify.github.io/ruby-style-guide/rubocop.yml' - .rubocop_todo.yml require: rubocop-performance diff --git a/Gemfile b/Gemfile index ed0678f..daff580 100644 --- a/Gemfile +++ b/Gemfile @@ -19,6 +19,7 @@ end group :test do gem 'rubocop', '~> 1.4', require: false + gem 'rubocop-shopify', '~> 1.0.7', require: false gem 'rubocop-performance', require: false platform :mri, :truffleruby do