-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Spec edits for @defer/@stream #742
Commits on Aug 31, 2023
-
Update Section 3 -- Type System.md Update Section 3 -- Type System.md Update Section 3 -- Type System.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Update Section 6 -- Execution.md Amend changes change initial_count to initialCount add payload fields to Response section add stream validation for overlapping fields spelling updates add note about re-execution add note about final payloads label is optional fix build Update ExecuteQuery with hasNext logic fix spelling fix spaces Update execution to add defer/stream to mutations and subscriptions clarify stream records Apply suggestions from code review Co-authored-by: Benjie Gillam <[email protected]> missing bracket Update spec/Section 7 -- Response.md Co-authored-by: Benjie Gillam <[email protected]> clarify line about stream record iterator update visitedFragments with defer Updates to consolidate subsequent payload logic for queries, mutations, and subscriptions Apply suggestions from code review Co-authored-by: Benjie Gillam <[email protected]> address review feedback Add handling of termination signal more formatting fix spelling Add assertion for record type add "Stream Directives Are Used On List Fields" validation rule Add defaultValue to @stream initialCount Update spec/Section 5 -- Validation.md Co-authored-by: Benjie Gillam <[email protected]> # Conflicts: # spec/Section 3 -- Type System.md # spec/Section 5 -- Validation.md # spec/Section 6 -- Execution.md # spec/Section 7 -- Response.md
Configuration menu - View commit details
-
Copy full SHA for 42bd98a - Browse repository at this point
Copy the full SHA 42bd98aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 583acb6 - Browse repository at this point
Copy the full SHA 583acb6View commit details -
clear up that it is legal to support either defer or stream individually
# Conflicts: # spec/Section 3 -- Type System.md
Configuration menu - View commit details
-
Copy full SHA for a4bbad6 - Browse repository at this point
Copy the full SHA a4bbad6View commit details -
Configuration menu - View commit details
-
Copy full SHA for b4fb65c - Browse repository at this point
Copy the full SHA b4fb65cView commit details -
Update Section 3 -- Type System.md
# Conflicts: # spec/Section 3 -- Type System.md
Configuration menu - View commit details
-
Copy full SHA for 3257f19 - Browse repository at this point
Copy the full SHA 3257f19View commit details -
clarification on defer/stream requirement
# Conflicts: # spec/Section 3 -- Type System.md
Configuration menu - View commit details
-
Copy full SHA for 3cce3fa - Browse repository at this point
Copy the full SHA 3cce3faView commit details -
clarify negative values of initialCount
# Conflicts: # spec/Section 3 -- Type System.md
Configuration menu - View commit details
-
Copy full SHA for f81d745 - Browse repository at this point
Copy the full SHA f81d745View commit details -
allow extensions only subsequent payloads
# Conflicts: # spec/Section 7 -- Response.md
Configuration menu - View commit details
-
Copy full SHA for b0cae7f - Browse repository at this point
Copy the full SHA b0cae7fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9449853 - Browse repository at this point
Copy the full SHA 9449853View commit details -
Raise a field error if initialCount is less than zero
# Conflicts: # spec/Section 3 -- Type System.md # spec/Section 6 -- Execution.md
Configuration menu - View commit details
-
Copy full SHA for c812890 - Browse repository at this point
Copy the full SHA c812890View commit details -
data is not necessarily an object in subsequent payloads
# Conflicts: # spec/Section 7 -- Response.md
Configuration menu - View commit details
-
Copy full SHA for c1fefe4 - Browse repository at this point
Copy the full SHA c1fefe4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6dd9b79 - Browse repository at this point
Copy the full SHA 6dd9b79View commit details -
wait for parent async record to ensure correct order of payloads
# Conflicts: # spec/Section 6 -- Execution.md
Configuration menu - View commit details
-
Copy full SHA for ebfefb6 - Browse repository at this point
Copy the full SHA ebfefb6View commit details -
Simplify execution, payloads should begin execution immediately
# Conflicts: # spec/Section 6 -- Execution.md
Configuration menu - View commit details
-
Copy full SHA for 30674c8 - Browse repository at this point
Copy the full SHA 30674c8View commit details -
# Conflicts: # spec/Section 6 -- Execution.md
Configuration menu - View commit details
-
Copy full SHA for 101516b - Browse repository at this point
Copy the full SHA 101516bView commit details -
add isCompletedIterator to AsyncPayloadRecord to track completed iter…
…ators # Conflicts: # spec/Section 6 -- Execution.md
Configuration menu - View commit details
-
Copy full SHA for 80ff450 - Browse repository at this point
Copy the full SHA 80ff450View commit details -
Configuration menu - View commit details
-
Copy full SHA for b73af22 - Browse repository at this point
Copy the full SHA b73af22View commit details -
Configuration menu - View commit details
-
Copy full SHA for f634192 - Browse repository at this point
Copy the full SHA f634192View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7eafac8 - Browse repository at this point
Copy the full SHA 7eafac8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 83e058d - Browse repository at this point
Copy the full SHA 83e058dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5aa915b - Browse repository at this point
Copy the full SHA 5aa915bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d7fe43a - Browse repository at this point
Copy the full SHA d7fe43aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 379f10c - Browse repository at this point
Copy the full SHA 379f10cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ffad84 - Browse repository at this point
Copy the full SHA 1ffad84View commit details -
Configuration menu - View commit details
-
Copy full SHA for 21dd0bc - Browse repository at this point
Copy the full SHA 21dd0bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3a569b6 - Browse repository at this point
Copy the full SHA 3a569b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for a596ead - Browse repository at this point
Copy the full SHA a596eadView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4543a47 - Browse repository at this point
Copy the full SHA 4543a47View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a093cd - Browse repository at this point
Copy the full SHA 5a093cdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8fa426e - Browse repository at this point
Copy the full SHA 8fa426eView commit details -
Configuration menu - View commit details
-
Copy full SHA for fcc6393 - Browse repository at this point
Copy the full SHA fcc6393View commit details -
Configuration menu - View commit details
-
Copy full SHA for aa22c5f - Browse repository at this point
Copy the full SHA aa22c5fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 089d06c - Browse repository at this point
Copy the full SHA 089d06cView commit details -
Configuration menu - View commit details
-
Copy full SHA for a154bda - Browse repository at this point
Copy the full SHA a154bdaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 67689c5 - Browse repository at this point
Copy the full SHA 67689c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9230085 - Browse repository at this point
Copy the full SHA 9230085View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4bf09d0 - Browse repository at this point
Copy the full SHA 4bf09d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1499e64 - Browse repository at this point
Copy the full SHA 1499e64View commit details -
Configuration menu - View commit details
-
Copy full SHA for 722de48 - Browse repository at this point
Copy the full SHA 722de48View commit details -
Configuration menu - View commit details
-
Copy full SHA for c4bdfaf - Browse repository at this point
Copy the full SHA c4bdfafView commit details -
Configuration menu - View commit details
-
Copy full SHA for d84dd0b - Browse repository at this point
Copy the full SHA d84dd0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2248f35 - Browse repository at this point
Copy the full SHA 2248f35View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2fb409c - Browse repository at this point
Copy the full SHA 2fb409cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 66c3f7b - Browse repository at this point
Copy the full SHA 66c3f7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9287b62 - Browse repository at this point
Copy the full SHA 9287b62View commit details -
Configuration menu - View commit details
-
Copy full SHA for e0c0ad9 - Browse repository at this point
Copy the full SHA e0c0ad9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 99baf54 - Browse repository at this point
Copy the full SHA 99baf54View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4931f7a - Browse repository at this point
Copy the full SHA 4931f7aView commit details -
Configuration menu - View commit details
-
Copy full SHA for da96e98 - Browse repository at this point
Copy the full SHA da96e98View commit details -
Configuration menu - View commit details
-
Copy full SHA for aff1113 - Browse repository at this point
Copy the full SHA aff1113View commit details -
Configuration menu - View commit details
-
Copy full SHA for fb3e05c - Browse repository at this point
Copy the full SHA fb3e05cView commit details -
* add comma * remove unused parameter
Configuration menu - View commit details
-
Copy full SHA for 039e4eb - Browse repository at this point
Copy the full SHA 039e4ebView commit details -
remove ResolveFIeldGenerator (#4)
* streamline stream execution Currently, these spec changes introduce a new internal function named `ResolveFieldGenerator` that is suggested parallels `ResolveFieldValue`. This function is used during field execution such that if the stream directive is specified, it is called instead of `ResolveFieldValue`. The reference implementation, however, does not require any such function, simply utilizing the result of `ResolveFieldValue`. With incremental delivery, collections completed by `CompleteValue` should be explicitly iterated using a well-defined iterator, such that the iterator can be passed to `ExecuteStreamField`. But this does not require a new internal function to be specified/exposed. Moreover, introducing this function causes a mixing of concerns between the `ExecuteField` and `CompleteValue` algorithms; Currently, if stream is specified for a field, `ExecuteField` extracts the iterator and passes it to `CompleteValue`, while if stream is not specified, the `ExecuteField` passes the collection, i.e. the iterable, not the iterator. In the stream case, this shunts some of the logic checking the validity of resolution results into field execution. In fact, it exposes a specification "bug" => in the stream case, no checking is actually done that `ResolveFieldGenerator` returns an iterator! This change removes `ResolveFieldGenerator` and with it some complexity, and brings it in line with the reference implementation. The reference implementation contains some simplification of the algorithm for the synchronous iterator case (we don't have to preserve the iterator on the StreamRecord, because there will be no early close required and we don't have to set isCompletedIterator, beacuse we don't have to create a dummy payload for termination of the asynchronous stream), We could consider also removing these bits as well, as they are an implementation detail in terms of how our dispatcher is managing its iterators, but that should be left for another change. * run prettier
Configuration menu - View commit details
-
Copy full SHA for 777c21b - Browse repository at this point
Copy the full SHA 777c21bView commit details -
* fix whitespace * complete renaming of initialItems
Configuration menu - View commit details
-
Copy full SHA for 7626800 - Browse repository at this point
Copy the full SHA 7626800View commit details -
Add error handling for stream iterators (#5)
* Add error handling for stream iterators * also add iterator error handling within CompleteValue * incorporate feedback
Configuration menu - View commit details
-
Copy full SHA for d16a432 - Browse repository at this point
Copy the full SHA d16a432View commit details -
Configuration menu - View commit details
-
Copy full SHA for 979e581 - Browse repository at this point
Copy the full SHA 979e581View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1207121 - Browse repository at this point
Copy the full SHA 1207121View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6545a55 - Browse repository at this point
Copy the full SHA 6545a55View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c2e3f9 - Browse repository at this point
Copy the full SHA 4c2e3f9View commit details -
Co-authored-by: Simon Gellis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e4ee3eb - Browse repository at this point
Copy the full SHA e4ee3ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for 22de5de - Browse repository at this point
Copy the full SHA 22de5deView commit details -
Configuration menu - View commit details
-
Copy full SHA for c630301 - Browse repository at this point
Copy the full SHA c630301View commit details