morpheus-graphql v0.12.0 Release Notes
Release Date: 2020-05-21 // almost 4 years ago-
morpheus-graphql
๐ฅ Breaking Changes
๐ฆ Package was extracted as:
๐
morpheus-graphql-core
: core components like: parser, validator, executor, utils.- Data.Morpheus.Core
- Data.Morpheus.QuasiQuoter
- Data.Morpheus.Error
- Data.Morpheus.Internal.TH
- Data.Morpheus.Internal.Utils
- Data.Morpheus.Types.Internal.Resolving
- Data.Morpheus.Types.Internal.Operation
- Data.Morpheus.Types.Internal.AST
- Data.Morpheus.Types.IO
morpheus-graphql-client
: lightweight version of morpheus client without server implementation- Data.Morpheus.Client
morpheus-graphql
: morpheus graphql server- Data.Morpheus
- Data.Morpheus.Kind
- Data.Morpheus.Types
- Data.Morpheus.Server
- Data.Morpheus.Document
๐ deprecated:
Res
,IORes
,ResolveQ
: useResolverQ
MutRes
,IOMutRes
,ResolveM
: useResolverM
SubRes
,IOSubRes
,ResolveS
: useResolverS
failRes
: useMonadFail
๐ New Feature
๐
Semigroup
support for Resolver๐
MonadFail
Support for Resolverflexible resolvers:
ResolverO
,ResolverQ
,RwsolverM
,ResolverS
they can handle object and scalar types:-- if we have record and regular Intdata Object m = Object { field :: m Int }-- we canwrite-- handes kind : (\* -\> \*) -\> \*resolveObject :: ResolverO o EVENT IO Object-- is alias to: Resolver o () IO (Object (Resolver o () IO))-- or-- handes kind : \*resolveInt :: ResolverO o EVENT IO Int-- is alias to: Resolver o () IO Int
the resolvers :
ResolverQ
,RwsolverM
,ResolverS
, are like
ResolverO
but withQUERY
,MUTATION
andSUBSCRIPTION
as argument.flexible compsed Resolver Type alias:
ComposedResolver
. extendsResolverO
with
parameter(f :: * -> *)
. so that you can compose Resolvers e.g:resolveList :: ComposedResolver o EVENT IO [] Object-- is alias to: Resolver o () IO [Object (Resolver o () IO))]resolveList :: ComposedResolver o EVENT IO Maybe Int-- is alias to: Resolver o () IO (Maybe Int)
๐ server supports interfaces (see Readme):
- define interface with Haskell Types (runtime validation):
2. define interface with
importGQLDocument
andDSL
(compile time validation):๐ support default directives:
@skip
and@include
SelectionTree interface
minor
- ๐ fixed subscription sessions, srarting new session does not affects old ones.
- โ added tests for subscriptions
morpheus-graphql-core
0.12.0 - 21.05.2020
๐ New features
๐ parser supports implemnets interfaces seperated with empty spaces
type T implements A , B C & D {
introspection can render interfaces