798 Commits

Author SHA1 Message Date
Mark Paluch
33e3b7790f Prepare next development iteration.
See #2186
2022-11-18 10:35:09 +01:00
Mark Paluch
206c9be419 Release version 3.6.10 (2021.1.10).
See #2186
2022-11-18 10:22:10 +01:00
Spring Builds
9a7f7f04d0 Prepare next development iteration.
See #2185
2022-10-13 12:36:58 +00:00
Spring Builds
4d2c6bdc4b Release version 3.6.9 (2021.1.9).
See #2185
2022-10-13 11:54:20 +00:00
Spring Builds
fee18e63d3 Prepare next development iteration.
See #2179
2022-10-13 07:51:58 +00:00
Spring Builds
d9a48414fa Release version 3.6.8 (2021.1.8).
See #2179
2022-10-13 07:28:25 +00:00
Spring Builds
40db40f03b Prepare next development iteration.
See #2159
2022-09-19 09:04:45 +00:00
Spring Builds
5cb03bfcf0 Release version 3.6.7 (2021.1.7).
See #2159
2022-09-19 08:40:23 +00:00
Oliver Drotbohm
bf37590b25 Improve JSON Patch implementation.
Refactor JSON Patch application implementation to improve the property detection for which values are supposed to be set.

Fixes #2177.
2022-09-19 10:20:41 +02:00
Christoph Strobl
476b029b71 Prepare next development iteration.
See #2153
2022-07-15 10:47:33 +02:00
Christoph Strobl
0734dfd7dc Release version 3.6.6 (2021.1.6).
See #2153
2022-07-15 10:34:18 +02:00
Mark Paluch
679495dcbd Prepare next development iteration.
See #2135
2022-06-20 11:12:20 +02:00
Mark Paluch
8c64a63a22 Release version 3.6.5 (2021.1.5).
See #2135
2022-06-20 10:59:11 +02:00
Christoph Strobl
eb27670224 Prepare next development iteration.
See #2125
2022-04-19 12:13:22 +02:00
Christoph Strobl
b561dabc36 Release version 3.6.4 (2021.1.4).
See #2125
2022-04-19 12:03:15 +02:00
Oliver Drotbohm
3182b3971f Fix PUT merge handling for polymorphic properties.
We now replace the original value of polymorphic properties with the newly deserialized one if the type of the new one is different from the old one. We still copy all JSON ignored properties to the new instance to make sure that non-exposed, server-side state is retained. We apply the same handling for explicitly immutable source and/or target types.

Fixes #2130.
2022-04-04 14:51:22 +02:00
Oliver Drotbohm
ffde83a326 Fix potential NullPointerException in HalFormsAdaptingResponseBodyAdvice.
Fixes #2123.
2022-03-28 17:00:40 +02:00
Mark Paluch
d4725f3025 Prepare next development iteration.
See #2111
2022-03-21 15:06:36 +01:00
Mark Paluch
df4649d168 Release version 3.6.3 (2021.1.3).
See #2111
2022-03-21 14:58:52 +01:00
Mark Paluch
107b9da7f1 Prepare next development iteration.
See #2098
2022-02-18 10:49:00 +01:00
Mark Paluch
41cbaeda84 Release version 3.6.2 (2021.1.2).
See #2098
2022-02-18 10:41:01 +01:00
Oliver Drotbohm
1a66473416 Update copyright years to 2022. 2022-02-07 10:29:04 +01:00
Christoph Strobl
bffd95319e Prepare next development iteration.
See #2084
2022-01-14 10:44:59 +01:00
Christoph Strobl
14017f320a Release version 3.6.1 (2021.1.1).
See #2084
2022-01-14 10:28:58 +01:00
Jens Schauder
7589d808f9 Prepare next development iteration.
See #2079
2021-11-12 11:00:05 +01:00
Jens Schauder
e31c9d49bf Release version 3.6 GA (2021.1.0).
See #2079
2021-11-12 10:49:37 +01:00
Oliver Drotbohm
a40aec5deb Consider @CrossOrigin(originPatterns = …).
RepositoryRestHandlerMapping's RepositoryCorsConfigurationAccessor now also evaluates @CrossOrigin's originPatterns into the CorsConfiguration.

Fixes #2077.
2021-10-19 10:32:48 +02:00
Mark Paluch
f556973a6c Prepare next development iteration.
See #2066
2021-10-18 13:55:39 +02:00
Mark Paluch
cecc161fe6 Release version 3.6 RC1 (2021.1.0).
See #2066
2021-10-18 13:48:15 +02:00
Patrik Mihalcin
358bd3578a Fix typo in RepositoryRestController's JavaDoc
Fixes #2061.
2021-10-13 16:02:18 +02:00
Oliver Drotbohm
4434d32fae Prevent using NestedEntitySerializer if target serializer does not support unwrapping.
We now verify that the serializer registered for the type that's supposed to be handled by the NestedEntitySerializer actually supports unwrapping as the serialization in EntityModel (MapSuppressingUnwrappingSerializer) requires that to work properly.

