11493 Commits

Author SHA1 Message Date
Madhura Bhave
932fb65107 Correct external application properties load order
Fixes gh-24308
2020-12-03 11:55:51 -08:00
Phillip Webb
3dc03ac275 Refine non-optional classpath location checking
Update `StandardConfigDataLocationResolver` to no longer check if
directories exist for classpath resources. Unfortunately checking for
the parent directory of a `ClassPathResource` isn't always possible
without resorting something similar to the
`PathMatchingResourcePatternResolver` which would add a lot of
complexity to the resolver.

In order to ensure that non-optional locations are always resolved,
the `ConfigDataEnvironment` now checks that all imported locations
have been loaded.

Closes gh-24143
2020-12-01 21:33:59 -08:00
Scott Frederick
01478a25b4 Handle wrapper types in Env actuator
This commit modifies the actuator `EnvironmentEndpoint` to allow
primitive wrapper types to be serialized in the response data
structure.

Fixes gh-24307
2020-12-01 15:12:13 -06:00
Stephane Nicoll
bd7e89be1a Start building against Spring Framework 5.3.2 snapshots
See gh-24278
2020-11-30 17:18:35 +01:00
Stephane Nicoll
7c59d8a32f Start building against Reactor 2020.0.2 snapshots
See gh-24275
2020-11-30 17:17:27 +01:00
Jim Stockwell
728e474f7f Mark OriginTrackedPropertiesLoader#isNewDocument private
See gh-24268
2020-11-27 09:16:01 +01:00
Stephane Nicoll
e6ccbfb017 Merge branch '2.3.x'
Closes gh-24259
2020-11-26 09:02:33 +01:00
Jim Stockwell
bb7ad30de4 Fix ErrorAttributeOptions#getIncludes Javadoc
See gh-24257
2020-11-26 09:00:52 +01:00
João Guerra
1d6bacf1c8 Fix typo
See gh-24245
2020-11-25 14:57:14 +01:00
Stephane Nicoll
f248cfe79c Polish "Check that WebClient is available"
See gh-24152
2020-11-25 14:52:47 +01:00
Tobias Gesellchen
f6255cc691 Check that WebClient is available
This commit reinstanties the isWeBClientPresent() check so that
WebTestClientContextCustomizer is only added if a web client is
available.

See gh-24152
2020-11-25 14:38:42 +01:00
Stephane Nicoll
b1678ee6ad Merge branch '2.3.x'
Closes gh-24251
2020-11-25 14:36:16 +01:00
Stephane Nicoll
9b992af34b Merge branch '2.2.x' into 2.3.x
Closes gh-24250
2020-11-25 14:31:30 +01:00
Stephane Nicoll
d506f0c73e Polish "Reduce redis health indicator info command result size"
See gh-24208
2020-11-25 14:27:07 +01:00
xJoeWoo
99cc3f4bfc Reduce redis health indicator info command result size
See gh-24208
2020-11-25 14:23:57 +01:00
Stephane Nicoll
8bcc3d1b09 Merge branch '2.3.x'
Closes gh-24234
2020-11-23 20:51:58 +01:00
Stephane Nicoll
016b69aa78 Polish "Allow to exclude an empty set of ErrorAttributes"
See gh-24230
2020-11-23 20:44:18 +01:00
Wanderlei Souza
6518f8f7fd Allow to exclude an empty set of ErrorAttributes
See gh-24230
2020-11-23 20:43:59 +01:00
Andy Wilkinson
11c81ad245 Merge branch '2.3.x'
Closes gh-24223
2020-11-20 11:48:51 +00:00
Andy Wilkinson
7efa1e47aa Merge branch '2.2.x' into 2.3.x
Closes gh-24222
2020-11-20 11:48:25 +00:00
Andy Wilkinson
12f2529be5 Allow actuator endpoint to have responses with custom HTTP statuses
Fixes gh-24123
2020-11-20 11:38:31 +00:00
Andy Wilkinson
1f3012b466 Merge branch '2.3.x'
Closes gh-24220
2020-11-20 11:36:45 +00:00
Andy Wilkinson
0ed7f7f40a Merge branch '2.2.x' into 2.3.x
Closes gh-24219
2020-11-20 11:36:31 +00:00
Andy Wilkinson
08b9d1da57 Polish "Ensure that MeterRegistry bean is defined before SI looks for it"
See gh-24095
2020-11-20 11:20:31 +00:00
Artem Bilan
7d712aaa2d Ensure that MeterRegistry bean is defined before SI looks for it
Previously, it was possible for Spring Integration, including its
built-in Micrometer support, to be auto-configured before the
Micrometer auto-configuration had defined the MeterRegistry bean. This
resulted in missing Spring Integration metrics.

Spring Integration is unusual in having its own built-in Micrometer
support that it configures itself. Rather than providing
auto-configuration for Integration's Micrometer support (Which isn't
needed), this commit introduces some auto-configuration that just
affects the ordering of the auto-configuration classes. This ordering
ensures that the MeterRegistry bean has been defined by Spring
Integration is auto-configured. This ensures that the MeterRegistry
bean is known to the BeanFactory when Spring Integration goes looking
for it.

See gh-24095
2020-11-20 11:18:09 +00:00
Andy Wilkinson
4a7bc3d096 Require bean name match for Locale(Context)Resolver to back off
Web MVC and WebFlux look up by name the Locale(Context)Resolver beans
that they use. Previously, the auto-configured resolvers for MVC and
WebFlux would back off when any bean of the required type was defined,
irrespective of its name. If the name of the user's bean didn't match
the name used by MVC and WebFlux to find the custom resolver, the
custom resolver would be ignored and MVC and WebFlux would use their
defaults. There was no indication of this happening in the condition
evaluation report as all it would show is that the auto-configured
resolver had backed off in favour of the custom resolver. It wouldn't
show anything to explain why the custom resolver had not been used.

This commit updates the auto-configured resolvers to be conditional
on a missing bean of the name required by MVC and WebFlux. If the
user then defines a custom resolver with a different name, the
condition evaluation report will show that the auto-configured
resolver remained as the bean name didn't match.

Fixes gh-24209
2020-11-20 10:35:30 +00:00
Madhura Bhave
e342d7d262 Fix processing of line immediately after # in properties file
Fixes gh-24158
2020-11-18 11:33:37 -08:00
Stephane Nicoll
c86ce27117 Use non deprecated properties to override web resources cache
Closes gh-24203
2020-11-18 17:40:35 +01:00
Andy Wilkinson
15c44aa45f Merge branch '2.3.x'
Closes gh-24200
2020-11-18 12:04:29 +00:00
Andy Wilkinson
988526bee9 Only attempt unwrapping of interfaces
Wrapper's isWrapperFor and unwrap methods both take a Class<?> target
but document that the target should be an interface. Prior to this
change, we were calling isWrapperFor with any Class<?> irrespective of
whether or not it was an interface. When using Oracle UCP each call
to isWrapperFor with an interface results in an exception stack trace
being logged.

This commit upates DataSourceUnwrapper to adhere to Wrapper's contract
by only calling isWrapperFor and unwrap with interfaces.

Fixes gh-24154
2020-11-18 11:35:11 +00:00
Stephane Nicoll
f3afd8a0f4 Fix location of Spring LDAP and Spring Session properties
Closes gh-23558
2020-11-18 10:28:54 +01:00
Stephane Nicoll
e708667fc0 Merge branch '2.3.x'
Closes gh-24194
2020-11-18 10:09:23 +01:00
Stephane Nicoll
76912d1952 Merge branch '2.2.x' into 2.3.x
Closes gh-24193
2020-11-18 10:09:03 +01:00
Stephane Nicoll
d3440880c4 Polish "Avoid unnecessary pattern compilation in WebFluxTags"
See gh-24147
2020-11-18 09:58:03 +01:00
Peter Paul Bakker
b22bb7ea04 Avoid unnecessary pattern compilation in WebFluxTags
See gh-24147
2020-11-18 09:58:03 +01:00
Phillip Webb
0ce3e7ec6b Protect against NPE caused by recursive calls
Update `SpringBootConfigurationFactory` so that it no longer attempts
to get a `LoggingSystem`.

The recent `LoggingSystem` update means makes use of the
`SpringFactoriesLoader` class to load candidate logging systems.
Unfortunately, the `SpringFactoriesLoader` class creates a `Logger`
which (when using Log4J2) causes `SpringBootConfigurationFactory` to
run. Calling `LoggingSystem.get` from `SpringBootConfigurationFactory`
results in a recursive call to `SpringFactoriesLoader` which hasn't
yet been fully initialized. We then see an NPE caused by a `null`
`cache`.

This update removes the call to `LoggingSystem.get` with the assumption
that it would never return `null` anyway.

Fixes gh-24163
2020-11-17 17:24:14 -08:00
Phillip Webb
e8244d8d70 Add CharSequenceToObjectConverter support
Update `ApplicationConversionService` with support for converting
`CharSequence` source types by using existing `String` based converters.

The addition is primarily to allow `ConfigTreePropertySource` values
to be converted correctly.

Closes gh-24171
2020-11-17 13:19:10 -08:00
Stephane Nicoll
e220536ddb Merge branch '2.3.x'
Closes gh-24186
2020-11-17 21:36:58 +01:00
Stephane Nicoll
dea12f7551 Merge branch '2.2.x' into 2.3.x
Closes gh-24185
2020-11-17 21:36:34 +01:00
izeye
b17895844d Provide dependency management for elasticsearch-rest-client-sniffer
See gh-24173
2020-11-17 21:32:37 +01:00
Scott Frederick
da2276e7d4 Use stable builder and run images in integration tests
Fixes gh-24183
2020-11-17 13:54:10 -06:00
Stephane Nicoll
7283ff04eb Merge branch '2.3.x'
Closes gh-24162
2020-11-16 07:21:19 +01:00
Sergey Kolesnikov
b341b478a6 Rename "sla" to "slo" in reference documentation
See gh-24160
2020-11-16 07:20:23 +01:00
Andy Wilkinson
6df10842d2 Allow Devtools to be enabled irrespective of the launching ClassLoader
Closes gh-21424
2020-11-12 13:22:40 +00:00
Stephane Nicoll
5b311d805b Upgrade to Netty 4.1.54.Final
Closes gh-24129
2020-11-12 07:25:49 +01:00
Stephane Nicoll
62e5f2e8a6 Upgrade to jOOQ 3.14.3
Closes gh-24128
2020-11-12 07:25:47 +01:00
Stephane Nicoll
56ce2afe8f Upgrade to Infinispan 11.0.5.Final
Closes gh-24127
2020-11-12 07:25:46 +01:00
Stephane Nicoll
20edba51ef Upgrade to AssertJ 3.18.1
Closes gh-24126
2020-11-12 07:25:45 +01:00
Stephane Nicoll
8311edf722 Upgrade to Neo4j OGM 3.2.18
Closes gh-24125
2020-11-12 07:15:26 +01:00
Stephane Nicoll
79835dc20f Upgrade to Netty 4.1.54.Final
Closes gh-24124
2020-11-12 07:08:37 +01:00