-
0.7.0.0 Stable
released this
2020-05-11 12:34:48 +02:00 | 221 commits to master since this releaseFixed
- Result of null encoding
- Block strings encoding
- Result of tab and newline encoding
Added
- AST for the GraphQL schema.
- Type system definition parser.
Trans.argument.- Schema extension parser.
- Contributing guidelines.
Schema.resolversToMap(intended to be used internally).
Changed
- Rename
AST.DefinitionintoAST.Document.ExecutableDefinition.
AST.Document.TypeSystemDefinitionandAST.Document.TypeSystemExtension
can also be definitions. - Move all AST data to
AST.Documentand reexport them. - Rename
AST.OperationSelectionSettoAST.Document.SelectionSet. - Make
Schema.SubsaData.HashMap.Strict(was a function
key -> Maybe valuebefore). - Make
AST.Lexer.ata text (symbol) parser. It was a char before and is
symbol "@"now. - Replace
MonadIOwith a plainMonad. Since the tests don't use IO,
set the inner monad toIdentity. NonEmpty (Resolver m)is nowHashMap Text (NonEmpty (Resolver m)). Root
operation type can be any type, therefore a hashmap is needed. Since types
cannot be empty, we save the list of resolvers in the type as a non-empty
list. Currently only "Query" and "Mutation" are supported as types. For more
schema support is required. The executor checks now if the type in the query
matches the type of the provided root resolvers.
Removed
AST.Field,AST.InlineFragmentandAST.FragmentSpread.
These types are only used inAST.SelectionandAST.Selectioncontains now
3 corresponding data constructors,Field,InlineFragmentand
FragmentSpread, instead of separate types. It simplifies pattern matching
and doesn't make the code less typesafe.Schema.scalarA.Schema.wrappedScalarA.Schema.wrappedObjectA.Schema.objectA.AST.Argument. Replaced withAST.Argumentswhich holds all arguments as a
key/value map.
Downloads