Skip to content

Releases: spring-projects/spring-graphql

v1.4.0-RC1

17 Apr 14:35
Compare
Choose a tag to compare
v1.4.0-RC1 Pre-release
Pre-release

⭐ New Features

  • Add batch loading information to SelfDescribingDataFetcher #1176
  • Reduce the number of memory allocations for empty argument values #1175
  • Add additional methods to interact with an ArgumentValue #1172
  • Support for both constructor and setter argument binding #1163
  • Prevent further invocation of data fetchers when GraphQL request is cancelled #1153
  • Make it easier to create a custom GraphQlSource #1086
  • Add DataLoader observability support #1034

📔 Documentation

  • Document use of DataFetcherResult for injecting values in local context #1167

🔨 Dependency Upgrades

  • Upgrade to GraphQL Java 23.1 #1169
  • Upgrade to Micrometer 1.15.0-RC1 #1180
  • Upgrade to Reactor 2024.0.5 #1179
  • Upgrade to Spring Framework 6.2.6 #1178

❤️ Contributors

Thank you to all the contributors who worked on this release:

@JBodkin-Amphora and @ngocnhan-tran1996

v1.3.5

17 Apr 14:17
Compare
Choose a tag to compare

⭐ New Features

  • GraphQL Subscriptions + graphql-java-extended-validation directives throws IllegalStateException rather than validation error #1143
  • GraphQlTester.Response should expose extensions #1131

🐞 Bug Fixes

  • Use correct logger name in QuerydslDataFetcher #1185
  • Allow non-nullable "edges" list type in GraphQL relay #1173
  • Cancellation signal is not propagated from transports to reactive controller methods #1149
  • HTTP request with invalid "Content-Type" header causes InvalidMimeTypeException and 500 response #1145
  • GraphQlTester does not pass extensions for subscriptions #1135

📔 Documentation

  • Documentation page about code generation is truncated #1188

🔨 Dependency Upgrades

  • Upgrade to Context Propagation 1.1.3 #1194
  • Upgrade to Micrometer 1.13.13 #1193
  • Upgrade to Reactor 2023.0.17 #1192
  • Upgrade to Spring Framework 6.1.19 #1191

❤️ Contributors

Thank you to all the contributors who worked on this release:

@JBodkin-Amphora and @pgrosslicht

v1.4.0-M1

18 Mar 13:13
Compare
Choose a tag to compare
v1.4.0-M1 Pre-release
Pre-release

⭐ New Features

  • Remove explicit checks in GraphQlHttpHandler if the Future is already completed #1152
  • Align transports with GraphQL over HTTP specification #1117
  • Introduce GraphQL response media type in spring-graphql #1110
  • SchemaMappingInspector field resolution should check public fields to match PropertyFetchingImpl #1101
  • Support DataLoader argument in @EntityMapping methods #1095
  • Detect and report federated entities not covered by any @EntityMapping method #1088
  • Support Keep-Alive for GraphQL Subscriptions over SSE with Spring WebFlux/WebMvc #1048
  • Provide a WebGraphQlInterceptor that supports HTTP timeouts #450

🔨 Dependency Upgrades

  • Upgrade to Apollo GraphQL Federation 5.3.0 #1161
  • Upgrade to Micrometer 1.15.0-M3 and Tracing 1.5.0-M3 #1158
  • Upgrade to Netflix GraphQL CodeGen 7.0.3 #1162
  • Upgrade to Reactor 2024.0.4 #1157
  • Upgrade to Spring Boot 3.4.x #1108
  • Upgrade to Spring Data 2025.0.0-M2 #1159
  • Upgrade to Spring Framework 6.2.3 #1156
  • Upgrade to Spring Security 6.5.0-M3 #1160

❤️ Contributors

Thank you to all the contributors who worked on this release:

@m1ngyuan and @snicoll

v1.3.4

18 Feb 10:28
Compare
Choose a tag to compare

⭐ New Features

  • WebSocket handlers should log unhandled errors #1122
  • Authorization key lookup in BearerTokenAuthenticationExtractor should be case insensitive #1116
  • Avoid IllegalArgumentException for custom error type in ResponseMapGraphQlResponse #1115

🐞 Bug Fixes

  • ExecutionGraphQlService should handle early GraphQLExceptions #1118
  • WebSocketGraphQlTransport does not emit error signal if connection closed before GraphQL session is initialized #1098
  • Error thrown from @GraphQlExceptionHandler method results in ClassCastException #1090
  • Flatten nested argument maps in QuerydslDataFetcher #1085

📔 Documentation

  • Update documentation to use jakarta.persistence.* for Querydsl setup #1121
  • Fix links to Spring Boot in reference documentation #1097

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.13.11 #1128
  • Upgrade to Reactor 2023.0.15 #1127
  • Upgrade to Spring Data 2024.0.9 #1129
  • Upgrade to Spring Framework 6.1.17 #1126
  • Upgrade to Spring Security 6.3.6 #1130

❤️ Contributors

Thank you to all the contributors who worked on this release:

@mp911de, @salmansharifov, @sic2, and @snicoll

v1.3.3

23 Oct 05:38
Compare
Choose a tag to compare

⭐ New Features

  • Allow setting timeout for SSE handling #1079
  • @BatchMapping methods should pass the localContext as the BatchLoaderEnvironment's keyContexts #1066
  • Allow Enum type to be a source in controllers. #1059
  • Lenient handling of empty representations list in EntitiesDataFetcher #1057
  • Schema inspection should check actual paginated type name rather than deriving it from the Connection type name #1053
  • Schema inspection reports skipped type when field is mapped to property with generic type #1037

🐞 Bug Fixes

  • Ensure all Publisher errors are handled consistently in SSE handlers #1080
  • NullPointerException with GraphQlSseHandler in case of async timeouts #1067
  • SSE and WS handlers get into an error handling loop on disconnect #1060
  • DefaultExecutionRequestObservationConvention does not produce INTERNAL_ERROR outcomes #1058
  • Legacy "application/graphql" is not supported if charset is set #1036

📔 Documentation

  • Document behavior when both first and last are specified for pagination #1055
  • Parameterless method retrieveSync() does not exist in RequestSpec #1042

🔨 Dependency Upgrades

  • Upgrade to GraphQL Java 22.3 #1044
  • Upgrade to Micrometer 1.13.6 #1076
  • Upgrade to Reactor 2023.0.11 #1075
  • Upgrade to Spring Data 2024.0.5 #1077
  • Upgrade to Spring Framework 6.1.14 #1074
  • Upgrade to Spring Security 6.3.4 #1078

❤️ Contributors

Thank you to all the contributors who worked on this release:

@szediwy

v1.2.9

22 Oct 10:10
Compare
Choose a tag to compare

⭐ New Features

  • @BatchMapping methods should pass the localContext as the BatchLoaderEnvironment's keyContexts #1071

🐞 Bug Fixes

  • DefaultExecutionRequestObservationConvention does not produce INTERNAL_ERROR outcomes #1065
  • Legacy "application/graphql" is not supported if charset is set #1038

🔨 Dependency Upgrades

  • Upgrade to Reactor 2022.0.22 #1073
  • Upgrade to Spring Framework 6.0.23 #1072

v1.3.2

16 Jul 12:20
Compare
Choose a tag to compare

⭐ New Features

  • Field mapped to Kotlin function reported as unmapped by SchemaMappingInspector #995

🐞 Bug Fixes

  • DataLoader registrations via BatchLoaderRegistry not used at runtime #1020
  • @EntityMapping method cannot resolve Kotlin List argument #1018
  • Exception not logged at DEBUG level when handled by annotated controller method #996

📔 Documentation

  • Update reference doc links to Spring Boot 3.3 #1016
  • Document setting up library with Spring, without using spring boot #606

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.13.2 and Tracing 1.3.2 #1030
  • Upgrade to Reactor 2023.0.8 #1029
  • Upgrade to Spring Data 2024.0.2 #1031
  • Upgrade to Spring Framework 6.1.11 #1028

❤️ Contributors

Thank you to all the contributors who worked on this release:

@hantsy

v1.2.8

16 Jul 09:58
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Exception not logged at DEBUG level when handled by annotated controller method #1027
  • DataLoader registrations via BatchLoaderRegistry not used at runtime #1021

v1.3.1

18 Jun 16:11
Compare
Choose a tag to compare

⭐ New Features

  • Support returning Flux of entities from @EntityMapping methods #991
  • Do not apply ContextDataFetcherDecorator to TrivialDataFetcher instances #983
  • Support fragments in GraphQlTester #964

🪲 Bug Fixes

  • TypeMismatchError if controller method returning Flow is declared without suspend keyword #988
  • UNKNOWN uri value in web observations for GraphQL endpoints #987
  • @AuthenticationPrincipal resolver should have precedence over Principal resolver #982

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.13.1 and Tracing 1.13.1 #1010
  • Upgrade to Reactor 2023.0.7 #1009
  • Upgrade to Spring Data 2024.0.1 #1011
  • Upgrade to Spring Framework 6.1.9 #1008
  • Upgrade to Spring Security 6.3.1 #1012

❤️ Contributors

Thank you to all the contributors who worked on this release:

@github-actions[bot] and @osi

v1.2.7

18 Jun 15:40
Compare
Choose a tag to compare

⭐ New Features

  • Allow use of GraphQL Java 21.x in Spring for GraphQL 1.2.x #974
  • Support client requests with content-type "application/graphql" #948

🪲 Bug Fixes

  • @AuthenticationPrincipal resolver should have precedence over Principal resolver #990
  • InvocableHandlerMethodSupport#adaptCallable does not unwrap InvocationTargetException #973

📔 Documentation

  • Update documentation with advice on how to achieve schema namespacing #863
  • Document how to configure custom ExecutionStrategy #832

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.11.12 #1005
  • Upgrade to Reactor 2022.0.20 #1004
  • Upgrade to Spring Data 2023.0.12 #1006
  • Upgrade to Spring Framework 6.0.22 #1003
  • Upgrade to Spring Security 6.1.9 #1007

❤️ Contributors

Thank you to all the contributors who worked on this release:

@github-actions[bot]