⭐ New Features
- Add client-side interception on GraphQlClient #332
- Revisit GraphQlTester to align with GraphQlClient #317
- Further alignment with GraphQL spec terminology #310
- Provide details when schema resource is invalid #307
- Bind zero-length nested input argument to a zero-length List instead of null #301
- Apply a multiple values argument to the same property in Querydsl #281
- Raise BindException from GraphQlArgumentBinder with binding errors #280
- Revise JSONPath options in GraphQlTester #278
- Improve server handling of WebSocket connection closing and subscription completion #276
- Add support for
@AuthenticationPrincipal
annotated method parameter #272 - Improve options to customize of ConversionService used for GraphQL argument binding #271
- Support for GraphQL over WebSocket
Ping
andPong
message types #270 - Allow binding full arguments map onto an object #258
- Check for and eliminate duplicate schema resource registrations #230
- Add a GraphQLClient #10
🪲 Bug Fixes
- "non-public interface is not defined by the given loader " when using input Projections for Mutations #333
- Fix implementation of
containsExactly
#327 - GraphQlWebSocketHandler incorrectly turns ExecutionResult with errors into an "error" message #320
- GraphQlTester.executeAndVerify should not check for empty errors map #318
- ArgumentMethodArgumentResolver and QueryByExampleDataFetcher are not thread safe #315
- QuerydslDataFetcher: ClassCastException when using a variable with type other than String #311
- Shortcut annotations
@QueryMapping
,@MutationMapping
, and@SubscriptionMapping
should target ElementType.METHOD only #290 @Valid
arguments and aPrincipal
argument cannot both be declared on the same method #289- Incorrect arguments to Assert.isInstanceOf in AnnotatedControllerConfigurer #282
📔 Documentation
- Document custom type resolution strategies #334
- Document why Jackson annotations on types are not used for JSON serialization #321
- Update documentation with guidance on the use of aggregates and projections with Spring Data #264
- Add section on directives to reference documentation #262
- Improve guidance on use of projections with Querydsl and Query By Example #248
- Add section on operation caching to reference documentation #233
❤️ Contributors
We'd like to thank all the contributors who worked on this release!