Commit Graph

1459 Commits

Author SHA1 Message Date
Brian Clozel
819e2fbe8a Add missing charset tag in graphiql HTML page
Fixes gh-1231
2025-06-03 08:51:33 +02:00
rstoyanchev
e97bb2d67b Fix nested parameter names in QuerydslDataFetcher
Closes: gh-1215
2025-05-29 17:14:40 +01:00
rstoyanchev
15ab859626 Add toString() method in ArgumentValue
Closes gh-1196
2025-05-29 17:14:18 +01:00
Brian Clozel
e17903051c Inject prepared GraphqlErrorBuilder in error handling methods
Prior to this commit, error handling methods would support various
arguments, including the exception being handled.
Our reference documentation would advise to create a new instance of a
`GraphQLError` using `GraphQLError.newError()`. This does not initialize
the location and path information of the current error.

This commit allows error handling methods to get injected with a
`GraphQlErrorBuilder<?>` argument that is initialized with the current
`DataFetchingEnvironment` (thus filling the location and path parts).

Fixes gh-1200
2025-05-16 18:09:42 +02:00
rstoyanchev
518617dd34 Lenient adapt non-Publisher subscription result
Closes gh-1213
2025-05-16 08:48:13 +01:00
Brian Clozel
ce9472fdd9 Upgrade to GraphiQL 4.0.0
Closes gh-1209
2025-05-12 11:50:14 +02:00
Alexander Münch
719281175f Fix typo in SchemaMappingInspector Javadoc
Closes gh-1195

Signed-off-by: Alexander Münch <theHacker@users.noreply.github.com>
2025-05-02 18:20:43 +02:00
Patrick Strawderman
d30429fe86 Fix dropping of extensions in ContextDataFetcherDecorator
ContextDataFetcherDecorator was not retaining extensions for DataFetchers returning
a DataFetcherResult instance.

Closes gh-1199

Signed-off-by: Patrick Strawderman <pstrawderman@netflix.com>
[brian.clozel@broadcom.com: apply code conventions]
Signed-off-by: Brian Clozel <brian.clozel@broadcom.com>
2025-05-02 18:13:44 +02:00
Brian Clozel
ccf9f8ab7f Next development version (v1.3.6-SNAPSHOT) 2025-04-17 16:18:02 +02:00
Brian Clozel
c9a52cfb89 Upgrade to Context Propagation 1.1.3
Closes gh-1194
2025-04-17 15:10:47 +02:00
Brian Clozel
756b0c13ac Upgrade to Micrometer 1.13.13
Closes gh-1193
2025-04-17 15:10:26 +02:00
Brian Clozel
680534e6ef Upgrade to Reactor 2023.0.17
Closes gh-1192
2025-04-17 15:09:58 +02:00
Brian Clozel
ec0a9c37c4 Upgrade to Spring Framework 6.1.19
Closes gh-1191
2025-04-17 15:09:13 +02:00
Brian Clozel
6ddaeadbd5 Fix codegen documentation section
Closes gh-1188
2025-04-15 22:33:28 +02:00
Brian Clozel
9228631596 Upgrade to github-changelog-generator 0.0.12 2025-04-15 11:54:11 +02:00
Patrick Grosslicht
8ff287bec8 Use correct logger name in QuerydslDataFetcher
Closes gh-1185

Signed-off-by: Patrick Grosslicht <1881000+pgrosslicht@users.noreply.github.com>
2025-04-09 20:54:57 +02:00
James Bodkin
d8381e6cf3 Allow non-nullable types in GraphQL Relay
Closes gh-1173

Signed-off-by: James Bodkin <james.bodkin@amphora.net>
[brian.clozel@broadcom.com: remove unrelated test]
Signed-off-by: Brian Clozel <brian.clozel@broadcom.com>
2025-04-08 17:02:37 +02:00
Brian Clozel
a6c69eb7ac Polishing
See gh-1149
2025-03-14 09:38:56 +01:00
rstoyanchev
f3f5516b8a ContextDataFetcherDecorator support for DataFetcherResult
Closes gh-1143
2025-03-11 18:21:06 +00:00
rstoyanchev
008a78d1c5 Handle invalid media types as client errors
Closes gh-1145
2025-03-11 18:14:26 +00:00
rstoyanchev
bd8a633eac AbstractGraphQlTesterBuilder copies extensions/attributes
Closes gh-1135
2025-03-11 18:14:26 +00:00
rstoyanchev
5682740dee GraphQlTester provides access to underlying response
Closes gh-1131
2025-03-11 18:14:26 +00:00
Brian Clozel
5c2164c5f2 Propagate cancel signal from transport to data fetchers
Prior to this commit, a WebSocket/SSE client disconnecting from the data
stream would cause a CANCEL signal to be sent to upstream publishers.
This signal would flow from the transport layer up to the
`ExecutionGraphQlService`. Because the `GraphQL` engine itself relies on
`CompletableFuture`, the CANCEL signal would not flow through and
reactive data fetchers would not receive it. This means that costly
reactive operations would not be cancelled and this could cause write
failures as publishers would still produce values.

This commit adds at the service level a Reactor `Sink` to the
`GraphQLContext` that can be picked up by the
`ContextDataFetcherDecorator` when decorating reactive data fetchers.
This allows us to manually cancel publishers when the CANCEL signal is
received at the transport level.

Fixes gh-1149
2025-03-11 10:31:53 +01:00
Brian Clozel
929430065c Upgrade to Gradle 8.13 2025-02-28 14:24:39 +01:00
Brian Clozel
c3de464dc9 Next development version (v1.3.5-SNAPSHOT) 2025-02-18 11:28:15 +01:00
Brian Clozel
693db4374a Upgrade to Spring Security 6.3.6
Closes gh-1130
2025-02-18 10:10:27 +01:00
Brian Clozel
5ea02fd471 Upgrade to Spring Data 2024.0.9
Closes gh-1129
2025-02-18 10:10:08 +01:00
Brian Clozel
86d094ead5 Upgrade to Micrometer 1.13.11
Closes gh-1128
2025-02-18 10:09:40 +01:00
Brian Clozel
373fda5c85 Upgrade to Reactor 2023.0.15
Closes gh-1127
2025-02-18 10:08:58 +01:00
Brian Clozel
50546c1d03 Upgrade to Spring Framework 6.1.17
Closes gh-1126
2025-02-18 09:30:23 +01:00
rstoyanchev
6120c31706 Case-insensitive lookup of bearer auth token
Closes gh-1116
2025-02-17 15:21:00 +00:00
rstoyanchev
3360e4a46e Log unhandled exceptions in WebSocket handlers
Closes gh-1122
2025-02-17 12:49:18 +00:00
rstoyanchev
db7804375e Improve ErrorClassification deserialization
Closes gh-1115
2025-02-12 15:32:59 +00:00
rstoyanchev
b977beffa3 Polishing 2025-02-12 15:15:28 +00:00
Brian Clozel
ba05a3f321 Upgrade Gradle setup
Upgrade Gradle setup in CI and Gradle to 8.12.1
2025-02-11 21:40:07 +01:00
Brian Clozel
af74edbcc7 Handle early GraphQLExceptions in ExecutionGraphQlService
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
2025-02-05 10:24:43 +01:00
rstoyanchev
474fbcafa1 Handler failure from GraphQlExceptionHandler method
Closes gh-1090
2025-01-30 15:11:48 +00:00
rstoyanchev
d2002bbe84 Handle early closure of WebSocket connection
Ensure the error is routed to the graphQlSessionSink when the WebSocket
connection is closed before the GraphQLSession is initialized.

Closes gh-1098
2025-01-30 15:09:58 +00:00
Salman
8f303e630f Fix reference navigation to Spring Boot
Closes gh-1097
2025-01-13 10:40:46 +01:00
github-actions[bot]
2ef7fa214f Update Antora Spring UI to v0.4.18
Closes gh-1106
Closes gh-1105
2025-01-13 10:27:27 +01:00
Stéphane Nicoll
fc55c53abc Avoid usage of JsonExpectationsHelper#assertEquals
This has been deprecated in Spring Framework 6.2.

Closes gh-1107
Signed-off-by: Stéphane Nicoll <stephane.nicoll@broadcom.com>
2025-01-13 10:22:28 +01:00
Brian Clozel
cc189be2e3 Update Antora UI Spring to v0.4.17 2025-01-08 21:46:04 +01:00
Brian Clozel
4b7dfc0df7 Configure DCO in repository 2025-01-08 21:01:00 +01:00
Brian Clozel
7047b37d42 Switch to 1.3.x branch 2024-12-05 15:07:30 +01:00
Brian Clozel
f3ef586cc7 Update GitHub actions 2024-12-05 14:53:12 +01:00
Brian Clozel
4bf4f993a6 Upgrade to Gradle 8.11.1 2024-12-05 14:52:55 +01:00
Simone Conte
3105e6f43d Remove duplicated wording in federation.adoc 2024-12-04 12:15:49 +00:00
rstoyanchev
3921a3ec6d Minor optimization in QuerydslDataFetcher
Use single MultiValueMap in method that flattens arguments vs
creating a new one at each level of recursion.

See gh-1085
2024-12-04 11:59:44 +00:00
Mark Paluch
2cafc7cc1b Polishing.
Refine assertions to ignore locale-specific error messages.

See gh-1085
2024-12-04 11:59:43 +00:00
Mark Paluch
821d480c3a Flatten nested argument maps in QuerydslDataFetcher
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
2024-12-04 11:59:29 +00:00