This should have been removed when we upgraded to
"io.spring.develocity.conventions:0.0.22".
I suspect this is the reason we are not getting build scan URLs in
GitHub action runs anymore.
Prior to this commit, the `ExecutionGraphQlService` would throw
`GrahphQLException` instances if errors happen early in the process, for
example in some cases of document parsing/validation.
Such exception would be thrown directly and not reflected in the GraphQL
response if those are `GraphQLError`.
This commit ensures that a fallback GraphQL response is created in this
case and that it contains the relevant `GraphQLError` information.
Fixes gh-1118
Prior to this commit, the `GraphQlHttpHandler` implementations for MVC
and WebFlux would support the HTTP transport protocol for servers.
They would align with the well-known GraphQL behavior, using HTTP as a
transport and always using HTTP 200 OK as response status.
The new GraphQL over HTTP specification changes that, and requires
servers to respond with HTTP 4xx/5xx statuses when an error occurs
before the GraphQL request execution: for example, if the JSON document
cannot be parsed, or the GraphQL document is invalid.
This commit introduces a new "standard mode" option on HTTP transports
to follow this new requirement. Because this is a breaking change for
GraphQL clients, this mode is opt-in only for now.
See gh-1117
This commit upgrades to Spring Boot 3.4.x, Spring Framework 6.2.x, and
third party dependency versions used by the project.
Closes gh-1108
Signed-off-by: Stéphane Nicoll <stephane.nicoll@broadcom.com>
We now flatten argument maps to ensure keys in the resulting
parameter map are fully-qualified property paths.
Previously, we built a parameter map containing nested maps
leading to invalid queries.
Closes gh-1085
Prior to this commit, `@BatchMapping` controller methods would be
automatically registered as date fetchers delegating to data loader
calls. Those calls would not include the current local context or main
context. As a result, injecting the `BatchLoaderEnvironment` in the
controller method signature would not contain the `getKeyContext()`.
This commit ensures that dataloader calls not only use the current
source, but also the current local context/main context so that it will
be present in the key contexts map.
Fixes gh-1066
Prior to this commit, the MVC `GraphQlSseHandler` would not react to
async request timeouts thrown by the Servlet container. This means that
when such timeouts happened, the SSE handler would still try to write to
the underlying response, whereas it was already recycled. This would
lead to NullPointerException thrown by the container.
This commit ensures that the SSE handler registers an async listener to
be notified of async timeouts and cancels the publisher as a result.
The SSE completion is not performed so as to let the client know that
the exchange did not complete and that it should re-subscribe.
Fixes gh-1067
Prior to this commit, enum types would be rejected as possible source
arguments for schema mapping methods.
This is a valid use case and this commit removes this limitation.
Closes gh-1059