rubocop-graphql 1.5.0 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/config/default.yml +1 -0
- data/lib/rubocop/cop/graphql/ordered_arguments.rb +13 -20
- data/lib/rubocop/cop/graphql/resolver_method_length.rb +4 -6
- data/lib/rubocop/graphql/field.rb +1 -1
- data/lib/rubocop/graphql/sorbet.rb +2 -10
- data/lib/rubocop/graphql/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 54137ed6106e3d8c0d2c675ea02e41989aef1d4480edf875071c9c7918a96fba
         | 
| 4 | 
            +
              data.tar.gz: a1a0b7d307854a39d4b4761d77cc829569dd9e97453a329d027886331407aae0
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 9e1fc8711b226bd656ca33d8409949a40667e9eabf31ca55a3536ae5f4f54f3af4e7254cbaa589e406172c724afdeb6772ffe5dd689909ebeb09608c7c94b848
         | 
| 7 | 
            +
              data.tar.gz: 392b99c409b0e2b8247fff232d35fab529c1abf5eb3f7b648f40eb9020b07a5c56f074d88538626e564872a4a13f1cb59ee20a5ddc0c982099a2aa3edc596289
         | 
    
        data/config/default.yml
    CHANGED
    
    
| @@ -58,16 +58,14 @@ module RuboCop | |
| 58 58 | 
             
                          "Field `%<current>s` should appear before `%<previous>s`."
         | 
| 59 59 |  | 
| 60 60 | 
             
                    def on_class(node)
         | 
| 61 | 
            -
                       | 
| 62 | 
            -
                       | 
| 63 | 
            -
             | 
| 64 | 
            -
             | 
| 65 | 
            -
             | 
| 66 | 
            -
                         | 
| 67 | 
            -
                           | 
| 61 | 
            +
                      # Do a single pass over descendants to get argument declarations
         | 
| 62 | 
            +
                      # with and without a block.
         | 
| 63 | 
            +
                      argument_declarations = argument_declaration(node).map do |declaration|
         | 
| 64 | 
            +
                        if argument_declaration_with_block?(declaration)
         | 
| 65 | 
            +
                          declaration.parent
         | 
| 66 | 
            +
                        else
         | 
| 67 | 
            +
                          declaration
         | 
| 68 68 | 
             
                        end
         | 
| 69 | 
            -
             | 
| 70 | 
            -
                        same_arg_with_block_declaration || node
         | 
| 71 69 | 
             
                      end
         | 
| 72 70 |  | 
| 73 71 | 
             
                      argument_declarations.each_cons(2) do |previous, current|
         | 
| @@ -80,6 +78,10 @@ module RuboCop | |
| 80 78 |  | 
| 81 79 | 
             
                    private
         | 
| 82 80 |  | 
| 81 | 
            +
                    def argument_declaration_with_block?(node)
         | 
| 82 | 
            +
                      node.parent&.block_type? && node.parent.send_node == node
         | 
| 83 | 
            +
                    end
         | 
| 84 | 
            +
             | 
| 83 85 | 
             
                    def register_offense(previous, current)
         | 
| 84 86 | 
             
                      message = format(
         | 
| 85 87 | 
             
                        self.class::MSG,
         | 
| @@ -102,19 +104,10 @@ module RuboCop | |
| 102 104 | 
             
                      previous.source_range.last_line == current.source_range.first_line - 1
         | 
| 103 105 | 
             
                    end
         | 
| 104 106 |  | 
| 105 | 
            -
                    # @!method  | 
| 106 | 
            -
                    def_node_search : | 
| 107 | 
            +
                    # @!method argument_declaration(node)
         | 
| 108 | 
            +
                    def_node_search :argument_declaration, <<~PATTERN
         | 
| 107 109 | 
             
                      (send nil? :argument (:sym _) ...)
         | 
| 108 110 | 
             
                    PATTERN
         | 
| 109 | 
            -
             | 
| 110 | 
            -
                    # @!method argument_declarations_with_blocks(node)
         | 
| 111 | 
            -
                    def_node_search :argument_declarations_with_blocks, <<~PATTERN
         | 
| 112 | 
            -
                      (block
         | 
| 113 | 
            -
                        (send nil? :argument
         | 
| 114 | 
            -
                          (:sym _)
         | 
| 115 | 
            -
                          ...)
         | 
| 116 | 
            -
                        ...)
         | 
| 117 | 
            -
                    PATTERN
         | 
| 118 111 | 
             
                  end
         | 
| 119 112 | 
             
                end
         | 
| 120 113 | 
             
              end
         | 
| @@ -23,9 +23,11 @@ module RuboCop | |
| 23 23 | 
             
                      return if excluded_methods.include?(String(node.method_name))
         | 
| 24 24 |  | 
| 25 25 | 
             
                      if field_is_defined?(node)
         | 
| 26 | 
            -
                         | 
| 26 | 
            +
                        return if node.line_count <= max_length
         | 
| 27 27 |  | 
| 28 | 
            -
                         | 
| 28 | 
            +
                        calculator = build_code_length_calculator(node)
         | 
| 29 | 
            +
                        length = calculator.calculate
         | 
| 30 | 
            +
                        return if length <= max_length
         | 
| 29 31 |  | 
| 30 32 | 
             
                        add_offense(node, message: message(length))
         | 
| 31 33 | 
             
                      end
         | 
| @@ -34,10 +36,6 @@ module RuboCop | |
| 34 36 |  | 
| 35 37 | 
             
                    private
         | 
| 36 38 |  | 
| 37 | 
            -
                    def code_length(node)
         | 
| 38 | 
            -
                      node.source.lines[1..-2].count { |line| !irrelevant_line(line) }
         | 
| 39 | 
            -
                    end
         | 
| 40 | 
            -
             | 
| 41 39 | 
             
                    def field_is_defined?(node)
         | 
| 42 40 | 
             
                      node.parent
         | 
| 43 41 | 
             
                          .children
         | 
| @@ -15,16 +15,8 @@ module RuboCop | |
| 15 15 | 
             
                  end
         | 
| 16 16 |  | 
| 17 17 | 
             
                  def sorbet_signature_for(node)
         | 
| 18 | 
            -
                    node. | 
| 19 | 
            -
             | 
| 20 | 
            -
                        sorbet_signature(sibling)
         | 
| 21 | 
            -
                    end
         | 
| 22 | 
            -
                  end
         | 
| 23 | 
            -
             | 
| 24 | 
            -
                  private
         | 
| 25 | 
            -
             | 
| 26 | 
            -
                  def siblings_in_sequence?(first_node, second_node)
         | 
| 27 | 
            -
                    first_node.sibling_index - second_node.sibling_index == - 1
         | 
| 18 | 
            +
                    sibling = node.left_sibling
         | 
| 19 | 
            +
                    sibling if sibling && sorbet_signature(sibling)
         | 
| 28 20 | 
             
                  end
         | 
| 29 21 | 
             
                end
         | 
| 30 22 | 
             
              end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: rubocop-graphql
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.5. | 
| 4 | 
            +
              version: 1.5.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Dmitry Tsepelev
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2024-01 | 
| 11 | 
            +
            date: 2024-06-01 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         |