216 Commits

Author SHA1 Message Date
belka 7ea76865e6 Validate the subscription root
Build / audit (push) Successful in 17s
Build / test (push) Successful in 6m33s
Build / doc (push) Successful in 5m45s
…not to be an introspection field.
2024-12-01 21:53:01 +01:00
belka 2dcefff76a Add test for introspection as subscription root
Build / audit (push) Successful in 18s
Build / test (push) Successful in 6m19s
Build / doc (push) Successful in 5m30s
Add a pending test checking that an introspection field cannot be
subscription root.
2024-11-10 22:23:54 +01:00
belka 27a5a0b44e Adjust wording according to the 2021 specification
Build / audit (push) Successful in 17s
Build / doc (push) Successful in 5m37s
Build / test (push) Successful in 6m33s
2024-11-07 18:18:12 +01:00
belka 97627ffc36 Parse interfaces implementing interfaces
Build / audit (push) Successful in 18s
Build / test (push) Successful in 6m30s
Build / doc (push) Successful in 5m36s
2024-11-05 19:44:45 +01:00
belka 6f7bb10a62 Remove deprecated gql quasi quoter 2024-11-05 19:39:16 +01:00
belka 67720f9ebe Replace gql with literals in the validation tests
Build / audit (push) Successful in 19s
Build / test (push) Successful in 6m2s
Build / doc (push) Successful in 5m4s
2024-10-18 21:00:48 +02:00
belka cdb2aa76b6 Fix block alignment in some parser tests
Build / audit (push) Successful in 18s
Build / test (push) Successful in 6m4s
Build / doc (push) Successful in 5m5s
2024-10-17 18:08:30 +02:00
belka b056b4256f Replace gql in Encoder tests with multiline string
Build / audit (push) Successful in 17s
Build / test (push) Successful in 6m16s
Build / doc (push) Successful in 5m16s
2024-10-14 20:50:34 +02:00
belka ba07f8298b Validate repeatable directives
Build / audit (push) Successful in 20s
Build / test (push) Successful in 6m7s
Build / doc (push) Successful in 5m5s
2024-10-13 19:40:12 +02:00
belka 1834e5c41e Add a test for empty field argument list
Build / audit (push) Successful in 17s
Build / test (push) Successful in 6m5s
Build / doc (push) Successful in 5m10s
... within parens.
2024-09-17 18:32:45 +02:00
belka 01b30a71da Test directive definition decoder
Build / test (push) Successful in 6m3s
Build / doc (push) Successful in 4m59s
Build / audit (push) Successful in 17s
2024-08-28 20:00:44 +02:00
belka b40d8a7e1e Parse repeatable directive definitions
Build / audit (push) Successful in 18s
Build / test (push) Successful in 6m3s
Build / doc (push) Successful in 4m58s
2024-08-27 10:51:01 +02:00
belka 9d85379826 Remove cariage return from the qq string
Build / audit (push) Successful in 16s
Build / test (push) Successful in 6m8s
Build / doc (push) Successful in 5m8s
2024-08-04 08:30:00 +02:00
belka 6b8346e527 Update hlint to 3.8
Build / audit (push) Successful in 13m37s
Build / test (push) Successful in 6m16s
Build / doc (push) Successful in 6m20s
2024-04-02 22:06:16 +02:00
belka 809f446ff1 Fix variable location in objects and lists
Build / audit (push) Successful in 15m35s
Build / test (push) Successful in 8m6s
Build / doc (push) Successful in 6m59s
2024-01-05 20:46:02 +01:00
belka b1b6bfcdb9 Add a test for the wrong variable location
Build / audit (push) Successful in 16m30s
Build / test (push) Successful in 8m26s
Build / doc (push) Successful in 7m6s
inside an input object for the role checking for unused and undefined
variables.
2023-12-28 09:45:39 +01:00
belka b1c5a568dd Add a failing test for unused variables bug
Build / audit (push) Successful in 15m27s
Build / test (push) Successful in 8m32s
Build / doc (push) Successful in 7m24s
2023-12-21 21:34:37 +01:00
belka a961b168db Add a test for the input object coercion issue 2023-11-08 20:08:47 +01:00
belka fdc43e4e25 Fix non nullable type representation
…in executor error messages.
2023-10-13 20:42:24 +02:00
belka 3b0da4f3d7 Fix resolvers returning a list in the reverse order 2023-02-24 17:14:43 +01:00
belka 9021f3a25d Encode input object types 2023-01-10 09:53:18 +01:00
belka 025331a9ee Encode enums 2023-01-09 20:56:21 +01:00
belka ab4808c44d Encode unions 2023-01-08 17:33:25 +01:00
belka 70dedb6911 Encode interfaces (2018) 2023-01-02 10:30:37 +01:00
belka a96d4e6ef3 Add Semigroup and Monoid instances for Description 2022-12-27 10:38:08 +01:00
belka 3ce6e7da46 Encode schema definitions 2022-12-25 16:38:00 +01:00
belka 2f9881bb21 Fix GHC 9.2 warnings and deprecations
- Fix GHC 9.2 warnings
- Convert comments to proper deprecations
2022-12-24 18:09:52 +01:00
belka bf2e4925b4 Add operation type encoder 2022-10-02 11:38:53 +02:00
belka 2321d1a1bc Eliminate non-exhaustive patterns in ExecuteSpec 2022-07-02 15:29:35 +02:00
belka 2f19093803 Change execute' to shouldResolveTo helper method 2022-07-01 12:18:02 +02:00
Dmitrii Skurikhin 8503c0f288 enhance query errors 2022-02-16 08:58:16 +01:00
Dmitrii Skurikhin 05e6aa4c95 add Arbitrary instances for AST.Document, add random arguments Parser test 2022-02-14 19:18:13 +01:00
Dmitrii Skurikhin 0c8edae90a fix empty list argument parsing 2022-01-09 09:00:56 +01:00
Dmitrii Skurikhin 1f7bd92d11 fix index position in error path 2022-01-07 08:31:47 +01:00
belka 116aa1f6bb Put JSON support behind a flag 2021-12-24 13:35:18 +01:00
belka 0047a13bc0 Move JSON tests to the upcoming extra package 2021-11-22 07:22:28 +01:00
belka fbfbb3e73f Remove raw-strings-qq 2021-09-23 08:23:38 +02:00
belka eedab9e742 Don't append a trailing newline in gql 2021-09-22 08:50:20 +02:00
belka 60d1167839 Test nullability on value completion 2021-09-17 10:01:14 +02:00
belka b96d75f447 Replace the old executor 2021-09-03 22:47:49 +02:00
belka 7b4c7e2b8c Handle argument locations 2021-09-02 08:45:23 +02:00
belka 233a58094d Adjust value completion tests 2021-09-01 09:27:12 +02:00
belka b580d1a988 Attach the field location to resolver exceptions 2021-06-27 13:42:58 +02:00
belka 96bb061666 Fail with a location for result coercion
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-24 09:29:24 +02:00
belka 812f6967d4 Provide locations for argument errors
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-22 09:13:27 +02:00
belka 6fe9eb72e4 Fix merging fields with arguments
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-18 06:51:14 +02:00
belka 2ce2be5d91 Provide location information for interface errors 2021-06-17 08:15:27 +02:00
belka c311cb0070 Add constructor with additional schema types 2021-05-13 17:40:38 +02:00
belka 1b7cd85216 Add location information to the intermediate tree 2021-05-12 06:51:59 +02:00
belka 1af95345d2 Deprecate internal error generation functions
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-10 09:43:39 +02:00