rubocop-graphql 1.5.1 → 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1307db3b7122e5a576ca03bbaecbb5798b03a927718aa85fa25fd5a9afe1ec07
4
- data.tar.gz: ea58763eb067a3e576149ebe41830a7ca7210e080e61382011fab9707ceaf2b9
3
+ metadata.gz: 54137ed6106e3d8c0d2c675ea02e41989aef1d4480edf875071c9c7918a96fba
4
+ data.tar.gz: a1a0b7d307854a39d4b4761d77cc829569dd9e97453a329d027886331407aae0
5
5
  SHA512:
6
- metadata.gz: 86d2c4c34918bb8713b15c4485b681d62b8b8c74b894aefbfb4d12e1d364ef2eff48c6c5562ca5b10690195b8f8403dacac73552b0cdfa2960f64fde07b63e3c
7
- data.tar.gz: 784d752ff412289d3eeeabdd204939bef5ad946e6cd5f40c8cc2ccfd1ebe4b7ec657f8ebe44c3d14fc7d8b50508891bc9b945f732b1b25c1a9dff6d6751ce87f
6
+ metadata.gz: 9e1fc8711b226bd656ca33d8409949a40667e9eabf31ca55a3536ae5f4f54f3af4e7254cbaa589e406172c724afdeb6772ffe5dd689909ebeb09608c7c94b848
7
+ data.tar.gz: 392b99c409b0e2b8247fff232d35fab529c1abf5eb3f7b648f40eb9020b07a5c56f074d88538626e564872a4a13f1cb59ee20a5ddc0c982099a2aa3edc596289
@@ -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
- declarations_with_blocks = argument_declarations_with_blocks(node)
62
- declarations_without_blocks = argument_declarations_without_blocks(node)
63
-
64
- argument_declarations = declarations_without_blocks.map do |node|
65
- arg_name = argument_name(node)
66
- same_arg_with_block_declaration = declarations_with_blocks.find do |dec|
67
- argument_name(dec) == arg_name
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 argument_declarations_without_blocks(node)
106
- def_node_search :argument_declarations_without_blocks, <<~PATTERN
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
@@ -15,16 +15,8 @@ module RuboCop
15
15
  end
16
16
 
17
17
  def sorbet_signature_for(node)
18
- node.parent.each_descendant.find do |sibling|
19
- siblings_in_sequence?(sibling, node) &&
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
@@ -1,5 +1,5 @@
1
1
  module RuboCop
2
2
  module GraphQL
3
- VERSION = "1.5.1".freeze
3
+ VERSION = "1.5.2".freeze
4
4
  end
5
5
  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.1
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-03-31 00:00:00.000000000 Z
11
+ date: 2024-06-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler