Skip to content

2.0.0

Latest
Compare
Choose a tag to compare
@xperiandri xperiandri released this 26 Mar 22:17
· 66 commits to dev since this release

Key highlights:

  • Major error handling support improvements;
  • ASP.NET and Giraffe plug-and-play support;
  • WebSocket support (implementing the graphql-transport-ws subprotocol)
  • .NET 6 and 7 support

Major changes

  • Added IGQLError and IGQLErrorExtensions interfaces. So that you can extend errors with extensions
  • Resolver now returns either Result<'T, IGQLError> or Result<'T, IGQLError list>
  • FSharp.SystemTextJson is used by default
  • Executor now accepts ImmutableDictionary<string, JsonElement> as variables list
  • Input objects are now deserialized into any record or class automatically and down the hierarchy. If an error happens it provides path to it within an input object
  • ValueOption fields on input objects are now supported
  • Each error now has a ErrorKind
  • SchemaConfig.ParseError now provides a path of the error
  • ASP.NET Core DI integration added
  • Options can be set using GraphQLOptions<'Root>
  • WebSocket support with graphql-transport-ws subprotocol (see the readme for usage)

Lots of appreciation to @valbers for extremely valuable contributions