Fixes #2056.
2021-10-13 11:59:53 +02:00
Oliver Drotbohm
1828a6a2a7 Switch to JUnit 5.
Issue #2075.
2021-10-12 22:29:45 +02:00
Oliver Drotbohm
18b39cb321 Reduce general runtime exception logging to debug.
Issue #2074.
2021-10-12 16:21:12 +02:00
Oliver Drotbohm
46dc6e03fc Prevent duplicate controller registrations through class-level @RequestMapping.
When we detected @BasePathAwareController and @RepositoryRestController instances, we now reject types that use @RequestMapping on the class level as doing so causes an inevitable registration of the controller with Spring MVC.

Fixes #1342, #1628, #1686, #1946.
2021-10-06 12:13:37 +02:00
Oliver Drotbohm
c6b77e3dd9 Polish Javadoc to prepare builds with JDK 17.
Issue #2068.
2021-09-21 16:36:26 +02:00
Mark Paluch
0cb5c3289f Prepare next development iteration.
See #2052
2021-09-17 09:52:19 +02:00
Mark Paluch
907b15e83b Release version 3.6 M3 (2021.1.0).
See #2052
2021-09-17 09:44:58 +02:00
Oliver Drotbohm
1dae476040 Adapt Content-Type header for HAL FORMS requests based on affordances.
Whenever HAL FORMS is supposed to be rendered, we now adapt the `Content-Type` header depending on whether affordances (and thus `_templates`) are present. If none can be found, we either adapt the header to either `application/hal+json` or even `application/json` depending on the `Accept` header arrangement given. If none match, we reject the request with `406 Not Acceptable`.

Had to reintroduce a dependency on Lombok to use @SneakyThrows as otherwise we cannot throw HttpMediaTypeNotAcceptableException from a ResponseBodyAdvice. A manual implementation of the pattern does not compile on Java 8 (at least on MacOS).

Fixes #2060.
2021-09-14 22:49:05 +02:00
Oliver Drotbohm
2aca2b24e0 Avoid reflection in RepositoryRestMvcConfiguration.
We now completely avoid reflection in RepositoryRestMvcConfiguration by delaying all bean lookups that were previously declared through autowired fields.

Fixes #2057.
2021-08-26 15:38:47 +02:00
Oliver Drotbohm
9cd9e1cef9 Avoid eager reference to BackendIdConverter beans.
Switched to bean method parameter reference to all BackendIdConverter instances.

Fixes #2055.
2021-08-19 23:19:08 +02:00
Jens Schauder
4f9ccaac0e Prepare next development iteration.
See #2046
2021-08-12 15:16:22 +02:00
Jens Schauder
f8bdb374ea Release version 3.6 M2 (2021.1.0).
See #2046
2021-08-12 15:03:18 +02:00
Jens Schauder
5e08842c1b Prepare next development iteration.
See #2001
2021-07-16 14:19:56 +02:00
Jens Schauder
8d0e00be94 Release version 3.6 M1 (2021.1.0).
See #2001
2021-07-16 14:09:26 +02:00
Oliver Drotbohm
8a1d147009 Remove 3.x deprecations.
Removed all deprecations that have accumulated in the 3.x timeline so far.
2021-07-15 08:20:11 +02:00
Oliver Drotbohm
161a3a9499 Allow customization of LinkCollector.
LinkCollector is now an interface. The actual implementation has been moved to DefaultLinkCollector. RepositoryRestConfigurer now has a customizeLinkCollector(…) callback method to tweak or even completely replace the LinkCollector instance.

Fixes #2042.
2021-07-15 08:15:20 +02:00
Oliver Drotbohm
0c24113484 Dedicated customization callback for AuditableBeanWrapperFactory.
Introduced RepositoryRestConfigurer.customizeAuditableBeanWrapperFactory(…) so that implementations can customize the default instance provided by RepositoryRestMvcConfiguration.

Fixes #2040.
2021-07-14 19:01:11 +02:00
Oliver Drotbohm
e1dd82c927 Prevent NullPointerException in AggregateReferenceDeserializerModifier.
In AggregateReferenceDeserializerModifier we now look up the original property name on the Jackson metadata before trying to resolve the property target type. We also explicitly guard against null values returned from that lookup and opt out of the customization in those cases.
2021-07-13 09:25:57 +02:00
Oliver Drotbohm
e2f8d2f2c4 Avoid using Guava's Charset.
Replaced with Java's StandardCharset. Fixes #2026.
2021-06-17 21:16:14 +02:00
Greg L. Turnquist
bc5478ec49 Drop explicit dependency on JSON Path.
Let Spring HATEOAS bring in this dependency.

See #2018.
2021-06-03 12:11:21 -05:00