Commit Graph

774 Commits

Author SHA1 Message Date
rstoyanchev
ca90cedf3b Refine null handling in ClientResponseField#toEntity
closes gh-525
2022-11-04 13:53:52 +00:00
rstoyanchev
05939d5e7e Merge branch '1.0.x' 2022-11-04 13:50:57 +00:00
rstoyanchev
5905f02bd6 Deprecate ResponseField getError and hasValue
See gh-499
2022-11-04 11:01:58 +00:00
rstoyanchev
2dafd5dfc7 Merge branch '1.0.x' 2022-11-04 08:40:30 +00:00
Johan Wigert
6004937ad2 Fix typo in Javadoc of GraphQlTester
Closes gh-523
2022-11-04 07:24:34 +00:00
rstoyanchev
02f96b6bf4 Raise exception for any field error in retrieve
This commit aligns the behavior of retrieve with its Javadoc such that
any field error, including errors on nested fields, raises a
FieldAccessException

Closes gh-499
2022-11-04 06:36:15 +00:00
rstoyanchev
be9a21562c Polishing GraphQlArgumentBinder
See gh-349
2022-10-24 18:15:17 +01:00
rstoyanchev
16b1f94e69 Support binding to class with enum generic type
Closes gh-349
2022-10-21 18:24:17 +01:00
rstoyanchev
36501c1c28 Polishing
See gh-394
2022-10-21 17:33:33 +01:00
rstoyanchev
7f89bb92f6 Support argument binding to java.util.Set property
Closes gh-394
2022-10-21 16:27:33 +01:00
rstoyanchev
d9f815ed70 Add support for checking if an argument was omitted
Closes gh-518
2022-10-21 14:33:12 +01:00
rstoyanchev
8d80e5f883 Remove DataBinder from GraphQlArgumentBinder
DataBinder is not a great fit to bind GraphQL arguments which
are essentially a (structured) map of maps and collections, rather
than a (flat) map of property values with JavaBean paths.

We already navigate recursively the GraphQL arguments map, which
corresponds to the target Object structure, creating values, so all
we have to do is check for matching bean properties at each level
and set them.

See gh-516
2022-10-20 15:31:07 +01:00
rstoyanchev
5c75f7cf10 Merge branch '1.0.x' 2022-10-19 10:19:19 +01:00
rstoyanchev
11fab7dafd Polishing
See gh-449
2022-10-19 09:07:53 +01:00
rstoyanchev
d38ffeae6b Consistent raw value handling in GraphQlArgumentBinder
This commit ensures a single method is used to bind raw values,
whether those a top level argument value, or a value nested within a
collection or map.

See gh-449
2022-10-19 06:06:57 +01:00
rstoyanchev
bc8ee162f9 Minor refactoring in GraphQlArgumentBinder
See gh-449
2022-10-19 06:06:57 +01:00
rstoyanchev
9be5a95948 Support binding to Map as target value
Before this commit, we supported binding to a higher level object,
or a scalar, or a List of either, but not to a Map of either, which
requires similar support as what we have for a List, i.e. creating
the target Map and populating it in a recursive manner.

This commit adds that support.

Closes gh-449
2022-10-19 06:06:57 +01:00
Brian Clozel
e10674c7ad Upgrade to Spring Security 6.0.0-RC1
Closes gh-515
2022-10-18 16:46:50 +02:00
Brian Clozel
68f07d4165 Upgrade to Spring Data 2022.0.0-RC1
Closes gh-514
2022-10-18 16:46:15 +02:00
Brian Clozel
5f99f8a449 Upgrade to Micrometer 1.10.0-RC1
Closes gh-513
2022-10-18 16:45:47 +02:00
Brian Clozel
6b7a633741 Upgrade to Reactor 2022.0.0-RC1
Closes gh-512
2022-10-18 16:45:03 +02:00
Brian Clozel
6ebdc46fa3 Upgrade to Jackson 2.13.4.20221013 2022-10-18 16:42:05 +02:00
Brian Clozel
1b19189500 Add Observability support
Prior to this commit, metrics instrumentation was provided by Spring
Boot, using Micrometer metrics. The `Instrumentation` would publish two
timers and a counter, but would not support tracing.

This commit replaces the former with a dedicated support in Spring for
GraphQL directly. This uses the new `Observation` API from Micrometer
and publishes two observations:

* a request execution observation, with timing and tracing included
* a data fetching observation with the request execution as a parent
  observation

Closes gh-501
2022-10-18 15:51:48 +02:00
Brian Clozel
30bc70be5f Upgrade CI infrastructure
This commit updates the following parts of the CI infrastructure:

* the base OS image
* the docker daemon version
* the JDK versions we're building against
2022-10-17 23:38:34 +02:00
Brian Clozel
ba6b6c7172 Upgrade to Spring Framework 6.0.0-RC1
Closes gh-510
2022-10-17 23:34:37 +02:00
rstoyanchev
ea8fed8800 Merge branch '1.0.x' 2022-10-17 17:44:19 +01:00
rstoyanchev
13683eea17 Support Optional for ProjectPayload arguments
Closes gh-506
2022-10-17 17:27:44 +01:00
rstoyanchev
560c2b53f2 Polishing contribution
Closes gh-507
2022-10-17 16:58:56 +01:00
Koen Punt
da21f7438c Print actual elements in GraphQlTester
See gh-507
2022-10-17 16:32:42 +01:00
rstoyanchev
30b16898f3 Merge branch '1.0.x' 2022-10-13 17:13:05 +01:00
rstoyanchev
f3d07c1bd8 Polishing contribution
Closes gh-498
2022-10-13 17:02:08 +01:00
Iván Rodríguez Murillo
0faa63beea Allow use of loadbalanced RSocketRequester
See gh-498
2022-10-13 15:55:21 +01:00
Brian Clozel
c414411278 Upgrade dependencies
* switch to expected Hibernate version
* upgrade log4j2 dependency
2022-10-11 14:26:22 +02:00
Brian Clozel
39d97ef7fc Upgrade to Context Propagation 1.0.0-RC1
Closes gh-505
2022-10-11 14:26:02 +02:00
Brian Clozel
00ca12f414 Switch to Reactor and Context Propagation SNAPSHOTs 2022-10-06 15:56:39 +02:00
Brian Clozel
37625fe081 Fix Javadoc generation with Java 17
This project removes all customizations that were tailored for Java 8
Javadoc generation.

Fixes gh-494
2022-10-06 09:36:44 +02:00
Spring Builds
33ec463f23 Next development version (v1.0.3-SNAPSHOT) 2022-09-20 13:18:32 +00:00
rstoyanchev
d6c855898f Merge branch '1.0.x' 2022-09-20 14:06:57 +01:00
rstoyanchev
84904170a8 Support binding to generic Object constructor arg
Closes gh-447
2022-09-20 13:52:38 +01:00
rstoyanchev
dfed05a822 Consistent access to raw arguments map
See gh-493
2022-09-20 13:52:38 +01:00
rstoyanchev
9abaa23cfc Document finding schema files across modules
Closes gh-489
2022-09-20 13:52:38 +01:00
Brian Clozel
a69b7bc687 Upgrade dependencies 2022-09-20 12:11:48 +02:00
Brian Clozel
0ffbc60214 Merge branch '1.0.x' 2022-09-20 11:35:26 +02:00
Brian Clozel
4de39f0d0f Upgrade optional dependencies 2022-09-20 11:35:01 +02:00
rstoyanchev
02c9ab1dc0 Merge branch '1.0.x' 2022-09-19 17:07:54 +01:00
rstoyanchev
1773f6ed33 Apply validation only when annotations detected
Closes gh-445
2022-09-19 15:34:36 +01:00
rstoyanchev
76f97da412 Polishing validation code
See gh-445
2022-09-19 15:34:36 +01:00
Brian Clozel
b2e1a42a24 Merge branch '1.0.x' 2022-09-19 11:17:27 +02:00
Brian Clozel
08df89e40e Upgrade to Gradle 7.5.1 2022-09-19 11:17:12 +02:00
Jerome Prinet
ca0520a023 Update Gradle Enterprise plugin to 3.11.1
Closes gh-492
2022-09-19 11:17:06 +02:00