Commit Graph

9737 Commits

Author SHA1 Message Date
Andy Wilkinson 196d20537a Merge branch '2.2.x' into 2.3.x
Closes gh-22325
2020-07-14 11:38:34 +01:00
Andy Wilkinson 9558779dd4 Replace ConfigurationPropertiesBeanDefinitionValidator with a FailureAnalyzer
Previously, regular bean definitions for configuration properties classes
that attempt to use constructor binding were detected in a bean factory
post-processor, ConfigurationPropertiesBeanDefinitionValidator. This
validation examined every standard bean definition and failed if it
encountered one for a class that should have used constructor binding.
There were two downsides to this approach:

1. Reflection used to identify if the bean should be using constructor
   binding triggered class loading that could prevent subsequent
   instrumentation by a load-time weaver.
2. The cost of the validation was incurred when there was no
   misconfiguration to report.

This commit replaces ConfigurationPropertiesBeanDefinitionValidator
with a failure analyzer. This failure analyzer only runs once a failure
has occurred and the application context is not going to complete
refresh. This avoids causing problems with subsequent instrumentation
and also avoids the cost of validation and error reporting unless there
is an error.

Fixes gh-20798
2020-07-14 11:37:54 +01:00
Andy Wilkinson f52cdf10b3 Update WebServerInitEvent docs to reflect ordering w.r.t. refresh
Closes gh-22277
2020-07-13 12:51:07 +01:00
Andy Wilkinson f18b657ff9 Fix handling of DOCKER_HOST that begins with unix://
Fixes gh-22300
2020-07-10 15:31:55 +01:00
Andy Wilkinson 794ded5286 Test the Gradle plugin against Gradle 6.5.1
Closes gh-22292
2020-07-09 16:01:52 +01:00
Andy Wilkinson df67816e55 Try to make ConfigurationPropertySourcesTests perf tests more robust
Previously, the tests used absolute values to verify that the work
had completed sufficiently quickly. This led to flaky tests in
environments where the performance can be variable such as CI.

This commit tries to make the tests more robust by comparing the
performance to a baseline and requiring it to be twice as fast.

Closes gh-22137
2020-07-09 12:36:06 +01:00
Andy Wilkinson b24f17b35c Rework spring-boot-docs to be a full-blown java project
Previously, spring-boot-docs used the java-base-plugin and then added
configuration on top. This has proven to be error prone, with the most
recent problem being that the tests were not being compiled and run.

This commit changes approach and applies the java plugin to the project
instead of the java-base plugin. Now, rather than adding the necessary
configuration to the base, the unwanted pieces of the java plugin's
configuration – specifically the jar and javadoc tasks – are disabled
instead. The DeployedPlugin has also been updated so that it does not
create a publication from the java component for projects that have a
disabled jar task.

Closes gh-22284
2020-07-09 11:21:03 +01:00
Andy Wilkinson c765df6e5d Merge branch '2.2.x' into 2.3.x
Closes gh-22282
2020-07-09 10:37:01 +01:00
Andy Wilkinson afa5b12bdb Make reactive Jetty auto-config back off without jetty-servlet
Fixes gh-22275
2020-07-09 10:36:32 +01:00
Scott Frederick 1e2176b6c9 Improve Redis URL validation
This commit improves the validation of URLs provided in the property
'spring.redis.url' used to auto-configure a Spring Data Redis
connection. In particular, only the URL schemes 'redis://' and
'rediss://' are allowed, and any other scheme will result in a
configuration error. A failure analyzer is also provided to improve
diagnostics for common mis-configurations detected by this validation.

Fixes gh-21999
2020-07-08 14:50:26 -05:00
Andy Wilkinson d84aeef529 Merge branch '2.2.x' into 2.3.x
Closes gh-22264
2020-07-08 18:00:07 +01:00
Andy Wilkinson 66987533d1 Link to application properties section from externalized config list
Closes gh-22262
2020-07-08 17:58:35 +01:00
Andy Wilkinson 502ccb6586 Honor spring.autoconfigure.exclude in test slices
Previously, the import selector for `@ImportAutoConfiguration` did not
consider the spring.autoconfigure.exclude property when determining
which auto-configurations to exclude. This meant that tests using a
slice that included a particular auto-configuration would include it
even if the application's configuration excluded it via
spring.autoconfigure.exclude. Confusingly, this could result in a
sliced test using an auto-configuration that would be excluded in a
broader `@SpringBootTest`.

This commit updates the ImportAutoConfigurationImportSelector to
consider the spring.autoconfigure.exclude property so that sliced tests
will use a subset of the auto-configurations that a `@SpringBootTest`
would use.

Fixes gh-21736
2020-07-08 17:22:32 +01:00
Andy Wilkinson 1b85ce0769 Streamline OAuth2 resource server auto-config class conditions
Fixes gh-22233
2020-07-07 12:22:27 +01:00
Andy Wilkinson b8bc219b25 Merge branch '2.2.x' into 2.3.x
Closes gh-22251
2020-07-07 11:52:34 +01:00
Andy Wilkinson 4e79bb1cff Disable bean method proxying in SpringBootJdbcConfiguration
Closes gh-22231
2020-07-07 11:51:07 +01:00
Andy Wilkinson da319f5f59 Merge branch '2.2.x' into 2.3.x
Closes gh-22249
2020-07-07 11:43:03 +01:00
Andy Wilkinson 14f24dbecc Merge branch '2.1.x' into 2.2.x
Closes gh-22248
2020-07-07 11:42:43 +01:00
Andy Wilkinson 26f591264c Fix handling of NestedServletException with no root cause
Fixes gh-22169
2020-07-07 11:34:25 +01:00
Andy Wilkinson 24e1a1dddf Merge branch '2.2.x' into 2.3.x
Closes gh-22246
2020-07-07 10:53:45 +01:00
Andy Wilkinson a8d3f9af31 Polish "Rename NoneOfNestedConditions to NoneNestedConditions in example docs"
See gh-22207
2020-07-07 10:46:32 +01:00
Clayton Walker 7fee70a625 Rename NoneOfNestedConditions to NoneNestedConditions in example docs
See gh-22207
2020-07-07 10:46:20 +01:00
Andy Wilkinson 96e6b74894 Merge branch '2.2.x' into 2.3.x
Closes gh-22243
2020-07-07 09:56:21 +01:00
Andy Wilkinson a0f1424393 Polish "Fix unwrapping of captured PrintStream in test support's OutputCapture"
See gh-22214
2020-07-07 09:54:52 +01:00
XenoAmess 75a64bd901 Fix unwrapping of captured PrintStream in test support's OutputCapture
See gh-22214
2020-07-07 09:53:34 +01:00
Andy Wilkinson 28128a9577 Add support for ChronoUnit.WEEKS when using PeriodUnit
Fixes gh-22225
2020-07-06 19:57:26 +01:00
Andy Wilkinson d1f074858e Correct class name of StringToPeriodConverterTests 2020-07-06 15:59:32 +01:00
Andy Wilkinson 2007490ce7 Merge branch '2.2.x' into 2.3.x
Closes gh-22234
2020-07-06 14:24:53 +01:00
Andy Wilkinson 4301580095 Improve testing of PropertyPlaceholderAutoConfiguration
Since Spring Framework 4.3.0.RC2, a default embedded value resolver
has been registered with the bean factory when one is not otherwise
configured. This meant that placeholders in `@Value` would be resolved
with or without PropertyPlaceholderAutoConfiguration defining a
PropertySourcesPlaceholderConfigurer bean. However, placeholders in
bean definitions would only be resolved if a
PropertySourcesPlaceholderConfigurer was defined.

This commit updates PropertyPlaceholderAutoConfigurationTests to align
with this change in Framework. We now test that placeholders are
resolved in `@Value` annotations with or without the auto-configuration
and that placeholders in bean definitions are only resolved with the
auto-configured.

Closes gh-22230
2020-07-06 14:24:36 +01:00
anshlykov 683a7a851f Update to Maven Shade Plugin 3.2.4
See gh-22227
2020-07-06 09:51:08 +01:00
Andy Wilkinson dfea2f432a Polish
See gh-21921
2020-07-06 09:41:39 +01:00
Brian Clozel 86d8366ee2 Polish support for reactive Elasticsearch healthcheck
Fixes gh-21042
2020-07-03 15:25:18 +02:00
Aleksander Lech 203878a16f Add support for reactive Elasticsearch healthcheck
Prior to this commit, configuring a reactive Elasticsearch client would
auto-configure an Actuator Health check using a synchronous client, with
the default configuration properties (so tarting localhost:9200).

This would lead to false reports of unhealthy Elasticsearch clusters
when using reactive clients.

This commit reproduces the logic for MongoDB repositories: if a reactive
variant is available, it is selected for the health check
infrastructure.

See gh-21042
2020-07-03 15:16:38 +02:00
Andy Wilkinson 79770b9615 Use source sets to determine configurations deprecated for resolution
Fixes gh-22200
2020-07-02 15:14:00 +01:00
Andy Wilkinson f6b3666b16 Merge branch '2.2.x' into 2.3.x
Closes gh-22197
2020-07-02 10:40:54 +01:00
Andy Wilkinson 21453b5016 Ignore scoped targets when finding matching beans
Fixes gh-22038
2020-07-02 10:39:56 +01:00
Andy Wilkinson 81d6751ba7 Use ApplicationContextRunner in ConditionalOnSingleCandidateTests 2020-07-02 10:10:28 +01:00
Eddú Meléndez 54e0a61b42 Reinstate metrics for Kafka Streams
See gh-21921
2020-07-01 14:03:11 +01:00
Andy Wilkinson d64337013f Upgrade to Spring Kafka 2.5.3.RELEASE
Closes gh-22185
2020-07-01 14:01:39 +01:00
Andy Wilkinson 9360ba168b Upgrade to Reactor Dysprosium-SR9
Closes gh-21938
2020-07-01 11:51:54 +01:00
Andy Wilkinson a13acf9f2b Upgrade to Reactor Dysprosium-SR9
Closes gh-21937
2020-07-01 11:49:39 +01:00
Andy Wilkinson 9317135690 Improve error handling when builder image isn't a builder
Fixes gh-22179
2020-07-01 11:42:36 +01:00
Andy Wilkinson 0e1ded6893 Merge branch '2.2.x' into 2.3.x
Closes gh-22175
2020-06-30 17:39:52 +01:00
dreis2211 8c0e302f2e Accept empty filter dispatcher types in auto-configurations
Prior to this commit, the usage of EnumSet.copyOf resulted in exceptions when
the underlying collection was empty.

See gh-22138
2020-06-30 17:39:21 +01:00
Andy Wilkinson 4566ac5c25 Add package info to o.s.b.autoconfigure.elasticsearch.rest
Closes gh-22147
2020-06-30 17:01:21 +01:00
Andy Wilkinson 75fc140e2d Merge branch '2.2.x' into 2.3.x
Closes gh-22167
2020-06-30 14:09:57 +01:00
Andy Wilkinson 3922fb7164 Polish "Avoid NPE when binder is closed before started event"
See gh-22141
2020-06-30 13:26:30 +01:00
im47cn b34c268547 Avoid NPE when binder is closed before started event
Previously, if TomcatMetricsBinder destroy() was called before it had
received an ApplicationStartedEvent an NPE would be thrown due to
TomcatMetrics being null. This NPE was then caught and logged at
warning level by the disposable bean adapter.

This prevents the NPE by checking that the TomcatMetrics instance is
null before calling close() on it.

See gh-22141
2020-06-30 13:23:58 +01:00
Andy Wilkinson f86831da9c Use TCCL at time of access for resource loading
Fixes gh-22119
2020-06-30 10:51:13 +01:00
Madhura Bhave f19f2b8714 Merge branch '2.2.x' into 2.3.x
Closes gh-22155
2020-06-29 17:08:37 -07:00
May c1b9d3c226 Simplify logic in ErrorPage's equals method
See gh-22082
2020-06-29 17:06:49 -07:00
Johnny Lim 43aee1bddd Polish
See gh-22090
2020-06-29 16:35:23 -07:00
Madhura Bhave 62f5e44324 Fix typo 2020-06-29 16:29:09 -07:00
Madhura Bhave 7a81cea513 Update layers.idx file example in docs
Fixes gh-21510
2020-06-29 16:25:23 -07:00
Scott Frederick 9a083584b8 Improve validation of layertools input
This commit improves the validation performed on the user
input provided to the layertools jarmode to provide more
clear error messages when the input is not correct and
reduce the chance of ambiguity.

Fixes gh-22042
2020-06-26 11:51:07 -05:00
Andy Wilkinson a2f7ce0564 Merge branch '2.2.x' into 2.3.x
Closes gh-22102
2020-06-25 10:32:32 +01:00
Andy Wilkinson 5475f10657 Remove WebClient's in-memory buffer size limit for endpoint tests
Previously, the thread dump endpoint's response could exceed
WebClient's in-memory buffer limt when there were a large number of
threads or the threads had large stacks.

This commit disables WebClient's in-memory buffer size limit so that
the test passing is not dependent on the number of active threads and
their stack sizes.

Closes gh-22101
2020-06-25 10:21:43 +01:00
Scott Frederick 72f37c41fb Merge branch '2.2.x' into 2.3.x
Fixes gh-22061 in 2.3.2
2020-06-24 13:37:16 -05:00
Scott Frederick b27303704f Fix RedisReactiveHealthIndicator in clustered configuration
Prior to Spring Data Redis version 2.2.8, the contents of the
Properties object returned from the
ReactiveRedisConnection.ServerCommands.info API were the same
for clustered and non-clustered Redis configurations, containing a set
of key/value pairs. This allowed ReactiveRedisHealthIndicator to get
a version property using a well-known key. Starting with Spring Data
Redis 2.2.8, the info property keys contain a host:port prefix in a
clustered Redis configuration. This prevented
ReactiveRedisHealthIndicator from getting the version property as
before and resulted in the health always being reported as DOWN.

This commit adjusts ReactiveRedisHealthIndicator to detect the
clustered configuration from Spring Data Redis and find the version
property for one of the reported cluster nodes.

Fixes gh-22061
2020-06-24 13:34:22 -05:00
Andy Wilkinson fc2e3770de Merge branch '2.2.x' into 2.3.x
Closes gh-22087
2020-06-24 10:52:55 +01:00
Andy Wilkinson 3fed27fd90 Merge branch '2.1.x' into 2.2.x
Closes gh-22085
2020-06-24 10:17:57 +01:00
Andy Wilkinson 0b4533659f Use Groovy's bom in spring-boot-dependencies
Closes gh-22084
2020-06-24 10:17:06 +01:00
Andy Wilkinson 6215336602 Upgrade to Testcontainers 1.14.3
Closes gh-22069
2020-06-23 10:50:18 +01:00
Andy Wilkinson 345d33c6a1 Upgrade to Maven Shade Plugin 3.2.4
Closes gh-22068
2020-06-23 10:50:17 +01:00
Andy Wilkinson 2d779adca6 Upgrade to Maven Resolver 1.4.2
Closes gh-22067
2020-06-23 10:50:15 +01:00
Andy Wilkinson 12d3f14e15 Use bom plugin to configure spring-boot-parent
Closes gh-21439
2020-06-23 10:43:59 +01:00
Phillip Webb 03b0a373ab Merge branch '2.2.x' into 2.3.x
Closes gh-22063
2020-06-22 23:15:48 -07:00
Phillip Webb e6eb02603c Polish 'Inherit show-details property in health groups'
Rework the inheritance so that the property metadata JSON more
accurately reflects the default value.

See gh-22022
2020-06-22 23:01:37 -07:00
Leo Li 10de88884f Inherit show-details property in health groups
Update `Group` properties so that the `showDetails` value does not
inherit `Show.NEVER`. Prior to this commit, the `Group` properties
would not correctly inherit a `showDetails` value from the main
`management.endpoint.health.show-details` property.

See gh-22022
2020-06-22 22:54:34 -07:00
Phillip Webb f296f57401 Rename ImageReferenceParser to Regex
Rename `ImageReferenceParser` to `Regex` and remove state. The regular
expressions are now used directly by the `ImageName` and
`ImageReference` classes with the values accessed directly from the
`Matcher`.

See gh-21495
2020-06-22 22:36:46 -07:00
Phillip Webb 9843888714 Merge branch '2.2.x' into 2.3.x
Closes gh-22059
2020-06-22 12:14:35 -07:00
Phillip Webb 3b3a49db1f Polish 'Fix infinite loop in FieldValues'
See gh-22040
2020-06-22 12:01:04 -07:00
Konrado85 39a853c57b Fix infinite loop in FieldValues
Update `FieldValues` test object so that it doesn't cause an infinite
loop if it is actually created.

See gh-22040
2020-06-22 11:58:22 -07:00
Andy Wilkinson 73aa8f1434 Enforce spring-boot-parent's platform dependencies
Closes gh-22047
2020-06-22 09:59:21 +01:00
dreis2211 a6e8561391 Catch more generic FileSystemException in NamedPipeSocket
See gh-22035
2020-06-19 15:41:20 -05:00
Johnny Lim b218a89862 Remove Javadoc throw for ConfigurationPropertyName.ofIfValid()
See gh-22018
2020-06-19 14:14:57 +02:00
Stephane Nicoll d5385a7b64 Merge branch '2.2.x' into 2.3.x
Closes gh-22023
2020-06-19 11:37:52 +02:00
Stephane Nicoll 9b803af3c3 Polish "Document how to exclude an annotation processor with Maven"
See gh-22000
2020-06-19 11:36:25 +02:00
Marco Pens 627c0b1031 Document how to exclude an annotation processor with Maven
See gh-22000
2020-06-19 11:35:48 +02:00
Andy Wilkinson 136c9b1af8 Merge branch '2.2.x' into 2.3.x
Closes gh-22020
2020-06-19 08:23:15 +01:00
Andy Wilkinson 1e97ff834e Only consider current context when finding lifecycle processor
Previously, LifecycleAutoConfiguration would check the current context
and all of its ancestors for a lifecycle processor bean, only
configuring a custom processor if one was not found. Every context
has a lifecycle processor so this check meant that lifecycle processing
timeout could not be customized in any context with a parent.

This commit updates the auto-configuration to only check the current
context.

Closes gh-22014
2020-06-19 08:19:57 +01:00
Andy Wilkinson 41173f7c40 Polish "Use Awaitility instead of Thread.sleep"
See gh-21988
2020-06-19 08:18:01 +01:00
Tomek Szmytka c13385ea74 Use Awaitility instead of Thread.sleep
See gh-21988
2020-06-19 08:17:53 +01:00
Scott Frederick 28643e4d2d Validate image references before passing to CNB builder
Prior to this commit, an image name or run image name derived from
the project name or provided by the user would be passed to the CNB
builder without validation by the Maven plugin build-image goal or
Gradle plugin bootBuildImage task. This could lead to error messages
from the plugins that are difficult to understand and diagnose.

This commit makes parsing of the image names more strict, based on
the grammar implemented by the Docker go library. This provides
validation of the image names before passing them to the builder,
with a more descriptive error message when parsing and validation
fails.

Fixes gh-21495
2020-06-18 15:09:57 -05:00
Andy Wilkinson 67604a5416 Only process main metadata as it already includes additional metadata
Previously, the configuration property table generation was reading
both the main metadata and the additional metadata from each project.
This was unnecessary as the annotation processor will have already
merged the additional metadata into the main metadata before writing
it to disk. Processing both the main and additional metadata led to
a clash as the metadata overlapped. When the entry in the additional
metadata won the clash, the resulting entry in the configuration
property table would lose any details that aren't contained in the
additional metadata.

This commit updates the property table generation code to only use
the main metadata files.

Fixes gh-21131
2020-06-18 15:49:34 +01:00
Andy Wilkinson ce907b129c Merge branch '2.2.x' into 2.3.x
Closes gh-22010
2020-06-18 11:03:32 +01:00
Andy Wilkinson 1b62abab9a Configure context on SizeAndTimeBasedRollingPolicy
Previously, when file-based logging was enabled, Logback would output
the following during logging system initialization:

LOGBACK: No context given for c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy

This commit updates the default logback configuration to set the
context on the SizeAndTimeBasedRollingPolicy that it creates.

Fixes gh-21056
2020-06-18 11:01:26 +01:00
Andy Wilkinson 8a7c32fff7 Prevent oauth2-oidc-sdk from downgrading json-smart in Maven projects
Fixes gh-21939
2020-06-18 10:34:12 +01:00
dreis2211 855d596c2a Use lazy lambda instead of explicit argument
See gh-21986
2020-06-18 11:29:49 +02:00
Andy Wilkinson 8f7d71ca11 Merge branch '2.2.x' into 2.3.x 2020-06-18 09:23:21 +01:00
Andy Wilkinson 907b64a5eb Remove redundant stop() calls from LiveReloadServerTests 2020-06-18 09:23:02 +01:00
Madhura Bhave f4ad30c448 Merge branch '2.2.x' into 2.3.x
Closes gh-22006
2020-06-17 17:26:40 -07:00
Madhura Bhave 615cf63a82 Make MockBean resolve right type for abstract test class
Fixes gh-20916
2020-06-17 17:25:03 -07:00
Andy Wilkinson 2d1dffa3ad Correct additions to spring-boot-starter-parent's pom
Following the fix for gh-21989, spring-boot-starter-parent no longer
contains an <issueManagement> element. As a result the additional
content was no longer being added to the pom. This commit updates
the additions so that they are now added after the <scm> element
that is still present.

See gh-21989
2020-06-17 11:51:54 +01:00
Andy Wilkinson 0de466e06e Require dependency on s-b-dependencies to use its constraints
Previously, Spring Boot's modules published Gradle Module Metadata
(GMM) the declared a platform dependency on spring-boot-dependencies.
This provided versions for each module's own dependencies but also had
they unwanted side-effect of pulling in spring-boot-dependencies
constraints which would influence the version of other dependencies
declared in the same configuration. This was undesirable as users
should be able to opt in to this level of dependency management, either
by using the dependency management plugin or by using Gradle's built-in
support via a platform dependency on spring-boot-dependencies.

This commit reworks how Spring Boot's build uses
spring-boot-dependencies and spring-boot-parent to provide its own
dependency management. Configurations that aren't seen by consumers are
configured to extend a dependencyManagement configuration that has an
enforced platform dependency on spring-boot-parent. This enforces
spring-boot-parent's version constraints on Spring Boot's build without
making them visible to consumers. To ensure that the versions that
Spring Boot has been built against are visible to consumers, the
Maven publication that produces pom files and GMM for the published
modules is configured to use the resolved versions from the module's
runtime classpath.

Fixes gh-21911
2020-06-16 08:50:21 +01:00
Stephane Nicoll e30b8bf742 Start building against Reactor Dysprosium-SR9 snapshots
See gh-21938
2020-06-16 07:58:28 +02:00
Stephane Nicoll 58974ab9cf Start building against Reactor Dysprosium-SR9 snapshots
See gh-21937
2020-06-16 07:57:31 +02:00
Scott Frederick 6119d69679 Add runImage option for image building
This commit adds a runImage property to the Maven plugin build-image
goal and the Gradle bootBuildImage task. The property allows the user
to override the run image reference provided in the builder metadata
with an alternate run image. The runImage property can be specified
in the build file or on the command line.

Fixes gh-21534
2020-06-15 16:08:56 -05:00
Brian Clozel a480f6e2ee Polish 2020-06-15 18:21:36 +02:00
Brian Clozel af2666df79 Fix welcome page support in WebFlux
Prior to this commit, the welcome page support implemented in gh-9785
would override existing index views in both annotation and functional
variants.

This comes from the fact that the feature was implemented as a
`RouterFunction` configured in the main `RouterFunctionMapping` bean.
Due to ordering issues between mappings, this would override existing
application mappings in some cases.

This commit ensures that the welcome page `RouterFunction` is
contributed to the context in its own handler mapping, ordered after the
application ones.

Fixes gh-21909
2020-06-15 18:03:55 +02:00
Stephane Nicoll 7500f0f22d Add section about Kafka metrics support
Closes gh-21910
2020-06-15 09:18:40 +02:00
Stephane Nicoll ee250e058a Merge branch '2.2.x' into 2.3.x
Closes gh-21916
2020-06-15 08:41:44 +02:00
Stephane Nicoll ec8c1e3860 Update copyright year of changed files
See gh-21906
2020-06-15 08:39:51 +02:00
lltx de897b9b72 Fix wrong property reference to keys-to-sanitize in Javadoc
See gh-21906
2020-06-15 08:39:51 +02:00
Stephane Nicoll 676cd10dbf Fix encoding of @Bean in reference documentation
Closes gh-21908
2020-06-15 08:32:26 +02:00
Phillip Webb 1604545727 Ensure AvailabilityChangeEvent carries generics
Update `AvailabilityChangeEvent` to be a `PayloadEvent` and ensure
that the `getResolvableType` method returns a generic compatible
result.

Prior to this commit, a ClassCastExeption would be thrown if the
following event listener was declared:

  @EventListener
  void onEvent(AvailabilityChangeEvent<ReadinessState> event) {
    ...
  }

Closes gh-21898
2020-06-12 10:50:00 -07:00
Phillip Webb 069d2769f4 Reinstate disabled Reactor Netty test
Reinstate test now that we are on a reactor-netty releases that fixes
reactor/reactor-netty issue 1093.

Closes gh-21437
2020-06-11 14:52:21 -07:00
Phillip Webb 2a37b2e258 Refine PropertiesLauncher close logic
Further attempt to fix Windows file issues.

See gh-21575
2020-06-11 13:25:56 -07:00
Phillip Webb 1e7da4d3ca Allow digest builder references
Update `BuildRequest` to also allow digest based references.

Closes gh-21879
2020-06-11 12:31:29 -07:00
Phillip Webb 8a249daf1a Refactor PropertiesLauncher so jars can be closed
Refactor the internals of `PropertiesLauncher` so that opened jar files
are tracked and can be closed after a test completes.

See gh-21575
2020-06-11 12:26:08 -07:00
dreis2211 469dfc285b Fix deprecation in NettyRSocketServerFactoryTests
See gh-21872
2020-06-11 11:46:11 -07:00
Scott Frederick 7a2939f129 Use non-blocking I/O for Docker API
This commit changes the NamedPipeSocket used for communication with
a local Docker daemon to use a non-blocking AsynchronousByteChannel
instead of a blocking RandomAccessFile, modeled after a similar
change to the docker-java project. This eliminates the potential for
a blocking call to hang indefinitely.

Fixes gh-21672
2020-06-11 11:53:52 -05:00
Andy Wilkinson d347346a93 Upgrade to Spring Asciidoctor Extensions 0.4.3.RELEASE
Pick up the workaround for the AsciidoctorJ bug that prevents the
configprops macro's attributes from being parsed. The lack of parsing
meant that the envvar format was being lost and properties were being
written in the canonical form instead.

Closes gh-21794
2020-06-11 17:36:25 +01:00
Stephane Nicoll f8a0ca0d80 Upgrade to Netty Tcnative 2.0.31.Final
Closes gh-21889
2020-06-11 13:23:35 +02:00
Stephane Nicoll ca5afb6e90 Fix flaky integration test
Closes gh-21487
2020-06-11 11:20:49 +02:00
Stephane Nicoll a74afc104c Upgrade to Spring Batch 4.2.4
Closes gh-21784
2020-06-11 10:36:36 +02:00
Stephane Nicoll 9af5f70b75 Upgrade to Spring Batch 4.2.4
Closes gh-21783
2020-06-11 10:34:50 +02:00
Stephane Nicoll cbd5b77fa4 Upgrade to Spring Data Neumann-SR1
Closes gh-21776
2020-06-11 09:58:35 +02:00
Stephane Nicoll 122f5afd42 Upgrade to Spring Integration 5.3.1
Closes gh-21779
2020-06-11 09:58:02 +02:00
Stephane Nicoll 760aec3136 Upgrade to Spring Kafka 2.5.2
Closes gh-21782
2020-06-11 09:57:27 +02:00
Stephane Nicoll e64bfb80e4 Upgrade to Postgresql 42.2.14
Closes gh-21888
2020-06-11 08:55:47 +02:00
Stephane Nicoll 664436a3d6 Upgrade to Spring Kafka 2.3.9
Closes gh-21781
2020-06-11 08:54:52 +02:00
Stephane Nicoll 49ba5dc6bc Upgrade to Postgresql 42.2.14
Closes gh-21887
2020-06-11 08:44:30 +02:00
Stephane Nicoll c496f2401f Upgrade to Netty Tcnative 2.0.31.Final
Closes gh-21886
2020-06-11 08:44:29 +02:00
Stephane Nicoll 7dee9e34b5 Upgrade to Spring Kafka 2.2.14
Closes gh-21780
2020-06-11 08:43:39 +02:00
Phillip Webb 3b71403b99 Merge branch '2.2.x' into 2.3.x 2020-06-10 22:14:33 -07:00
Phillip Webb ac197be815 Fix checkstyle issue 2020-06-10 22:14:09 -07:00
Phillip Webb 7e5d6bafa8 Merge branch '2.2.x' into 2.3.x 2020-06-10 22:05:40 -07:00
Phillip Webb 3f36f6ea47 Rollback to Spring Batch 4.2.2
See gh-21885
2020-06-10 22:04:32 -07:00
Phillip Webb 02bfc9d30a Polish 2020-06-10 21:50:17 -07:00
Madhura Bhave 83485e625d Merge branch '2.2.x' into 2.3.x
Closes gh-21880
2020-06-10 18:50:41 -07:00
Madhura Bhave 4e014da9e9 Return all loggers for Log4j2
This commit aligns log4j2's behavior with logback such that loggers
with a null configuredLevel are also returned by the actuator endpoint.

Fixes gh-20037
2020-06-10 18:48:14 -07:00
Madhura Bhave 92ce94b3d8 Align default log levels for Log4j2 and Logback
Fixes gh-21293
2020-06-10 18:48:01 -07:00
Scott Frederick 7a793a11fb Merge branch '2.2.x' into 2.3.x
Fixes gh-21036 in 2.3.1
2020-06-10 13:55:12 -05:00
Scott Frederick 0fa1d0ef2e Handle bind exceptions in management context
This commit updates the logic for handling binding exceptions in the
management context when it is separate from the application context.
The changes allow the exception details to be visible to
DefaultErrorAttributes without causing the servlet container to
detect an error condition.

Fixes gh-21036
2020-06-10 13:53:04 -05:00
Andy Wilkinson 3927bd81eb Upgrade to Spring Integration 5.2.7.RELEASE
Closes gh-21778
2020-06-10 19:24:43 +01:00
Andy Wilkinson 4eea0329d3 Upgrade to Spring Data Moore SR8
Closes gh-21775
2020-06-10 19:24:12 +01:00
Andy Wilkinson ea55bb32a2 Upgrade to Spring Data Lovelace-SR18
Closes gh-21774
2020-06-10 19:20:53 +01:00
Andy Wilkinson 4eba8e2dc2 Upgrade to Spring Integration 5.1.11.RELEASE
Closes gh-21777
2020-06-10 19:16:40 +01:00
Andy Wilkinson 0f2f7812d9 Upgrade to Postgresql 42.2.14
Closes gh-21871
2020-06-10 19:06:45 +01:00
Andy Wilkinson a9fffb3920 Upgrade to Netty tcNative 2.0.31.Final
Closes gh-21870
2020-06-10 19:06:44 +01:00
Andy Wilkinson 90bd433083 Allow child contexts to configure server properties
Previously, HttpMessageConvertersAutoConfiguration registered
ServerProperties. When this happened in a parent context, any child
contexts would skip registering ServerProperties due to its presence
in the parent context. This prevents the child contexts from
configuring their own server properties.

This commit updates HttpMessageConvertersAutoConfiguration to
bind server.servlet.encoding directly instead of enabling
ServerProperties. With ServerProperties no longer enabled in a parent
context, child contexts are now able to configure their own server
properties.

Fixes gh-21789
2020-06-10 18:56:57 +01:00
Tomek Szmytka 8890660a71 Back-off if a custom ReactiveSessionFactory is defined
This commit makes sure that CassandraReactiveDataAutoConfiguration does
not create a reactiveCassandraSessionFactory bean if the user has
provided their own.

See gh-21769
2020-06-10 18:10:05 +02:00
Andy Wilkinson 9ef9b63527 Upgrade to Undertow 2.1.3.Final
Closes gh-21865
2020-06-10 17:04:04 +01:00
Andy Wilkinson 9c639b1be2 Upgrade to Tomcat 9.0.36
Closes gh-21864
2020-06-10 17:04:04 +01:00
Andy Wilkinson 3e5fcee187 Upgrade to Spring Security 5.3.3.RELEASE
Closes gh-21863
2020-06-10 17:04:04 +01:00
Andy Wilkinson 52975e4480 Upgrade to Spring AMQP 2.2.7.RELEASE
Closes gh-21862
2020-06-10 17:04:04 +01:00
Andy Wilkinson 25cc16a54c Upgrade to RSocket 1.0.1
Closes gh-21861
2020-06-10 17:04:03 +01:00
Andy Wilkinson df42b3ac39 Upgrade to R2DBC Bom Arabba-SR4
Closes gh-21860
2020-06-10 17:04:03 +01:00
Andy Wilkinson 6e68101b9f Upgrade to Postgresql 42.2.13
Closes gh-21859
2020-06-10 17:04:03 +01:00