Skip to content

Latest commit

 

History

History
318 lines (214 loc) · 15.3 KB

CHANGELOG.md

File metadata and controls

318 lines (214 loc) · 15.3 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Added

  • Added support to infer if a field or enum value is deprecated. #826
  • Added prisma filter types. #861

Changed

  • Subscription now uses pipeline API to abstract sockets. #807
  • Improved parser performance. #806
  • Roles collection on authorization directive is now interpreted as OR.

Fixed

  • The parent method on the resolver context now uses the converters if the source object type does not align with the requested type.

[9.0.4] - 2019-06-16

Fixed

  • Fixed paging flaws that in some cases lead to the connection type being registered twice. #842

[9.0.3] - 2019-06-13

Fixed

  • Fixed issues where the type initializer would swallow schema errors.

[9.0.2] - 2019-06-12

Fixed

  • Fixed issues with list input types.

[9.0.1] - 2019-06-09

Changed

  • Better error message when failing TypeConvertion enhancement #819

Fixed

  • Fixed list argument conversion issue. #823

[9.0.0] - 2019-06-04

Added

  • Added new SchemaBuilder. #369
  • Added code-first type extensions. #683
  • Added support for schema description. spec
  • Added resolver overloads to schema builder.
  • Added new UTF-8 parser
  • Added support for schema directives. spec
  • Added two phase argument coercion.
  • Added two phase field collection.
  • Added GraphQL attributes support on parameters. 726
  • Added support for directives on variable definitions spec
  • Added support for directives on enum values spec
  • Added support for directives on arguments spec
  • Added support for XML documentation 715
  • Added access to stitched http response headers (e.g. Set-Cookie) 679
  • Added helper to add delegation paths to a field.
  • It is now possible to bind .net types explicitly to schema types with SchemaBuilder.New().BindClrType<ClrType, SchemaType>(). 756
  • Added support for schema-first bindings on the SchemaBuilder API. 781

Changed

  • Replaced roslyn compiler with the expression compiler. This will reduce the memory footprint of the server.
  • Changed how the server caches queries.
  • DiagnosticNames is now public.
  • Reworked how input object arguments are cached #805

Removed

  • Removed obsolete QueryDocument from IResolverContext.
  • Removed obsolete CancellationToken from IResolverContext

Fixed

  • Includes directive definitions in serialized schema #717
  • Field types are now validated. #713
  • Variables in object values and lists are now correctly recognised #215 and #745.
  • Fixed issue with input type arguments on the stitching layer
  • Delegate Directive not being assigned correctly with ITypeRewriter. #766
  • Format Exception when registering types. #787
  • The schema factory does not throw an exception if an annotated directive is not correct. #619
  • Temprarily fixed issues with type system directives. We will add a final patch with the next release.
  • Fixed issues with external resolver overwrites.
  • Fixed authorization directive validation issues #804
  • Fixed schema initialization issues
  • Fixed paging extension overloads #811
  • Fixed null reference exception in Path.Equals #802

0.8.2 - 2019-04-10

Fixed

  • Some scalars did not work in stitched schemas and lead to a serialization exception.
  • IntValueNode IValueNode.Equals was not implemented correctly and lead always to false. #681

0.8.1 - 2019-03-29

Added

  • Added operation start/stop event.
  • Added error filter support for schema stitching.

Changed

  • Default complexity calculation functions are now public.
  • Diagnostic observers can now be defined as schema services.
  • auto-stitching diagnostic call is now implemented in two phases.

Fixed

  • Custom diagnostic observer registration issue #629.
  • Authorization argument coercion is now fixed. #624
  • The request path is now compared correctly.
  • IErrorFilter is not given the exception unless IncludeExceptionDetails is enabled. #637
  • Parse and validation event tracked wrong duration.
  • Schema-First descriptions are now correctly included into the schema. #647
  • __type argument was named type instead of name. spec
  • The server template is now working again. #657
  • Non-nullable types are now validated when query uses variables. #651
  • Variable handling im middleware does not convert the DateTime value anymore. #664
  • Directives are now correctly merged when declared in an extension file. #665
  • Subscription is now optional in the 2-phase introspection call #668

0.8.0 - 2019-03-03

Added

  • The stitching layer now batches requests to the remote schemas.
  • Introspection schema serializer.
  • Introduced auto-stitching capabilities with the new StitchingBuilder.
  • GraphQL Voyager. Special thanks to @drowhunter who contributed the middleware.

Changed

  • The authoization directive is now more aligned how the authorize attribute in ASP.net works.

Fixed

0.7.0 - 2019-02-03

Added

  • Query Middleware #338.
  • Field Middleware #338.
  • Implemented the relay cursor connections specification.
  • Added another ReportError overload to IResolverContext that takes IError #359.
  • Added a schema endpoint that will let you download the server schema file #370.
  • Added SyntaxRewriter and SyntaxWalker classes to enable developers to extend the execution pipeline more easily.
  • Introduced a new execution builder which allows to fully customize the execution pipeline.
  • Introduced exception filter #317.
  • Integrated RequestTimeoutMiddleware into default pipeline #418.
  • Added support for repeatable directive. Spec.
  • Apollo Tracing Support #352.
  • Query complexity validation rules #80
  • Added support for relay global object identification specification specification.
  • Added Source Code Link for NuGet support.
  • Added support for a executor scoped field middleware #482.
  • Added schema stitching capabilities #341.
  • Added generic interface type #546.
  • Added directives support for input objects #548.
  • Added optional totalCount field to the connection type #558.
  • Added support for dynamic generated schema types #558.
  • Added generic union type #552.
  • Added options to AddStitchedSchema #556.
  • Added scoped context data to the resolver context #537.

Changed

  • Merged ASP.NET core and classic codebases #349.
  • Made the type conversion API extendable and added more default type converter #384.
  • Separated the schema config from the execution config #324
  • Changed how max query depth is validated and configured.
  • The DataLoader API is now offering a simpler interface.
  • Extended Scalar Types must now be explicitly registered during schema configuration. #433
  • Authorization directive is now repeatable and can use the default authorization policy #485
  • UsePaging can now be used without specifying the clr type #558.
  • The edge node type can now be any output type including list #558.

Fixed

  • Field merging of node fields did not work properly.
  • DateTime is now parsed independent of the current culture #547.

Deprecated

  • The Schema.Execute... extension methods are depricated and will be removed with the next version.

Removed

  • Execution options from the schema options. They can now be configured with the QueryExecutionBuilder.

0.6.11 - 2018-12-06

Added

  • GraphQL Playground #353. Special thanks to @akaSybe who contributed the playground middleware.

Changed

  • Improve IObjectTypeDescriptor interface #390.

0.6.10 - 2018-12-05

Added

  • Non-generic dataloader configration extensions.

0.6.9 - 2018-11-30

Added

  • Non-generic method to register a dataloader.

0.6.8 - 2018-11-29

Added

  • Non-generic register methods to schema configuration.

Fixed

  • Ignore on InputObjectType fields didn't work properly.

0.6.7 - 2018-11-25

Fixed

  • Non-nullable arguments are being inferred as nullable bug #360.

0.6.6 - 2018-11-23

Fixed

  • Middleware bug that prevented the result to be passed along the pipeline.

0.6.5 - 2018-11-20

Added

  • Support for GraphQLNonNullAttribute.
  • Support for Include on object type to merge a resolver type into the object type.
  • Support for GraphQLResolverAttribute and GraphQLResolverForAttribute.

0.6.4 - 2018-11-20

Fixed

  • The type discoverer ignored a type if it was already discovered in another context #350.

0.6.3 - 2018-11-19

Fixed

  • Validation issues with NameString.

0.6.2 - 2018-11-19

Fixed

  • Fixed: byte[] cannot be defined as a custom scalar #345.

0.6.1 - 2018-11-15

Changed

  • DateTimeType now serializes UTC DateTime to yyyy-MM-ddTHH\:mm\:ss.fffZ.

Fixed

  • List Variable Coercion Failed.
  • InputTypes are now discovered correctly.

0.6.0 - 2018-11-12

Added

  • Separate package providing a GraphiQL middleware. The middleware can serve all of GraphiQL without needing to refer to CDNs making it useful even in closed networks. Moreover, we have configured GraphiQL to work with the GraphQL-ws protocol which is supported by Hot Chocolate.
  • Initial Support for GraphQL subscriptions. We currently support the GraphQL-ws protocol over web sockets. There will be a lot of additional work in version 0.7.0 that will harden it.
  • Authorization package for ASP.net core which supports policy-base authorization on fields.
  • Diagnostic source which can be used to track field execution times and other events.
  • Implementing a directive middleware has now become much easier with this release. We have built the authorize-directive with these new APIs.