| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-09-05 | Deprecate unused functions from the old executor | Eugen Wissner | |
| 2021-09-03 | Replace the old executor | Eugen Wissner | |
| 2021-06-24 | Fail with a location for result coercion | Eugen 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-22 | Provide locations for argument errors | Eugen 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-05-12 | Add location information to the intermediate tree | Eugen Wissner | |
| 2021-05-11 | Remove unused QueryError.TransformationError | Eugen Wissner | |
| 2021-03-14 | Add location information to list values | Eugen Wissner | |
| 2020-10-07 | Collect types once the schema is created | Eugen Wissner | |
| 2020-10-05 | Validate required input fields | Eugen Wissner | |
| 2020-09-30 | Validate input object field names | Eugen Wissner | |
| 2020-09-28 | Validate arguments are defined | Eugen Wissner | |
| 2020-09-24 | Validate input fields have unique names | Eugen Wissner | |
| 2020-09-21 | Validate all variables are defined | Eugen Wissner | |
| 2020-09-20 | Validate fragments are input types | Eugen Wissner | |
| 2020-09-19 | Validate variable names are unique | Eugen Wissner | |
| 2020-09-18 | Validate directives are unique per location | Eugen Wissner | |
| 2020-09-15 | Use Seq as base monad in the validator | Eugen Wissner | |
| It is more natural to implement the logic: try to apply each rule to each node. | |||
| 2020-09-09 | Validate all fragments are used | Eugen Wissner | |
| 2020-09-07 | Validate fragments on composite types | Eugen Wissner | |
| 2020-09-05 | Validate fragment spread type existence | Eugen Wissner | |
| 2020-08-31 | Validate fragment spread target existence | Eugen Wissner | |
| 2020-08-25 | Validate single root field in subscriptions | Eugen Wissner | |
| 2020-07-20 | Draft the Validation API | Eugen Wissner | |
| 2020-07-15 | Respect subscriptions in the executor | Eugen Wissner | |
| After the last commit there were a few places needed to be adjusted to support subscriptions. This is done and a test case is added. It is important to implement subscriptions now, because they require changes to the library API, and they are a big missing part to finish the executor. When the executor is finished, we can start to provide more stable API without breaking everything every release. Validation and introspection shouldn't require much changes to the API; AST would require some changes to report good errors after the validation - this is one thing I can think of. Fixes #5. | |||
| 2020-07-11 | Parse subscriptions | Eugen Wissner | |
| 2020-07-06 | Export sum type for all GraphQL types | Eugen Wissner | |
| 2020-06-30 | Move Core module out of AST | Eugen Wissner | |
| 2020-06-13 | Coerce result | Eugen Wissner | |
| Fixes #45. | |||
| 2020-06-07 | Add description to the enum type values | Eugen Wissner | |
| 2020-06-06 | Coerce argument values properly | Eugen Wissner | |
| Fixes #44. | |||
| 2020-05-29 | Define resolvers on type fields | Eugen Wissner | |
| Returning resolvers from other resolvers isn't supported anymore. Since we have a type system now, we define the resolvers in the object type fields and pass an object with the previous result to them. | |||
| 2020-05-26 | Add Union and Interface type definitions | Eugen Wissner | |
| 2020-05-25 | Split input/output types and values into 2 modules | Eugen Wissner | |
| 2020-05-24 | Check point | Eugen Wissner | |
| 2020-05-23 | Don't fail on invalid fragments and variables | Eugen Wissner | |
| 2020-05-22 | Reject variables as default values | Eugen Wissner | |
| 2020-05-21 | Coerce variable values | Eugen Wissner | |
| 2020-01-01 | Rewrite argument list to argument map | Eugen Wissner | |
| 2019-12-30 | Replace substitution function with a map | Eugen Wissner | |
| It makes using variables with queries more approachable, but some work still has to be done. - The type `Subs` should be renamed and moved out of `Schema`, together with `AST.Core.Value` probably. - Some kind of conversion should be possible from a user-defined input type T to the Value. So the final HashMap should have a type like `HashMap name a`, where a is an instance of a potential typeclass InputType. | |||
| 2019-12-28 | Move AST to AST.Document | Eugen Wissner | |
| 2019-12-26 | Add definition module | Eugen Wissner | |
| 2019-12-25 | Replace AST.Selection data constructors | Eugen Wissner | |
| 2019-12-18 | Move Execute.Directive to Type.Directive | Eugen Wissner | |
| Just to roughly follow the structure of the reference implementation. | |||
| 2019-12-07 | Move Transform to Language.GraphQL.Execute | Eugen Wissner | |
| Language.GraphQL.AST.Transform is an internal module. Even though it works with the AST, it is a part of the execution process, it translates the original parser tree into a simpler one, so the executor has less work to do. Language.GraphQL.AST should contain only the parser and be independent from other packages, so it can be used on its own. | |||
