Skip to content

Commit ab7071a

Browse files
committed
Validation: context.getFragmentSpreads now accepts selectionSet rather than fragment AST node. Commit: graphql/graphql-js@688a1ee
1 parent 4e752d5 commit ab7071a

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

graphql/validation/rules/no_fragment_cycles.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def detect_cycle_recursive(self, fragment):
2424
fragment_name = fragment.name.value
2525
self.visited_frags.add(fragment_name)
2626

27-
spread_nodes = self.context.get_fragment_spreads(fragment)
27+
spread_nodes = self.context.get_fragment_spreads(fragment.selection_set)
2828
if not spread_nodes:
2929
return
3030

graphql/validation/validation.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ def get_recursively_referenced_fragments(self, operation):
9696
if not fragments:
9797
fragments = []
9898
collected_names = set()
99-
nodes_to_visit = [operation]
99+
nodes_to_visit = [operation.selection_set]
100100
while nodes_to_visit:
101101
node = nodes_to_visit.pop()
102102
spreads = self.get_fragment_spreads(node)
@@ -107,15 +107,15 @@ def get_recursively_referenced_fragments(self, operation):
107107
fragment = self.get_fragment(frag_name)
108108
if fragment:
109109
fragments.append(fragment)
110-
nodes_to_visit.append(fragment)
110+
nodes_to_visit.append(fragment.selection_set)
111111
self._recursively_referenced_fragments[operation] = fragments
112112
return fragments
113113

114114
def get_fragment_spreads(self, node):
115115
spreads = self._fragment_spreads.get(node)
116116
if not spreads:
117117
spreads = []
118-
sets_to_visit = [node.selection_set]
118+
sets_to_visit = [node]
119119
while sets_to_visit:
120120
_set = sets_to_visit.pop()
121121
for selection in _set.selections:

0 commit comments

Comments
 (0)