Skip to content

Releases: spring-projects/spring-graphql

v1.1.2

21 Feb 11:06
Compare
Choose a tag to compare

⭐ New Features

  • Allow configuring ExecutionInput in ExecutionGraphQlServiceTester #615
  • ContextDataFetcherDecorator ignores subscriptions when "subscription" type is renamed #590
  • Support @Validated on method parameter #571

🪲 Bug Fixes

  • Observation instrumentation incorrectly manages parent observations #611

📔 Documentation

  • Improve discoverability of starter documentation by adding a dedicate Boot Starter section in the reference #598
  • Document Micrometer Observability support #595
  • Update reference documentation with a link to "GraphQL Server" Getting Started Guide #551

🔨 Dependency Upgrades

  • Upgrade to Context Propagation 1.0.2 #613
  • Upgrade to Micrometer 1.10.4 #612
  • Upgrade to Micrometer Tracing 1.0.2 #614
  • Upgrade to Reactor 2022.0.3 #616
  • Upgrade to Spring Data 2022.0.2 #617

v1.1.1

20 Dec 10:25
Compare
Choose a tag to compare

⭐ New Features

  • Displaying the number of loaded schema files on boot #566
  • Adapt to official media type changes in GraphQL over HTTP spec #563
  • Introduce DataFetcher builder customizers for Querydsl and Query by Example repositories #559
  • Relax generic type checks when @Argument binding to a map with an undeclared value type #554
  • Allow custom ExecutionStrategy to use DataFetcherExceptionResolver chain #552
  • Refine ProjectedPayload argument handling for an optional input argument #550

🪲 Bug Fixes

  • GraphQlClient query documents and test documents are missing from native image #575
  • RSocket client fails in native when using the WebSocket transport #574
  • @ContextValue resolver cannot determine method parameter name on @BatchMapping methods #562
  • Native websocket applications fail on GraphQlWebSocketMessage reflection #560
  • Align observation convention with Micrometer best practices #558
  • ArgumentValue incorrectly returns false from isOmitted() for an omitted argument #553
  • Tracing support fails with NullPointerException when propagation information is missing #547

📔 Documentation

  • Document GraalVM Native support in reference documentation #581
  • Use ClientResponseField instead of ResponseField in documentation samples #573

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.10.2 #556
  • Upgrade to Reactor 2022.0.1 #586
  • Upgrade to Spring Framework 6.0.3 #555
  • Upgrade to Spring Security 6.0.1 #587

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v1.1.0

22 Nov 13:02
Compare
Choose a tag to compare

⭐ New Features

  • Improve support for GraphQLSchema transformation #536
  • Refine null handling for toEntity and toEntityList in ClientResponseField #525
  • Support default DataLoaderOptions in DefaultBatchLoaderRegistry #522
  • Add maxBatchSize attribute to @BatchMapping #520
  • Support checks if GraphQL argument was set to null or omitted entirely #518
  • Replace use of DataBinder for binding GraphQL arguments #516
  • Ahead Of Time support #495
  • Cannot use Set as property in GraphQL argument input object #394
  • Cannot use GraphQL argument object whose generic type is declared on @SchemaMapping method #349

🔨 Dependency Upgrades

  • Upgrade to Context Propagation 1.0.0 #542
  • Upgrade to Micrometer 1.10.1 #539
  • Upgrade to Reactor 2022.0.0 #538
  • Upgrade to Spring Data 2022.0.0 #540
  • Upgrade to Spring Framework 6.0.0 #543
  • Upgrade to Spring Security 6.0.0 #541

v1.0.3

22 Nov 11:09
Compare
Choose a tag to compare

⭐ New Features

  • Add actual elements to message of containsAll #507
  • Wrapping a projected payload in optional returns IllegalStateException #506
  • Adds the option to use a pre configured RSocketRequester #498
  • @Argument doesn't support Map as a target type at any level #449

🪲 Bug Fixes

  • GraphQlClient#retrieve does not raise FieldAccessException for failures at a path nested below the target field #499

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v1.1.0-RC1

18 Oct 16:14
Compare
Choose a tag to compare
v1.1.0-RC1 Pre-release
Pre-release

⭐ New Features

  • Move Micrometer instrumentation to this project #501

🔨 Dependency Upgrades

  • Upgrade to Context Propagation 1.0.0-RC1 #505
  • Upgrade to Micrometer 1.10.0-RC1 #513
  • Upgrade to Reactor 2022.0.0-RC1 #512
  • Upgrade to Spring Data 2022.0.0-RC1 #514
  • Upgrade to Spring Framework 6.0.0-RC1 #510
  • Upgrade to Spring Security 6.0.0-RC1 #515

v1.1.0-M1

20 Sep 13:48
Compare
Choose a tag to compare
v1.1.0-M1 Pre-release
Pre-release

⭐ New Features

  • Integrate with the Micrometer Context Propagation library #459
  • Upgrade to GraphQL Java 19.2 #444
  • Upgrade baseline to Java 17 and Jakarta APIs #426

🪲 Bug Fixes

  • Make the context propagation dependency mandatory #482

🔨 Dependency Upgrades

  • Upgrade to Micrometer context-propagation 1.0 M5 #477

v1.0.2

20 Sep 13:26
Compare
Choose a tag to compare

⭐ New Features

  • Support @Arguments with Map #493
  • Fix NPE when GraphQL argument is a list with a null element #486
  • Support controller method parameter annotations on an interface #480
  • Controller's with CompletableFuture return bad error messages or no error at all #479
  • Support path variables for redirect to GraphiQL path #478
  • Allow custom scalar, parsed to different types, to bind onto java.lang.Object #447
  • Introspect controller methods on startup to determine if they need validation #445
  • Do not ignore a DataFetcher with a DataFetcherFactories wrapper #440

🪲 Bug Fixes

  • Target collection type is not used in argument binding #485
  • Java classes with Optional constructor args for GraphQL input types fail with InaccessibleObjectException #470

📔 Documentation

  • Improve reference docs on how to find schema files acorss multiple modules #489
  • Document how to customize global, request validation errors that prevent execution #487

🔨 Dependency Upgrades

  • Upgrade to GraphQL Java 18.3 #456

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v1.0.1

20 Jul 15:29
Compare
Choose a tag to compare

⭐ New Features

  • Improve handling of case where a source/parent is expected and is null #429
  • Support for resolving exceptions from a subscription #398
  • DataBinder using default auto grow collection limit #392

🪲 Bug Fixes

  • Auto-registration of @GraphQlRepository does not work for output type defined as non-null #418
  • @Argument resolver fails when type coercion from a single value to SingletonList is involved #410
  • The GraphQL UI cannot be opened if a spring.mvc.servlet.path is configured #402

📔 Documentation

  • Fix links to Boot "Web Endpoints" section and mention WebSocket endpoint not enabled by default #436
  • Update Javadoc of retrieve in GraphQlClient for decoding full data #434
  • Update documentation to show setting response headers with value from @SchemaMapping method #428

🔨 Dependency Upgrades

  • Upgrade to GraphQL Java 18.2 #446

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v1.0.0

18 May 14:35
Compare
Choose a tag to compare

⭐ New Features

  • Improve handling of concurrent requests in WebSocketGraphQlClient #388
  • Add start and stop methods to RSocketGraphQlClient #378
  • Adjust support for "application/graphql" media type so it is used only if explicitly requested #375
  • Expose map of "extensions" in GraphQlRequest #371
  • Support String and Number to be injected as the parent/source #370
  • Improve readability of assertion messages #361
  • HttpGraphQlClientTransport should respect an existing, explicitly set Content-Type #359
  • Add @LocalContextValue for access to attributes from the local GraphQLContext in DataFetchingEnvironment #353
  • Support Callable as a return value from controller methods for asynchronous execution #316
  • Add shouldPersistHeaders = true to GraphiQL options #257

🪲 Bug Fixes

  • @ContextValue does not work for Mono argument #355
  • FieldAccessException should include field as well as global errors in its message #348

📔 Documentation

  • Provide advice on number of instances and connections for WebSocketGraphQlClient and RSocketGraphQlClient #368
  • Slightly incorrect documentation about BatchMapping return values #360
  • Fix docs for WebGraphQlTester #358
  • Update minimum requirement to GraphQL Java 18.0 #357

❤️ Contributors

We'd like to thank all the contributors who worked on this release!

v1.0.0-RC1

19 Apr 16:36
Compare
Choose a tag to compare
v1.0.0-RC1 Pre-release
Pre-release

⭐ New Features

  • Do not include exception message for unresolved exceptions #352
  • GraphQlTester created via @GraphQlTest should use application JSON config #345
  • Support RSocket as a transport #339
  • Improve configuration and defaults for document location #338
  • Improve Exception Logging in ExceptionResolversExceptionHandler #336
  • Refactor GraphQlSource builder to separate programmatic vs SDL way of create GraphQLSchema #312
  • Support for application/graphql content type #108

🪲 Bug Fixes

  • Principal is null when executing requests over WebSocket with Spring MVC #342

📔 Documentation

  • Improve documentation samples on access to HTTP headers from controller #350

❤️ Contributors

We'd like to thank all the contributors who worked on this release!