summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-09-22Don't append a trailing newline in gqlEugen Wissner
2021-09-21Add TH module with gql quasi quoterEugen Wissner
2021-09-05Deprecate unused functions from the old executorEugen Wissner
2021-09-04Remove unused (and not exposed) Execute.InternalEugen Wissner
2021-09-04Add CHANGELOG entries for the new executorEugen Wissner
2021-09-03Replace the old executorEugen Wissner
2021-09-02Handle argument locationsEugen Wissner
2021-09-01Adjust value completion testsEugen Wissner
2021-08-31Show the value and expected type in value completion errorsEugen Wissner
2021-08-31Copy subscription codeEugen Wissner
2021-08-31Handle errorsEugen Wissner
2021-08-31Use sequences of selectionsEugen Wissner
2021-08-31Collect fieldsEugen Wissner
2021-08-31Skip recursive fragments and marked fieldsEugen Wissner
2021-08-31Inline fragment spreadsEugen Wissner
2021-08-31Use directives from the Type moduleEugen Wissner
2021-08-31Pass variables when generating the IREugen Wissner
2021-08-31Stub selection executionEugen Wissner
2021-08-31Rewrite the executor treeEugen Wissner
2021-08-31Provide error information for variable definitionsEugen Wissner
2021-08-31Stub request executionEugen Wissner
2021-08-31Handle query errors on invalid operationsEugen Wissner
2021-08-31Add new executor moduleEugen Wissner
2021-08-31Provide a custom Show instance for output ValueEugen Wissner
2021-07-02Report subscription error locationsEugen Wissner
2021-06-27Attach the field location to resolver exceptionsEugen Wissner
2021-06-24Fail with a location for result coercionEugen Wissner
The intermediate representation was further modified so that the operation definitions contain location information. Probably I should introduce a data type that generalizes fields and operations, so it contains object type, location and the selection set, so the functions don't accept so many arguments.
2021-06-22Provide locations for argument errorsEugen Wissner
The executor still doesn't give an error per argument, but a single error per field with locations for all arguments. If a non-null argument isn't specified, only the error location of the field is given. If some arguments cannot be coerced, only the locations of these arguments are given, non-null arguments are ignored. This should still be improved, so the executor returns all errors at once. The transformation tree is changed, so that argument map contains locations of the arguments (but not the locations of the argument values yet).
2021-06-18Fix merging fields with argumentsEugen Wissner
executeField shouldn't assume that a selection has only one field with a given name, but it should take the first field. The underlying cause is a wrong pattern, which (because of the laziness) is executed only if the field has arguments.
2021-06-17Provide location information for interface errorsEugen Wissner
2021-05-13Add constructor with additional schema typesEugen Wissner
2021-05-12Add location information to the intermediate treeEugen Wissner
2021-05-11Remove unused QueryError.TransformationErrorEugen Wissner
2021-05-10Deprecate internal error generation functionsEugen Wissner
The functions generating errors in the executor should be changed anyway when we provide better error messages from the executor, with the error location and response path. So public definitions of these functions are deprecated now and they are replaced by more generic functions in the executor code.
2021-05-09Provide an internal function to add errorsEugen Wissner
The old function, addErrMsg, takes only a string with an error description, but more information is required for the execution errors: locations and path. addErrMsg should be deprecated after the switching to the new addError.
2021-05-06Validate non-nullable values inside listsEugen Wissner
2021-04-14Remove unused OverloadedStrings pragmasEugen Wissner
2021-04-12Traverse input object properties onceEugen Wissner
2021-03-16Emit list item errors onceEugen Wissner
2021-03-14Add location information to list valuesEugen Wissner
2021-02-21Fix some issues with directive definitionsBen Sinclair
I found some issues with directive definitions: - I couldn't use `on FIELD_DEFINITION`, I believe because `FIELD` was parsed first in `executableDirectiveLocation`. I've combined both `executableDirectiveLocation` and `typetypeSystemDirectiveLocation` into one function which can reorder them to ensure every directive location gets a fair chance at parsing. Not actually to do with directives, some literals weren't being parsed correctly. - The GraphQL spec defines list to be `[]` or `[Value]`, but empty literal lists weren't being parsed correctly because of using `some` instead of `many`. - The GraphQL spec defines objects to be `{}` or `{Name: Value}`, but empty literal objects had the same issue.
2021-02-19Replace Map with OrderedMapEugen Wissner
2021-02-15traverseMaybe OrderedMapEugen Wissner
2021-02-14Combine value inserted into the OrderedMapEugen Wissner
2021-02-13Add OrderedMap prototypeEugen Wissner
2021-02-11Document AST.Document.escapeEugen Wissner
2021-02-04Provide custom Show instances for AST valuesEugen Wissner
2021-02-03Validate valuesEugen Wissner
2021-02-02Update stack snapshot to 17.x.Eugen Wissner
2021-01-22Validate variable usage is allowed in objectsEugen Wissner