forked from graphql/graphql-spec
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Fragment args 2024 amendments #3
Closed
JoviDeCroock
wants to merge
27
commits into
mjmahone:fragment-args-2023
from
JoviDeCroock:fragment-args-2024-amendments
Closed
Fragment args 2024 amendments #3
JoviDeCroock
wants to merge
27
commits into
mjmahone:fragment-args-2023
from
JoviDeCroock:fragment-args-2024-amendments
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Co-authored-by: Benjie Gillam <benjie@jemjie.com>
Clarify that a schema definition must be present (and not omitted) if a default root type name happens to be used by a type which is not a root type. Also adds an editorial change to introduce term definitions for the immediate concepts involved. Co-authored-by: Lee Byron <lee@leebyron.com>
…raphql#1009) Adds how to contribute custom scalar specs, links to spec templates, and adds examples following the launch of https://scalars.graphql.org Co-authored-by: Benjie <benjie@jemjie.com>
Co-authored-by: Benjie <benjie@jemjie.com> Co-authored-by: Roman Ivantsov <roman.ivantsov@microsoft.com>
This was referenced Feb 7, 2024
* Consistent punctuation in algorithms * Clarify style guide * Boolean formatting * Add a format check to CI
Co-authored-by: Matt Mahoney <mahoney.mattj@gmail.com>
5a73543
to
d7590fa
Compare
Co-authored-by: Benjie <benjie@jemjie.com>
ac9fdbc
to
03ba255
Compare
Co-authored-by: Benjie <benjie@jemjie.com>
Co-authored-by: Benjie <benjie@jemjie.com>
Closing as there's a PR open on the main spec repo |
JoviDeCroock
added a commit
to graphql/graphql-js
that referenced
this pull request
Sep 6, 2024
This is a rebase of #3847 This implements execution of Fragment Arguments, and more specifically visiting, parsing and printing of fragment-spreads with arguments and fragment definitions with variables, as described by the spec changes in graphql/graphql-spec#1081. There are a few amendments in terms of execution and keying the fragment-spreads, these are reflected in mjmahone/graphql-spec#3 The purpose is to be able to independently review all the moving parts, the stacked PR's will contain mentions of open feedback that was present at the time. - [execution changes](JoviDeCroock#2) - [TypeInfo & validation changes](JoviDeCroock#4) - [validation changes in isolation](JoviDeCroock#5) CC @mjmahone the original author --------- Co-authored-by: mjmahone <mahoney.mattj@gmail.com> Co-authored-by: Yaacov Rydzinski <yaacovCR@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
These amendments are made from comments on the implementation PR and alterations from the new implementation
coerce
logic we use in the general flowIn general the biggest changes are that we introduce
fragmentVariableValues
which will be on thegroupedFieldSet
, these are derived from the arguments in scope of the fragmentDefinition where this field is used.We introduce
localFragmentVariables
which as we are traversing down fragment-spreads are a coerced set of variables i.e.Last but not least we introduce
getArgumentValuesFromSpread
which looks at the spread and fragment-definition and establishes a coerced set of localVariableValues.Not sure how to call GraphQL WG reviewers here 😅