Skip to content

Introduce planning phase to query execution #304

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

Closed
wants to merge 97 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
88c7455
Extract Execution context building to a separate modules so that Exec…
JeffRMoore Feb 25, 2016
ecf7b8e
Create a planning module and move some initial functionality there th…
JeffRMoore Feb 25, 2016
72bccc2
Remove accidentally duplicated code; initial call to planOperation
JeffRMoore Feb 25, 2016
08c08f0
Introduce the OperationExecutionPlan type
JeffRMoore Feb 25, 2016
b8f16a6
Begin executing based on the plan
JeffRMoore Feb 25, 2016
4c78283
Introduce a FieldResolvingPlan
JeffRMoore Feb 25, 2016
9b598b0
Execute based on the FieldResolvingPlan as far forward as it has been…
JeffRMoore Feb 25, 2016
4ffca0a
Create plans for CompleteValue execution, rename plan names to be mor…
JeffRMoore Feb 26, 2016
f4f561a
Propigate execution plan into CompleteValue
JeffRMoore Feb 26, 2016
0fca85b
Correct misspelling add kind field to Execution Plans
JeffRMoore Feb 26, 2016
15f48cd
Checkpoint in the middle of converting CompleteValue to use Execution…
JeffRMoore Feb 26, 2016
a79d4e3
Checkpoint in the middle of converting CompleteValue to use Execution…
JeffRMoore Feb 26, 2016
b033bf8
Checkpoint converting completeValue over to execution plans
JeffRMoore Feb 26, 2016
371448b
Remove function name suffixes now that we have collapsed into only us…
JeffRMoore Feb 26, 2016
6a06fe1
Execution Plans are no longer optional
JeffRMoore Feb 26, 2016
4b017d7
Remove ignoring execution plan
JeffRMoore Feb 26, 2016
93d8091
Harmonize names of execution plans
JeffRMoore Feb 26, 2016
a1f8aa3
Fix imports of execution plan types
JeffRMoore Feb 26, 2016
db8ad59
Indeed, it is in intional to omit fields, change comment to reflect that
JeffRMoore Feb 26, 2016
a1f6c3e
Remove wrapper around switch statement
JeffRMoore Feb 26, 2016
8405ebb
Add kind as a constant on execution plan type definitions
JeffRMoore Feb 26, 2016
5f8a43f
Fix incorrectly imported type definitions
JeffRMoore Feb 26, 2016
d3bd76a
Fix broken CoercionExecutionPlan definition
JeffRMoore Feb 26, 2016
d7e34b7
Remove unnecessary invariant declarations
JeffRMoore Feb 26, 2016
a4beecf
Change ExecuteFields to accept a plan instead of a list of fields
JeffRMoore Feb 26, 2016
f34ccac
No need to capture fields, this wasy a temporary artifact of transition
JeffRMoore Feb 26, 2016
d841bdc
Rename ExecutionPlan to CompletionExecutionPlan. That's more indicat…
JeffRMoore Feb 26, 2016
36fb2d1
Capture type information in the Execution Plans
JeffRMoore Feb 26, 2016
cdbb5d5
move fieldASTs information into the Execution Plans and out of the ca…
JeffRMoore Feb 26, 2016
787c4e6
Narrow the width of the executeFields methods by removing the type pa…
JeffRMoore Feb 26, 2016
031bc44
Rename returnType to type to harmonize the name of the type field on …
JeffRMoore Feb 26, 2016
8eb0381
Remove more caller type propigation in favor of the Execution plan
JeffRMoore Feb 26, 2016
cae4343
Brain dump on what is left to complete
JeffRMoore Feb 26, 2016
4b3db81
Document parallels between CompleteValue and planCompletion and Add i…
JeffRMoore Feb 26, 2016
bef596b
Remove innerType, it does not provide useful additional information
JeffRMoore Feb 26, 2016
7fe185e
Additional Documentation
JeffRMoore Feb 26, 2016
f6f035c
Add fields from GraphQLResolveInfo to ResolvingExecutionPlan
JeffRMoore Feb 26, 2016
4538e19
Remove duplicate type information
JeffRMoore Feb 26, 2016
a8aef5f
There is already a resolver signature defined
JeffRMoore Feb 26, 2016
6ae2dba
Organize TODO list
JeffRMoore Feb 26, 2016
52cc623
Harmonize and document plan terminology
JeffRMoore Feb 26, 2016
a61e372
Wire up the OperationExecutionPlan
JeffRMoore Feb 26, 2016
d984c28
Remove unnecessary strategy in selection plan
JeffRMoore Feb 26, 2016
2a816db
Merge GraphQLResolveInfo fields into GraphQLTypeResolvingPlan
JeffRMoore Feb 27, 2016
b7fcb3c
Merge GraphQLResolveInfo fields into GraphQLSelectionCompletionPlan
JeffRMoore Feb 27, 2016
7a921cd
Move plan type definitions to definitions.js
JeffRMoore Feb 27, 2016
fe82467
Use the plan instead of GraphQLResolveInfo as the parameter to resolv…
JeffRMoore Feb 27, 2016
20a693d
Change order of plan parameters
JeffRMoore Feb 27, 2016
f3ed20e
Simplify the parameter signature of resolveOrError
JeffRMoore Feb 27, 2016
1b61e5e
Add some messaging for unreachable conditions
JeffRMoore Feb 27, 2016
b408f08
Giving up on getting reduce past typeflow
JeffRMoore Feb 27, 2016
f23a827
Remove unnecessary typeflow boilerplate
JeffRMoore Feb 27, 2016
a540d1e
Recombine files so Pull request diff is not ridiculous
JeffRMoore Feb 27, 2016
2c18391
Re-consolidate plan.js into execute.js so that Pull request diffs are…
JeffRMoore Feb 27, 2016
d79a7ca
Distintions without difference: clean up diff
JeffRMoore Feb 27, 2016
802f50d
Clean up plans removing items I don't know how to handle
JeffRMoore Feb 27, 2016
067f1cd
Rename kind constants
JeffRMoore Feb 27, 2016
eba24dc
Rename innerCompletionPlan to completionPlan
JeffRMoore Feb 27, 2016
d8a84f8
Clean up plan naming
JeffRMoore Feb 27, 2016
b8aa771
Notes
JeffRMoore Feb 27, 2016
81302b8
Create NOTES.md
JeffRMoore Feb 27, 2016
344ae1e
Update NOTES.md
JeffRMoore Feb 27, 2016
224cce8
Update NOTES.md
JeffRMoore Feb 27, 2016
e10b2ec
Merge branch 'master' of https://github.com/JeffRMoore/graphql-js
JeffRMoore Feb 27, 2016
76be755
Update NOTES.md
JeffRMoore Feb 27, 2016
e4dad0f
Merge branch 'master' of https://github.com/JeffRMoore/graphql-js
JeffRMoore Mar 2, 2016
1b5e2bb
Factor out duplicate code, so that isTypeOf will only receive one typ…
JeffRMoore Mar 2, 2016
fa2becb
Fix spacing
JeffRMoore Mar 2, 2016
b87c2bc
Move getObjectType logic from definitions to execution, setting up is…
JeffRMoore Mar 3, 2016
9b766d6
For each of the three resolving functions, we are now able to specify…
JeffRMoore Mar 3, 2016
43c0c27
Add returnType back to GraphQLCoercionPlan
JeffRMoore Mar 3, 2016
5a71e1d
Update comments with evaluate terminology
JeffRMoore Mar 3, 2016
d94c4cd
Clean up invariant messages
JeffRMoore Mar 3, 2016
c7a6296
Remove NOTES.md file
JeffRMoore Mar 3, 2016
6877224
Change the order of Plan type declarations to match documentation and…
JeffRMoore Mar 3, 2016
95e33b3
Rename generic key portion of type to more explainatory alias or type…
JeffRMoore Mar 3, 2016
3d9fa60
Introduce term alias instead of generic key for more descriptive typing
JeffRMoore Mar 3, 2016
1b75c3a
Remove resolveFn and store fieldDefinition instead which is more usef…
JeffRMoore Mar 3, 2016
53a6e15
Incorrectly restored method signature
JeffRMoore Mar 3, 2016
7949a59
Add precomputed fieldList property to selection plans, making the sim…
JeffRMoore Mar 3, 2016
65c774e
Rename completionPlan to elementPlan for GraphQLMappingPlan to avoid …
JeffRMoore Mar 3, 2016
0efee5b
Rename type to returnType for documentation consistency
JeffRMoore Mar 3, 2016
73321f2
Differences without distinction: restore original order of operation …
JeffRMoore Mar 4, 2016
f8fd245
Move GraphQLOperationPlan to execute.js since it is not exposed publicly
JeffRMoore Mar 4, 2016
6b6ecb8
Rename strategy to concurrencyStrategy
JeffRMoore Mar 4, 2016
9feb9f3
Add an invariant in case types are setup incorrectly
JeffRMoore Mar 4, 2016
dfd4259
Rename fieldPlans to fieldPlansByAlias and fieldList to fieldPlans
JeffRMoore Mar 4, 2016
675feec
forgot to change the type of the fieldPlans array
JeffRMoore Mar 4, 2016
f97def5
Rename plan traversal fields to form a more fluent interface: complet…
JeffRMoore Mar 4, 2016
368d718
Extract serialization to its own function
JeffRMoore Mar 5, 2016
7236448
Introduce evaluateSelectionPlan method and add isTypeOfFn to Selectio…
JeffRMoore Mar 5, 2016
79973f6
extract evaluateCoercionPlan function
JeffRMoore Mar 5, 2016
eb225cf
Extract evaluateMappingPlan function
JeffRMoore Mar 5, 2016
f4ada13
Break up planCompleteValue, fix ordering of completion operations to …
JeffRMoore Mar 6, 2016
de7116a
Remove unnecessary invariant tests
JeffRMoore Mar 6, 2016
ea5bfae
remove isTypeOfX functions; failed experiment
JeffRMoore Mar 6, 2016
4d35d7c
Fix conflict in execute.js merging upstream commits
JeffRMoore Mar 12, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading